{"version":3,"sources":["webpack:///src/app/services/loading-spinner.service.ts","webpack:///src/app/models/DepoRevertToDepoCustomer.model.ts","webpack:///src/app/components/about/about.component.ts","webpack:///src/app/components/about/about.component.html","webpack:///src/app/components/controls/pre-contract-modal.component.ts","webpack:///src/app/components/controls/pre-contract-modal.component.html","webpack:///src/app/components/controls/inv-price.component.ts","webpack:///src/app/components/controls/inv-price.component.html","webpack:///src/app/models/SaleInvoice.model.ts","webpack:///src/app/models/DepoRevertToDepo.model.ts","webpack:///src/app/services/sale-customer-service/grade.service.ts","webpack:///src/app/services/api-services/sale-preinvoice-for-contract-check-info-service.ts","webpack:///src/app/pipes/persian-date.pipe.ts","webpack:///src/app/components/controls/goods-info.component.ts","webpack:///src/app/components/controls/goods-info.component.html","webpack:///src/app/models/RequestInvoiceProductBarCode.model.ts","webpack:///src/app/models/permission.model.ts","webpack:///src/app/components/controls/reference-reports-info.component.ts","webpack:///src/app/components/controls/reference-reports-info.component.html","webpack:///src/app/components/client/client-product/single-product/single-product.component.ts","webpack:///src/app/components/client/client-product/single-product/single-product.component.html","webpack:///src/app/assets/images/demo/banner4.png","webpack:///fs (ignored)","webpack:///src/app/services/app-title.service.ts","webpack:///src/app/services/sale-customer-service/sale-customer-image-infos.service.ts","webpack:///src/app/components/controls/record-customer-checks-info.component.ts","webpack:///src/app/components/controls/record-customer-checks-info.component.html","webpack:///src/app/components/controls/customer-info.component.ts","webpack:///src/app/components/controls/customer-info.component.html","webpack:///src/app/components/customer-club-list/customer-club-list.component.ts","webpack:///src/app/components/customer-club-list/customer-club-list.component.html","webpack:///crypto (ignored)","webpack:///src/app/components/controls/price-payment-form-info.component.ts","webpack:///src/app/components/controls/price-payment-form-info.component.html","webpack:///src/app/directives/bootstrap-datepicker.directive.ts","webpack:///src/app/components/header/header.component.ts","webpack:///src/app/components/header/header.component.html","webpack:///src/app/services/MyAccount-Endpoint.service.ts","webpack:///src/app/components/cash-desk/report-recipt-cash-desk/report-recipt-cash-desk.component.ts","webpack:///src/app/components/cash-desk/report-recipt-cash-desk/report-recipt-cash-desk.component.html","webpack:///src/app/components/record-personal-information/record-personal-information.component.ts","webpack:///src/app/components/record-personal-information/record-personal-information.component.html","webpack:///src/app/models/VMSelectSaleSubOrder_BarCode.model.ts","webpack:///stream (ignored)","webpack:///src/app/components/client/client-franchise/delegacy-add-edit/delegacy-add-edit.component.ts","webpack:///src/app/components/client/client-franchise/delegacy-add-edit/delegacy-add-edit.component.html","webpack:///src/app/components/record-customer-checks/record-customer-checks.component.ts","webpack:///src/app/components/record-customer-checks/record-customer-checks.component.html","webpack:///src/app/components/controls/bill-info.component.ts","webpack:///src/app/components/controls/bill-info.component.html","webpack:///src/app/services/alert.service.ts","webpack:///src/app/components/controls/request-invoice-info.component.ts","webpack:///src/app/components/controls/request-invoice-info.component.html","webpack:///src/app/components/controls/settlement-info.component.ts","webpack:///src/app/components/controls/settlement-info.component.html","webpack:///src/app/components/settlement/settlement.component.ts","webpack:///src/app/components/settlement/settlement.component.html","webpack:///src/app/assets/images/demo/banner3.png","webpack:///src/app/components/controls/notifications-viewer.component.ts","webpack:///src/app/components/controls/notifications-viewer.component.html","webpack:///src/app/components/website-guide/website-guide.component.ts","webpack:///src/app/components/website-guide/website-guide.component.html","webpack:///src/app/components/controls/depotaraz-info.component.ts","webpack:///src/app/components/controls/depotaraz-info.component.html","webpack:///src/app/models/user-edit.model.ts","webpack:///src/app/models/ContractProduct.model.ts","webpack:///src/app/components/resid/resid.component.ts","webpack:///src/app/components/resid/resid.component.html","webpack:///src/app/services/loader-interceptor.ts","webpack:///src/app/components/sale-receipt-customer/sale-recipt-cash/sale-recipt-cash.component.ts","webpack:///src/app/components/sale-receipt-customer/sale-recipt-cash/sale-recipt-cash.component.html","webpack:///src/app/components/controls/SettlementSave-info.component.ts","webpack:///src/app/components/controls/SettlementSave-info.component.html","webpack:///src/app/models/utilities/address.model.ts","webpack:///src/app/models/VMSelectSalePreInvoiceForContractProduct_BarCode.model.ts","webpack:///src/app/components/controls/inv-check.component.ts","webpack:///src/app/components/controls/inv-check.component.html","webpack:///src/app/components/controls/banner-demo.component.ts","webpack:///src/app/components/controls/banner-demo.component.html","webpack:///node_modules/jalali-moment/node_modules/moment/locale sync ^\\.\\/.*$","webpack:///src/app/models/View_BarcodeInDepo.model.ts","webpack:///src/app/models/SaleLoadingCommandBarCode.model.ts","webpack:///src/app/models/SalePreInvoiceForContractProduct.model.ts","webpack:///src/app/services/app-translation.service.ts","webpack:///src/app/models/VMSelectSubOrder_Order.model.ts","webpack:///src/app/enums/confirm-message.enum.ts","webpack:///src/app/components/app.component.ts","webpack:///src/app/components/app.component.html","webpack:///src/app/components/controls/upload-documents-info.component.ts","webpack:///src/app/components/controls/upload-documents-info.component.html","webpack:///src/app/assets/scripts/alertify.js","webpack:///src/app/directives/equal-validator.directive.ts","webpack:///src/app/models/SalePreInvoiceForContractCheckInfo.model.ts","webpack:///src/environments/environment.ts","webpack:///src/app/components/bill/bill.component.ts","webpack:///src/app/components/bill/bill.component.html","webpack:///src/app/services/MyAccount.service.ts","webpack:///src/app/models/WareHouseResult.model.ts","webpack:///src/app/app-error.handler.ts","webpack:///src/app/components/home/home.component.ts","webpack:///src/app/components/home/home.component.html","webpack:///src/app/services/sale-customer-service/customer-grade.service.ts","webpack:///src/app/components/controls/check-information-info.component.html","webpack:///src/app/components/controls/check-information-info.component.ts","webpack:///src/app/models/DepoCode.model.ts","webpack:///src/app/models/SaleReceipts/SaleSubReceipt.model.ts","webpack:///src/app/models/utilities/confirm-message.model.ts","webpack:///src/app/models/SaleLoadingCommandBarCodeObject.ts","webpack:///src/app/services/SaleCustomer.service.ts","webpack:///src/app/components/controls/todo-demo.component.ts","webpack:///src/app/components/controls/todo-demo.component.html","webpack:///src/app/components/controls/show-contract.component.html","webpack:///src/app/components/controls/show-contract.component.ts","webpack:///src/app/services/base-services/base.service.ts","webpack:///src/app/models/CashDesk/report-sale-cash-desk.model.ts","webpack:///src/app/models/RequestInvoice.model.ts","webpack:///src/app/assets/images/logo.png","webpack:///src/app/components/not-found/not-found.component.ts","webpack:///src/app/components/not-found/not-found.component.html","webpack:///src/app/services/date-picker.service.ts","webpack:///src/app/services/MyCompany.service.ts","webpack:///src/app/components/controls/personal-information-info.component.html","webpack:///src/app/components/controls/personal-information-info.component.ts","webpack:///src/app/services/file-upload.service.ts","webpack:///src/app/components/controls/warehousestore-info-kardex-remaind-majazi.component.ts","webpack:///src/app/components/controls/warehousestore-info-kardex-remaind-majazi.component.html","webpack:///src/app/models/VMDepoRevertToDepoCustomers.model.ts","webpack:///src/app/models/SaleOrders.model.ts","webpack:///src/app/assets/images/demo/banner1.png","webpack:///src/app/assets/images/demo/banner2.png","webpack:///src/app/components/controls/search-box.component.ts","webpack:///src/app/components/controls/search-box.component.html","webpack:///src/app/models/VMSelectDepoAssignmentProductDetail_BarCode.model.ts","webpack:///src/app/components/controls/report-contract.component.ts","webpack:///src/app/components/controls/report-contract.component.html","webpack:///src/app/components/controls/report-salegroup-info.component.html","webpack:///src/app/components/controls/report-salegroup-info.component.ts","webpack:///src/app/models/notification.model.ts","webpack:///src/app/components/invoicesale/invoicesale.component.ts","webpack:///src/app/components/invoicesale/invoicesale.component.html","webpack:///src/app/models/DepoRecieptPermanent.model.ts","webpack:///src/app/components/upload-documents/upload-documentst.component.ts","webpack:///src/app/components/upload-documents/upload-documents.component.html","webpack:///src/app/components/controls/home-info.component.ts","webpack:///src/app/components/controls/home-info.component.html","webpack:///src/app/components/client/client-shop-banner/client-shop-banner.component.ts","webpack:///src/app/components/client/client-shop-banner/client-shop-banner.component.html","webpack:///src/app/components/sale-receipt-customer/sale-receipt-lc/sale-receipt-lc.component.ts","webpack:///src/app/components/sale-receipt-customer/sale-receipt-lc/sale-receipt-lc.component.html","webpack:///src/app/models/SaleSubSendProduct.model.ts","webpack:///src/app/services/endpoint-base.service.ts","webpack:///src/app/services/db-Keys.ts","webpack:///src/app/components/contract/contract.component.ts","webpack:///src/app/components/contract/contract.component.html","webpack:///src/app/directives/bootstrap-select.directive.ts","webpack:///src/app/components/client/client-franchise/client-franchise.component.ts","webpack:///src/app/components/client/client-franchise/client-franchise.component.html","webpack:///src/app/components/client/client-product/client-product.component.html","webpack:///src/app/components/client/client-product/client-product.component.ts","webpack:///src/app/components/depotaraz/depotaraz.component.ts","webpack:///src/app/components/depotaraz/depotaraz.component.html","webpack:///src/app/directives/bootstrap-toggle.directive.ts","webpack:///src/app/services/configuration.service.ts","webpack:///src/app/models/DepoAssignmentProductNumberLoading.model.ts","webpack:///src/app/components/inventory/inventory.component.ts","webpack:///src/app/components/inventory/inventory.component.html","webpack:///src/app/components/client/client-contact/client-contact.component.html","webpack:///src/app/components/client/client-contact/client-contact.component.ts","webpack:///src/app/models/VMSaleSubSendProduct_BarCode.model.ts","webpack:///src/app/components/controls/statistics-demo.component.ts","webpack:///src/app/components/controls/statistics-demo.component.html","webpack:///src/app/models/SaleSubOrders.model.ts","webpack:///src/app/models/CashDesk/report-cashier-by-date.model.ts","webpack:///src/app/services/auth-guard.service.ts","webpack:///src/app/models/DepoAssignmentProduct.model.ts","webpack:///src/app/models/VMUpdateSaleSubReceipt.model.ts","webpack:///src/app/enums/request-invoice.enum.ts","webpack:///src/app/services/Shared.service.ts","webpack:///src/app/models/SerialProduct.model.ts","webpack:///src/app/directives/number.directive.ts","webpack:///src/app/models/SupliesOrderRelationReciept.model.ts","webpack:///src/app/components/warehousestore/warehousestore.component.ts","webpack:///src/app/components/warehousestore/warehousestore.component.html","webpack:///src/app/components/controls/request-invoice-product.component.ts","webpack:///src/app/components/controls/request-invoice-product.component.html","webpack:///src/app/components/controls/inv-sale.component.ts","webpack:///src/app/components/controls/inv-sale.component.html","webpack:///src/app/components/controls/goods-info-details.component.ts","webpack:///src/app/components/controls/goods-info-details.component.html","webpack:///src/app/models/Address.ts","webpack:///src/app/components/cash-desk/report-sale-cash-desk/report-sale-cash-desk.component.ts","webpack:///src/app/components/cash-desk/report-sale-cash-desk/report-sale-cash-desk.component.html","webpack:///src/app/components/controls/roles-management.component.ts","webpack:///src/app/components/controls/roles-management.component.html","webpack:///src/app/services/notification.service.ts","webpack:///src/app/components/sale-receipt-customer/sale-receipt-customer.component.ts","webpack:///src/app/components/sale-receipt-customer/sale-receipt-customer.component.html","webpack:///src/app/services/utilities.ts","webpack:///src/app/directives/autofocus.directive.ts","webpack:///src/app/components/barcode-list-modal/barcode-list-modal.component.ts","webpack:///src/app/components/barcode-list-modal/barcode-list-modal.component.html","webpack:///src/app/models/PubDrivers.model.ts","webpack:///src/app/models/SaleLoadingCommand.model.ts","webpack:///src/app/services/local-store-manager.service.ts","webpack:///src/app/enums/customer-document-status.enum.ts","webpack:///src/app/components/car/car.component.ts","webpack:///src/app/components/car/car.component.html","webpack:///src/app/components/returned/returned.component.ts","webpack:///src/app/components/returned/returned.component.html","webpack:///src/app/components/previews-print/previews-print.component.ts","webpack:///src/app/components/previews-print/previews-print.component.html","webpack:///src/app/components/image-uploader/image-uploader.component.ts","webpack:///src/app/components/image-uploader/image-uploader.component.html","webpack:///src/app/models/SaleCustomer.model.ts","webpack:///src/app/services/account-endpoint.service.ts","webpack:///src/app/components/client/main-menu/main-menu.component.ts","webpack:///src/app/components/client/main-menu/main-menu.component.html","webpack:///node_modules/moment/locale sync ^\\.\\/.*$","webpack:///src/app/components/controls/report-sale-customer-info.component.ts","webpack:///src/app/components/controls/report-sale-customer-info.component.html","webpack:///src/app/components/controls/returned-info.component.html","webpack:///src/app/components/controls/returned-info.component.ts","webpack:///src/app/models/InputPricePaymentFormInvoiceSale.model.ts","webpack:///src/app/components/address/address.component.ts","webpack:///src/app/components/address/address.component.html","webpack:///src/app/components/controls/visits-list-info.component.ts","webpack:///src/app/components/controls/visits-list-info.component.html","webpack:///src/app/models/SalePreInvoiceForContracts.model.ts","webpack:///src/app/services/uploader.service .ts","webpack:///src/app/models/user.model.ts","webpack:///src/app/components/cash-desk/cash-desk-detail/cash-desk-detail.component.ts","webpack:///src/app/components/cash-desk/cash-desk-detail/cash-desk-detail.component.html","webpack:///src/app/components/sale-receipt-customer/sale-receipt-baratelectronic/sale-receipt-baratelectronic.component.ts","webpack:///src/app/components/sale-receipt-customer/sale-receipt-baratelectronic/sale-receipt-baratelectronic.component.html","webpack:///src/app/components/client/about-client/about-client.component.ts","webpack:///src/app/components/client/about-client/about-client.component.html","webpack:///src/app/components/controls/add-return-to-depo.component.ts","webpack:///src/app/components/controls/add-return-to-depo.component.html","webpack:///src/app/services/base-services/sale-closing-management.service.ts","webpack:///src/app/models/sale-pre-invoice/update-check.model.ts","webpack:///src/app/components/controls/users-management.component.ts","webpack:///src/app/components/controls/users-management.component.html","webpack:///src/app/models/VMSalePreInvoiceForContractProduct_BarCode.model.ts","webpack:///src/app/services/GlobalConstants.service.ts","webpack:///src/app/components/controls/record-personal-information-info.component.ts","webpack:///src/app/components/controls/record-personal-information-info.component.html","webpack:///src/app/components/login/login.component.ts","webpack:///src/app/components/login/login.component.html","webpack:///src/app/components/controls/print/print-depo.component.ts","webpack:///src/app/components/controls/print/print-depo.component.html","webpack:///src/app/services/credit-institution-service/credit-institution.service.ts","webpack:///src/app/models/PreInvoiceContract.model.ts","webpack:///src/app/models/VMSelectSaleSubSendProduct_BarCode.model.ts","webpack:///src/app/models/group.model.ts","webpack:///src/app/shared/utilities/custom-paginator.ts","webpack:///src/app/components/controls/sale-preinvoice-for-contract-check-info.component.ts","webpack:///src/app/components/controls/sale-preinvoice-for-contract-check-info.component.html","webpack:///src/app/services/salecustomer-endpoint.service.ts","webpack:///src/app/components/controls/inv-info.component.html","webpack:///src/app/components/controls/inv-info.component.ts","webpack:///src/app/components/client/client-shop-footer/client-shop-footer.component.ts","webpack:///src/app/components/client/client-shop-footer/client-shop-footer.component.html","webpack:///src/app/components/report/report.component.ts","webpack:///src/app/components/report/report.component.html","webpack:///src/app/enums/cash-desk-document-type.ts","webpack:///src/app/components/controls/inv-Installment.component.ts","webpack:///src/app/components/controls/inv-Installment.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/components/controls/sale-preinvoice-check-detail-modal.component.ts","webpack:///src/app/components/controls/sale-preinvoice-check-detail-modal.component.html","webpack:///src/app/models/role.model.ts","webpack:///src/app/components/controls/goods-info-dealercode.component.ts","webpack:///src/app/components/controls/goods-info-dealercode.component.html","webpack:///src/app/models/CustomerSalePreInvoice.model.ts","webpack:///src/app/components/client/client-shopping-with/client-shopping-with.component.ts","webpack:///src/app/components/client/client-shopping-with/client-shopping-with.component.html","webpack:///src/app/components/controls/report-sale-info.component.ts","webpack:///src/app/components/controls/report-sale-info.component.html","webpack:///src/app/assets/images/logo-bill.png","webpack:///src/app/services/national-code.service.ts","webpack:///src/app/models/PubCar.model.ts","webpack:///src/app/components/download-registration/download-registration.component.ts","webpack:///src/app/components/download-registration/download-registration.component.html","webpack:///src/app/enums/customer-images-name.enum.ts","webpack:///src/app/components/lc-form/lc-form.component.ts","webpack:///src/app/components/lc-form/lc-form.component.html","webpack:///src/app/models/DepoAssignmentProductBarCode.model.ts","webpack:///src/app/models/VMSaleSubLoadingCommands_BarCode.model.ts","webpack:///src/app/components/controls/send-order-info.component.html","webpack:///src/app/components/controls/send-order-info.component.ts","webpack:///src/app/services/theme-manager.ts","webpack:///src/app/components/controls/driver-info.component.ts","webpack:///src/app/components/controls/driver-info.component.html","webpack:///src/app/models/VMSalePriceProductInfoForSalePerInvoice.model.ts","webpack:///src/app/models/CustomerClub.model.ts","webpack:///src/app/models/DepoAssignmentProductDetail.model.ts","webpack:///src/app/components/controls/warehousestore-info-barcodes.component.ts","webpack:///src/app/components/controls/warehousestore-info-barcodes.component.html","webpack:///src/app/services/account.service.ts","webpack:///src/app/services/jwt-helper.ts","webpack:///src/app/models/utilities/barcode-list.model.ts","webpack:///src/app/components/sale-preinvoice-for-contract-check/sale-preinvoice-for-contract-check.component.ts","webpack:///src/app/components/sale-preinvoice-for-contract-check/sale-preinvoice-for-contract-check.component.html","webpack:///src/app/services/excel.service.ts","webpack:///src/app/components/spinner-loading/spinner-loading.component.ts","webpack:///src/app/components/spinner-loading/spinner-loading.component.html","webpack:///src/app/components/controls/download-registration-info.component.ts","webpack:///src/app/components/controls/download-registration-info.component.html","webpack:///src/app/components/visits-list/visits-list.component.ts","webpack:///src/app/components/visits-list/visits-list.component.html","webpack:///src/app/components/client/client-home/client-home.component.ts","webpack:///src/app/components/client/client-home/client-home.component.html","webpack:///src/app/models/VMDepoAssignmentProductDetail_BarCode.model.ts","webpack:///src/app/components/controls/inventory-info/inventory-info.component.ts","webpack:///src/app/components/controls/inventory-info/inventory-info.component.html","webpack:///src/app/models/VMSaleSubOrders_BarCode.model.ts","webpack:///src/app/models/DepoRecieptPermanentDetail.model.ts","webpack:///src/app/components/controls/previews-print-info.component.ts","webpack:///src/app/components/controls/previews-print-info.component.html","webpack:///src/app/services/auth-storage.ts","webpack:///src/app/models/Warning.model.ts","webpack:///src/app/models/VMSaleNewContractProduct_PrintInvoice.model.ts","webpack:///src/app/models/installments.model.ts","webpack:///src/app/models/SaleInvoiceDetail.model.ts","webpack:///src/app/directives/back-button.directive.ts","webpack:///src/app/services/color-settings.ts","webpack:///src/app/components/confirm-message/confirm-message.component.ts","webpack:///src/app/components/confirm-message/confirm-message.component.html","webpack:///src/app/components/price-payment-form/price-payment-form.component.ts","webpack:///src/app/components/price-payment-form/price-payment-form.component.html","webpack:///src/app/components/reports-marketer/reports-marketer.component.ts","webpack:///src/app/components/reports-marketer/reports-marketer.component.html","webpack:///src/app/assets/images/logo-header.png","webpack:///src/app/directives/last-element.directive.ts","webpack:///src/app/models/VMSelectSaleSubLoadingCommand_BarCode.model.ts","webpack:///src/app/components/controls/car-info.component.ts","webpack:///src/app/components/controls/car-info.component.html","webpack:///src/app/services/auth.service.ts","webpack:///src/app/services/base-services/customer-club.service.ts","webpack:///src/app/components/sale-receipt-customer/sale-receipt-check/sale-receipt-check.component.ts","webpack:///src/app/components/sale-receipt-customer/sale-receipt-check/sale-receipt-check.component.html","webpack:///src/app/services/receipt-services/sale-sub-receipt.service.ts","webpack:///src/app/models/SaleNewContract.model.ts","webpack:///src/app/components/sale-closing-managment/sale-closing-managment.component.ts","webpack:///src/app/components/sale-closing-managment/sale-closing-managment.component.html","webpack:///src/app/components/forgot-password/forgot-password.component.ts","webpack:///src/app/components/forgot-password/forgot-password.component.html","webpack:///src/app/models/SDCodeClass.model.ts","webpack:///src/app/models/SaleSubLoadingCommands.model.ts","webpack:///src/app/models/DepoRevertToDepoCustomerDetail.model.ts","webpack:///src/app/models/HesabTafzili.model.ts","webpack:///src/app/components/controls/website-guide-info.component.ts","webpack:///src/app/components/controls/website-guide-info.component.html","webpack:///src/app/components/controls/user-info.component.ts","webpack:///src/app/components/controls/user-info.component.html","webpack:///src/app/components/reference-reports/reference-reports.component.ts","webpack:///src/app/components/reference-reports/reference-reports.component.html","webpack:///src/app/components/driver/driver.component.ts","webpack:///src/app/components/driver/driver.component.html","webpack:///src/app/models/VMSelectSubOrder.model.ts","webpack:///src/app/components/check-information/check-information.component.ts","webpack:///src/app/components/check-information/check-information.component.html","webpack:///src/app/components/personal-information/personal-information.component.ts","webpack:///src/app/components/personal-information/personal-information.component.html","webpack:///src/app/components/visitors-cartable/visitor-detail/visitor-detail.component.ts","webpack:///src/app/components/visitors-cartable/visitor-detail/visitor-detail.component.html","webpack:///src/app/services/notification-endpoint.service.ts","webpack:///src/app/components/client/client-footer/client-footer.component.ts","webpack:///src/app/components/client/client-footer/client-footer.component.html","webpack:///src/app/models/installment-detail.model.ts","webpack:///src/app/components/client/client.component.ts","webpack:///src/app/components/client/client.component.html","webpack:///src/app/components/client/client-shop-header/client-shop-header.component.ts","webpack:///src/app/components/client/client-shop-header/client-shop-header.component.html","webpack:///src/app/services/receipt-services/sale-receipt.service.ts","webpack:///src/app/models/Adjustments.model.ts","webpack:///src/app/directives/decimal-number.directive.ts","webpack:///src/app/assets/images/leaflet/visitor-marker-icon.png","webpack:///src/app/services/nts-end-point.service.ts","webpack:///src/app/models/RequestInvoiceProduct.model.ts","webpack:///src/app/models/SaleCustomerImage.model.ts","webpack:///src/app/components/barat-electronic-form/barat-electronic-form.component.ts","webpack:///src/app/components/barat-electronic-form/barat-electronic-form.component.html","webpack:///src/app/components/client/client-home/client-product-list/client-product-list.component.ts","webpack:///src/app/components/client/client-home/client-product-list/client-product-list.component.html","webpack:///src/app/services/animations.ts","webpack:///src/app/components/controls/reports-marketer-info.component.ts","webpack:///src/app/components/controls/reports-marketer-info.component.html","webpack:///src/app/models/customer-grade.model.ts","webpack:///src/app/models/SaleSendProduct.model.ts","webpack:///src/app/components/controls/sales-customer.component.ts","webpack:///src/app/components/controls/sales-customer.component.html","webpack:///src/app/components/client/client-store-finder/client-store-finder.component.ts","webpack:///src/app/components/client/client-store-finder/client-store-finder.component.html","webpack:///src/app/models/user-login.model.ts","webpack:///src/app/components/controls/warehousestore-info-kardex.component.ts","webpack:///src/app/components/controls/warehousestore-info-kardex.component.html","webpack:///src/app/components/cash-desk/cash-desk.component.ts","webpack:///src/app/components/cash-desk/cash-desk.component.html","webpack:///src/app/enums/update-sale-sub-receipt-result.ts","webpack:///src/app/components/controls/warehousestore-info.component.ts","webpack:///src/app/components/controls/warehousestore-info.component.html","webpack:///src/app/models/VMSaleNewContract.model.ts","webpack:///src/app/app-routing.module.ts","webpack:///src/app/directives/bootstrap-tab.directive.ts","webpack:///src/app/components/controls/resid-info.component.html","webpack:///src/app/components/controls/resid-info.component.ts","webpack:///src/app/services/cash-desk-service/cash-desk.service.ts","webpack:///src/app/models/DepoRecieptPermanentBarCode.model.ts","webpack:///src/app/components/new-password/new-password.component.ts","webpack:///src/app/components/new-password/new-password.component.html","webpack:///src/app/models/PreInvoice.model.ts","webpack:///src/app/models/SaleReceipts/SaleReceipt.model.ts","webpack:///src/app/components/send-order/send-order.component.ts","webpack:///src/app/components/send-order/send-order.component.html","webpack:///src/app/services/nts.service.ts","webpack:///src/app/enums/show-upload-page.enum.ts","webpack:///src/app/components/customers/customers.component.ts","webpack:///src/app/components/customers/customers.component.html","webpack:///src/app/models/returnProductDescription.ts","webpack:///src/app/components/controls/inv-info-c.component.html","webpack:///src/app/components/controls/inv-info-c.component.ts","webpack:///src/app/components/controls/user-preferences.component.ts","webpack:///src/app/components/controls/user-preferences.component.html","webpack:///src/app/components/orders/orders.component.ts","webpack:///src/app/components/orders/orders.component.html","webpack:///src/app/components/sidebar/sidebar.component.ts","webpack:///src/app/components/sidebar/sidebar.component.html","webpack:///src/app/components/controls/role-editor.component.ts","webpack:///src/app/components/controls/role-editor.component.html","webpack:///src/main.ts","webpack:///src/app/pipes/group-by.pipe.ts","webpack:///$_lazy_route_resource lazy namespace object","webpack:///src/app/components/controls/customer-club-list-info.component.ts","webpack:///src/app/components/controls/customer-club-list-info.component.html"],"names":["LoadingService","isLoading","DepoRevertToDepoCustomer","DRTDCYear","DRTDCCode","DRTDCDepCode","DRTDCRevertDate","DRTDCSysDate","DRTDCUserCode","DRTDCCostomerCode","DRTDCSubCostomerCode","DRTDCPriceall","DRTDCOther","DRTDCRemain","DRTDCRevertDatePrice","DRTDPartCode","DRTDFromAssignment","DRTDFromAssignmentYear","AboutComponent","PreContractModalComponent","authService","saleCustomerImageInfosService","alertService","cashDeskService","gradeService","columns","confirmMessageObj","checkoutConfirm","buyerName","serverDate","Date","now","totalPayment","totalTax","totalproductPayment","saleInvoiceDetail","installments","acceptPreContract","notUploadDocuments","invoiceSaleProducts","listSalePreInvoice","currentUser","fullName","forEach","val","spipPrice","tax","pay","window","print","date","toLocaleDateString","dateOfNow","split","join","allCheckoutCashDesks","spiCustomerCode","subscribe","res","length","statusSaleCustomerDocuments","spiSubCustomerCode","getCreditGradeCustomer","spiYear","credit","sumPrice","typePrice","status","emit","showMessage","toString","error","err","cName","statusId","confirmType","title","text","event","printContract","acceptContractModal","invpricecomponent","accountService","translationService","myCompanyService","sharedService","myaccountService","saleSubReceiptService","saleReceiptService","sumPriceInvoice","remindPaymentInvoice","paymentInvoice","installmentInterest","dateObjectRSDate","rowsCache","rows","SaleSubReceiptObj","checkDetailList","installmentsData","allbank","allhesabkindbank","allsalebankaccounts","inputPricePaymentFormInvoiceSale","saveCheckDetailStatus","paymentPriceSuccess","isSelect","AllPay","AllBed","AllBes","summaryPosition","enableSummary","isEditMode","isNewCustomer","isEditingSelf","isSaving","isEditSelf","showValidationErrors","uniqueId","isreal","formResetToggle","group","TypePrice","SaleReceiptObj","VMUpdateSaleSubReceipt","SaleNewContractObj","SaleNewContractProductObj","isEdit","isEditComment","isEditSerial","isEditPrice","isEditDate","isEditContractCode","CanManagemanageInvoiceSale","isGeneralEditor","IsReload","IsAssignment","oldserial","newContractCode","oldPrice","AcceptContract","ReciptNo","getServerDateTime","$","tab","rcontractCode","contractCode","dateObject","getDateToMoment","GetSaleSubReceiptSelect","Number","phoneNumber","results","onSaleSubReceiptSelect","onCurrentUserDataLoadFailed","salebank","stopLoadingMessage","loadingIndicator","user","index","ObjPreInvoices","rsDate","currencyFormatter","rsPrice","format","symbol","thousandsSeparator","precision","getStatusContract","GetStatusAccept","console","log","cells","filteredCells","filter","cell","reduce","sum","unformat","code","number","RSBankAccountCode","RSBankAccountCode2","RSBankType","showStickyMessage","getHttpResponseMessages","isAssignment","rSerial","GetRSerialCheck","onCurrentCheck","undefined","getRSerialCheckForUpdate","rsNum","CheckComplet","warn","toLocaleString","checkDate","CheckRemindUpdate","CheckRemind","remind","MethodGetNewCodeRecipt","GetNewCodeRecipt","MethodSaveSaleReceipts","saveerror","loadNewCode","startLoadingMessage","rnum","ryear","rmainCustomerCode","rsubCustomerCode","rpartCode","spiPartCode","rdate","rkind","rreceivedFor","rreceivedNumber","spiCode","rreceivedYear","risNotInCycle","rcontractYear","sanavat","updateSaleReceipt","s","saveNewSaleSubReceiptSuccessHelper","rsKind","rsBankAccountCode","rsPartCode","rsYear","rsReceiptKind","toDate","newSaleSubReceipt","saveSubSuccessHelper","success","LoadremaindVouchers_AcceptContractNextPayment","rsDes","loadReceipt","resetData","changesSavedCallback","cancel","Goto","showDialog","confirm","saveGetNewAssignmentLoadingNextPaymentSuccessHelper","SalePreInvoice","NumberPreInvoic","name","GetNewAssignmentLoadingNextPayment","saveNewAssignmentLoadingHelper","saveFailedHelper","DAPCode","dapcode","String","Refresh","resetStickyMessage","changesCancelledCallback","caption","message","changesFailedCallback","replace","form","reset","setTimeout","SanadHesabdari","PreSeller","NumberSanad","NumberCuntract","CuntractNumber","row","CheckAcceptContract","Error","contractStatus","rowsub","SaleReceiptChekHesabSanad","CheckHesabSanad","LoadErrorCheck","RemindClassCheck","newprice","remindupdate","Math","abs","MethodUpdateSaleReceipts","oldCuntractCode","oldSerial","saleSubReceipt","checkUpdateSaleSubReceiptByContractCode","updateSaleSubReceipt","updateSubSuccessHelper","Success","msg","EmptyOldSerial","IsNotAcceptedAndNotIsVoidNewContract","IsNotAcceptedOrIsVoidOldContract","NotEqualCustomerContract","NotEqualSubCustomerContract","NotExistNewContract","NotExistOldContract","NotExistSaleReceipt","NotExistSaleSubReceipt","NotExistSerial","SaleInvoice","IDepoRevertToDepo","Drtdyear","Drtdcode","DrtddepCode","DrtdrevertDate","DrtdsysDate","DrtduserCode","DrtddealerCode","Drtdpriceall","Drtddiscount","Drtdother","Drtdremain","Drtdtax","Drtdtransport","DrtddkindRevert","DrtddateSession","DrtdnumSession","DrtdstatuseRevert","DrtdcancelBit","DepoRevertToDepoDetail","IDepoRevertToDepoDetail","Drtddyear","Drtddcode","DrtdddepCode","Drtdddccode","DrtddunitProduct","Drtddcount","Drtdddesc","DrtddreciveNumber","Drtddprice","Drtddpricefinal","DrtdddescPrice","DrtdendPrice","DrtdpricePersonel","DrtdpriceEnergy","DrtdpriceEstehlak","DrtdpriceMali","DrtdpriceSale","drtdddccodeNavigation","DepoRevertToDepoDetailBarcode","IDepoRevertToDepoDetailBarcode","DRTDDBarcode","IDepoRevertToDepoNavigation","dcdesc","GradeService","configurations","http","baseUrl","get","GradeUrl","cMainCode","cSubCode","activeYear","SalePreInvoiceForContractCheckInfoService","configurationsService","saveChechImageStatus","salePreInvoiceCheckInfoDetail","invoiceCode","formData","post","UploadCustomerImages","SaleCheckInfo","currentYear","ShowPersianDate","value","args","goodsInfoComponent","SelectionType","SaveCus","isError","sale","allgroup","allostan","allDepoCode","gr","allCity","rowsSelect","OwnerBoolan","myArrId","Array","selected","loadCurrentGroupData","loadCurrentOstanData","searchnull","canAssignGroups","getgroups","onCurrentUserDataLoadSuccessful","getostans","onCurrentUserDataLoadOstanSuccessful","r","searchArray","depCode","dcDesc","e","target","checked","remanid","count","push","item","elemnent","getCSubCode","id","MethodSubCode","updateCustomer","saveSuccessHelper","maincode","subcode","newCustomer","getVirtualWarehouseInventory","Year","DepCode","usercode","DCMainUnit","TarazAll","IsPrice","saleGroupItem","CMainCode","onDataLoadSuccessful","onDataLoadFailed","DepoCodeObj","SaleCustomer","pPrice","Loadgoods","groups","ostans","getCity","onLoadcity","citys","CitySelector","refresh","testIsRoleUserCountChanged","Object","assign","editedUser","rolesAdded","role","indexOf","rolesRemoved","modifiedRoles","concat","onRolesUserCountChanged","find","NameGroup","Name","sourceDepoCode","allgroups","ur","some","unshift","rolesSelector","showbarcodesEditor","productcode","productname","productUOM","depocode","loadBarcoded","editorModalshowbarcodes","show","showkardexEditor","loadKardexProduct","editorModalshowkardex","userHasPermission","manageCustomerPermission","assognGroupsPermisson","onEditorModalHidden","RequestInvoiceProductBarCode","reqpbYear","reqpbCode","reqpbProductCode","reqpbBarCode","reqpbDealercode","reqpbSocode","Permission","groupName","description","viewUsersPermission","manageUsersPermission","viewRolesPermission","manageRolesPermission","assignRolesPermission","ViewCustomerPermission","ViewInvoiceSalePermisson","manageInvoiceSalePermisson","taeedpreInvoice","ContractManage","GhabolGharardad","ViewReportPermission","ViewCarPermission","ViewDriverPermission","ManageTadarokatPermission","tadarokatProductPermission","ViewDepoPermission","ManageResidPermission","ManageTasviyehPermission","ManageMarjoPermission","DepoAssignmentPermission","ManageCommissionPermission","acceptmoneydealerPermission","tadarokatfailPermission","tadarokatshowPermission","tadarokatacceptPermission","tadarokatnotacceptPermission","SalereportPermission","SalegroupreportPermission","RequestInvoicePermission","RialReceiptPermission","ViewSupliesPermission","CashDeskPermission","ViewNtswShow","SaleManageAccess","InstallmentCustomerAccess","InstallmentCheckAccess","ReferenceReportsInfoComponent","formBuilder","reportsForm","gT","key","getTranslation","prop","width","submitReportsForm","SingleProductComponent","price","AppTitleService","titleService","router","sub","events","pipe","_","routerState","root","route","firstChild","data","fragment","url","toTitleCase","appName","setTitle","SaleCustomerImageInfosService","SaleCustomerImageInfo","updateData","RecordCustomerChecksInfoComponent","uploadService","selectedFileNames","progressInfos","previews","selectedFiles","files","numberOfFiles","i","reader","FileReader","onload","result","readAsDataURL","idx","file","fileName","upload","type","UploadProgress","round","loaded","total","imageInfos","getFiles","customerInfoComponent","SaleCustomerService","nationalCodeService","customerClubService","isReadonly","customerClub","HesabTafzili","AllowEdit","nationalCodeValid","customerAddressList","cOwnerCode","address","resetAddress","customerName","UpdateCustomerClub","updateAddress","aCustomerID","newAddress","aaddress","alat","along","apostalCode","customerID","UpdateAddress","getRepresentCode","GetRepresentCodenew","cPublicCode","nationalCode","checkNationalCode","document","getElementById","focus","getCMainCode","findcMain","getCustomerClubByNationalCode","newCustomerClub","cAddress","cTel","a","Codenew","cRepresentCode","GetNewCustomerClubID","addAddressClub","HTCode","HTName","HTGCode","newHesabtafzili","saveHesabTafzili","resetForm","edit","Csub","CpartCode","GetAcceptContract","checkAcceptCustomer","saveErrorFaild","customer","cRegisterCode","getAddresses","editAll","CustomerClubListComponent","PricePaymentFormInfoComponent","orderRecord","checkoutCashDesk","ok","yesOrNo","UpdateSaleSubReceiptResult","BootstrapDatepickerDirective","el","_isShown","options","ngModelChange","changedSubscription","nativeElement","shownSubscription","hiddenSubscription","initialize","destroy","datepicker","unsubscribe","isShown","hide","clearTimeout","updateTimeout","is","update","tryUpdate","HeaderComponent","toggleSidebar","MyAccountEndpoint","_DeposListUrl","_DeposListUrlDeposOwnerUrl","_DeposListUrlOwnerUrl","_GetDepoTarazNewUrl","_GetBarcodesProductCodeSelectUrl","_GetKardexProductUrl","_GetSalePriceProductInfoForSalePerInvoiceUrl","_GetSalePriceProductInfoForSaleInvoiceBackUrl","_GetContractForCheckAcceptUrl","_GetReportCustomerUrl","_GetContractsDetailsForRemindMajaziKardexProductUrl","_GetDealerSaleResultsMethodUrl","_GetDepoAssignmentProductForCheckVoidContractUrl","_NewDepoRevertToDepoCustomerUrl","_CheckDepoAssignmentIsRevertSerialUrl","_GetAllReportCashierUrl","_GetCashUserUrl","_GetCashUserByIdUrl","ID","endpointUrl","DeposListUrl","requestHeaders","handleError","GetDepos","DeposListUrlDeposOwnerUrl","GetDeposOwner","DeposListUrlOwnerUrl","GetDepoOwner","year","PKind","GetDepoTarazNewUrl","GetDepoTarazNewEndPoint","depoCode","ProductCode","GetBarcodesProductCodeSelectUrl","GetBarcodesProductCodeSelectEndPoint","productCode","GetKardexProductUrl","GetKardexProductSelectEndPoint","CmainCode","Pkind","ProductCount","DiscountValuePrice","DiscountValuePercent","GetSalePriceProductInfoForSalePerInvoiceUrl","getSalePriceProductInfoForSalePerInvoiceEndPoint","DiscountDocumentId","SPICode","PartCode","DepoCode","GetSalePriceProductInfoForSaleInvoiceBackUrl","getSalePriceProductInfoForSaleInvoiceBackEndPoint","NCPartCode","NCCode","GetContractForCheckAcceptUrl","ContractForCheckAcceptEndPoint","partCode","cmainCode","csubCode","fromDate","GetReportCustomerUrl","GetReportCustomerSelectEndPoint","GetContractsDetailsForRemindMajaziKardexProductUrl","GetContractsDetailsForRemindMajaziKardexProductSelectEndPoint","DCDealerCode","GetDealerSaleResultsMethodUrl","GetDealerSaleResultsMethodEndpoint","GetDepoAssignmentProductForCheckVoidContractUrl","GetDepoAssignmentProductForCheckVoidContractEndPoint","rowsDepoRevertToDepoCustomer","NewDepoRevertToDepoCustomerUrl","JSON","stringify","NewDepoRevertToDepoCustomerEndPoint","serial","CheckDepoAssignmentIsRevertSerialUrl","CheckDepoAssignmentIsRevertSerialEndpoint","CustomerCode","SubCustomerCode","ncIsAccepted","ncIsVoid","GetAllReportCashierUrl","GetAllReportCashierEndpoint","GetCashUserUrl","GetCashUserEndpoint","GetCashUserByIdUrl","GetCashUserByIdEndpoint","ReportReciptCashDeskComponent","cashDeskDetail","cashDeskDate","cashDate","totalCredit","totalDebt","reportSaleCashDesk","snapshot","paramMap","locale","RecordPersonalInformationComponent","VMSelectSaleSubOrder_BarCode","saleOrder","rowsNewProduct","DelegacyAddEditComponent","avRoute","isSuccess","numericRegex","cities","provinceId","province","filterdCities","provincies","idParam","actionType","params","delegacyId","required","maxLength","family","region","pattern","cityId","area","areaper","minLength","navigate","RecordCustomerChecksComponent","billInfoComponent","shareService","billLogo","elementType","lineColor","height","displayValue","fontOptions","font","textAlign","textPosition","textMargin","fontSize","background","margin","marginTop","marginBottom","marginLeft","marginRight","rowsVMSaleNewContract","NCYear","rowsCachINV","rowsINV","rowsINV_String","cellTemplate","indexTemplate","canAutoResize","CanManagemanageContract","resizeable","sortable","draggable","GetSaleNewContract_PrintInvoice","MethodShowbillPrint","saleNewContractProducts","SaleNewContractProducts","NCName","ncName","ncYear","ncPartCode","ncCode","values","NCDate","ncDate","Cashyer","cashyer","NCRegistUserCode","sumCount","toConvertCurrencyFormatter","sumTotal","sumDiscountStr","sumDiscount","sumTotalWithDiscount","paymentType","transform","GetTaxPrice","ncpYear","ncpPartCode","ncpCode","ncpProductCode","barCode","ncpAmount","ncpDiscountPercent","ncpPrice","totalPrice","totalPriceWithDiscount","totalPriceDiscount","PriceWithDiscount","GetTaxPriceTotal","SetTaxPrice","TaxPrice","totalWithTax","AlertService","messages","dialogs","okCallback","cancelCallback","okLabel","cancelLabel","defaultValue","DialogType","alert","next","separatorOrDetail","severity","MessageSeverity","captionAndMessageSeparator","msgObject","splitInTwo","showMessageHelper","firstPart","secondPart","onRemove","safeStringify","logInfo","info","logMessage","logError","logWarning","wait","logTrace","summary","detail","isSticky","alertCommand","operation","loadingMessageTimeoutId","debug","trace","asObservable","AlertDialog","AlertCommand","AlertMessage","requestinvoiceinfoComponent","supplierList","supplierControl","SupliesDealerList","methodLoadSuplies","actionsTemplate","sdCode","loaddata","ressdCode","MethodLoadDealerCode","Viewsupliesdealer","getSDCode","GetRequestInvoiceByGroupResult","requestInvoice","reqDatetime","amountSum","SumMoney","moneySum","reqAllMoney","reqDiscountMoney","reqDiscount","reqTax","reqStatus","requestinvoiceproduct","REQPCode","reqCode","REQPDealercode","reqDealercode","REQPYear","reqYear","MoneySum","REQDiscount","REQDiscountMoney","REQTax","REQAllMoney","REQInvoiceNumber","reqInvoiceNumber","editorModalproduct","REQInvoicePrice","onSearchChanged","editorModalproductClose","settlementinfocomponent","myAccountService","saleClosingManagementService","rowsReportCache","rowsReport","dateObjectFromDate","dateObjectToDate","datePickerConfig","firstDayOfWeek","monthFormat","disableKeypress","allowMultiSelect","closeOnSelect","closeOnSelectDelay","onOpenDelay","weekDayFormat","appendTo","body","drops","opens","showNearMonthDays","showWeekNumbers","enableMonthSelector","yearFormat","showGoToCurrent","dayBtnFormat","monthBtnFormat","hours12Format","hours24Format","meridiemFormat","minutesFormat","minutesInterval","secondsFormat","secondsInterval","showSeconds","showTwentyFourHours","timeSeparator","multipleYearsNavigateBy","showMultipleYearsNavigation","startDateJalali1","startOf","todayJalali1","allowChangeData","SettlementSave","NCCOdeopposing","AimContractYear","Cmain","subCustomerCode","CustomerID","CustomerName","CustomerCodeName","Settlementbalance","Harvestamount","remindWithVouchers","RemainVocher","getData","editorModalSettlementSave","getAllReportmethodsettlement","con","SumPriceWithKindTotal","AdjustmentContract","onSearch","showEditorModalSettlement","settlementComponent","NotificationsViewerComponent","notificationService","dataLoadingConsecutiveFailurs","verticalScrollbar","isViewOnly","dateTemplate","contentHeaderTemplate","headerTemplate","statusHeaderTemplate","statusTemplate","contenBodytTemplate","initDataLoading","dataLoadingSubscription","recentNotifications","processResults","dataLoadTask","getNewNotifications","getNewNotificationsPeriodically","notifications","sort","b","valueOf","printTimeOnly","printDateOnly","header","deleteNotificationHelper","deleteNotification","pin","isPinned","opText","pinUnpinNotification","WebsiteGuideComponent","depotarazinfocomponent","AppRoute","rowsDepoRecieptTemporaryNewSelectForPermanent","rowsDepoRecieptTemporaryNewSelectForPermanentCash","columnsTemproryResid","allDepos","summaryFunc","DetailSummery","GetDepoTarazNewResult","pricekindid","loadTemproryResidList","idGroup","Depocode","getDepos","methodLoaddepos","getgroupswithSaleCustomerItemPriceKind","pkcode","MethodTest1","mojodiriyali","select","onChangegroup","UserEdit","currentPassword","newPassword","confirmPassword","ContractProduct","NCPYear","NCPPartCode","NCPCode","NCPRevesion","NCPFromDeliveryDate","NCPToDeliveryDate","NCPTolerancePercent","NCPPrice","NCPDiscountPercent","PFromDeliveryDate","PToDeliveryDate","ProductName","ProductUnit","NCPFromDeliveryPDate","NCPToDeliveryPDate","NCPSumPrice","NCPDiscountPrice","NCPSumDiscountPrice","NCPPay","Tax","Pay","CreatorCompany","JustTax","JustDuties","Remind","NCPMiddleMaturity","ncpComissionStore","ncpTaxStore","ncpBasePrice","ncpOverHead","ncpPriceArsam","BarCode","nCPYear","nCPPartCode","nCPCode","nCPRevesion","nCPFromDeliveryDate","nCPToDeliveryDate","nCPTolerancePercent","nCPPrice","nCPDiscountPercent","pFromDeliveryDate","pToDeliveryDate","productName","productUnit","nCPFromDeliveryPDate","nCPToDeliveryPDate","nCPSumPrice","nCPDiscountPrice","nCPSumDiscountPrice","nCPPay","creatorCompany","justTax","justDuties","nCPMiddleMaturity","residComponent","LoaderInterceptor","loaderService","requests","req","splice","create","observer","subscription","handle","removeRequest","complete","SaleReciptCashComponent","listUploadFileName","loadDate","saleReceiptList","x","checkComplet","FormData","append","uploadCashFiles","insertUploadCustomerImage","UserId","saleReceiptsId","SaleSubReceipt","InsertSaleReceipt","actionStatus","actionDescription","size","event2","showImageFiles","deleteSaleReceipt","SerialNumber","fileChangeEvent","save","SettlementSaveinfocomponent","mySharedService","columnssettlement","columnOffsetContract","columnAimsetContract","isShow","AdjustmentsObj","displayedOrderColumns","isRemaind","rowIndex","num","CurrencyFormatterConvertToNumber","checkRemind","Count","SumCount","User","NaN","SetBalance","GetAimsetContract","ncccode","partcodenc","yearnc","onDataLoadSuccessfulAim","GetOffsetContract","onDataLoadSuccessfuloff","rowsAimReportCache","rowsAimReport","amount","rowsoffReportCache","rowsoffReport","getAllReportmethodsettlementSimilar","isCan","OffsetContractCode","OffsetContractYear","OffsetPartCode","AimContractCode","AimPartCode","UserCode","Description","saveAdjustmentsUrl","SaveAdjustment","settlementContractList","addressModel","location","openCloseTime","VMSelectSalePreInvoiceForContractProduct_BarCode","salePreInvoiceForContracts","csubName","vmSalePriceProductInfoForSalePerInvoice","iInstallments","invcheckcomponent","BannerDemoComponent","banner1","banner2","banner3","banner4","map","webpackContext","webpackContextResolve","__webpack_require__","o","keys","webpackContextKeys","resolve","module","exports","View_BarcodeInDepo","SaleLoadingCommandBarCode","Lcbyear","Lcbnum","Lcbbarcode","LcbproductCode","LCBDepoCode","SalePreInvoiceForContractProduct","spipYear","spipPartCode","spipCode","spipRevesion","spipProductCode","spipAmount","spipFromDeliveryDate","spipToDeliveryDate","spipDiscountPercent","spipTaxStore","spipComissionStore","spipBasePrice","spipOverHead","spipPriceArsam","MoneyCode","moneyCode","AppTranslationService","translate","onLanguageChanged","languageChanged$","addLanguages","setDefaultLanguage","lang","addLangs","setDefaultLang","defaultLang","getBrowserLang","currentLang","langs","browserLang","getBrowserLanguage","match","changeLanguage","language","getDefaultLanguage","use","interpolateParams","instant","TranslateLanguageLoader","VMSelectSubOrder_Order","saleSendProduct","ConfirmMessageEnum","alertify","AppComponent","storageManager","toastaService","toastaConfig","appTitleService","oauthService","GlobalConstantsservice","newNotificationCount","appTitle","appLogo","stickyToasties","loading","subscriptionRouter","dataLoadingConsecutiveFailures","editingCUser","editingVersion","initialiseStorageSyncListener","theme","position","limit","showClose","showDuration","modalLoginControls","changes","controls","control","loginControl","modalClosedCallback","loginModal","shouldShowLoginModal","isSessionExpired","isUserLoggedIn","isLoggedIn","userName","getDialogEvent","getMessageEvent","showToast","reLoginDelegate","getLoginStatusEvent","initNotificationsLoading","unsubscribeNotifications","logout","notificationsLoadingSubscription","n","isRead","readUnreadNotification","response","dialog","set","labels","prompt","slice","clear","toastOptions","timeout","onAdd","toast","warning","redirectLogoutUser","ready","toggleClass","css","display","findIndex","getUTCFullYear","UploadDocumentsInfoComponent","global","Alertify","_alertify","isopen","ENTER","ESC","SPACE","queue","btnCancel","btnOK","btnReset","btnResetBack","btnFocus","elCallee","elCover","elDialog","elLog","input","getTransitionEvent","buttons","holder","submit","t","supported","createElement","transitions","style","delay","buttonReverse","buttonFocus","transition","addListeners","fn","hasOK","hasCancel","hasInput","self","common","preventDefault","unbind","keyCode","bind","setFocus","addEventListener","attachEvent","handleErrors","onerror","line","appendButtons","secondary","primary","build","html","cssClass","className","close","elem","timer","isNaN","hideElement","transitionDone","stopPropagation","removeChild","hasChildNodes","parentNode","placeholder","activeElement","check","scrollTop","init","callback","setup","extend","setAttribute","appendChild","notify","innerHTML","k","hasOwnProperty","fromQueue","removeEventListener","detachEvent","EqualValidator","validateEqual","reverse","c","other","validateReverse","validateNoReverse","errors","setErrors","provide","useExisting","multi","SalePreInvoiceForContractCheckInfoModel","SalePreInvoiceForContractCheckInfoUpdateStatusModel","FinalSalePreInvoiceForContractCheckInfoUpdateStatusModel","environment","production","tokenUrl","loginUrl","bill","MyAccountService","myaccountEndpoint","_rolesChanged","roleAddedOperation","roleDeletedOperation","roleModifiedOperation","WareHouseResult","dcCode","dpuName","sumInput","sumOutput","RemPrice","UnitPrice","AppErrorHandler","reload","HomeComponent","CustomerGradeService","customerGrade","CustomerGradeUrl","CheckInformationInfoComponent","scanSerial","ConfirmMessageModel","SaleLoadingCommandBarCodeObject","accountEndpoint","getSaleCustomerProfileEndpoint","getGroupsEndpoint","getAllSaleCustomerProfileEndpoint","TodoDemoComponent","localStorage","editing","taskEdit","isDataLoaded","_hideCompletedTasks","fetch","refreshDataIndexes","nameTemplate","descriptionTemplate","saveToDisk","cb","getFromDisk","completed","important","$$index","editorModal","cellValue","deleteHelper","getDataObject","DBKeyTodoDemo","currentUserId","saveSyncedSessionData","_currentUserId","addTask","showcontractcomponent","datePipe","colorSettingsService","checkoutCashDeskInDate","displayedColumns","displayedSendOrderColumns","rowsCacheProduct","SerialProductObj","Allserial","ScanSerial","rowsProduct","rowsNewProduct_Order","rowsNewProductCash","rowsSubSendProduct","rowsDepoAssignmentProductDetailSelectForUpdate","rowsDepoAssignmentProductDetailSelectForUpdateCash","rowsSubSendProductCash","rowsSerail","rowsSerailCash","rowsSeraillast","rowsSeraillastCash","rowsSubProduct","rowsSubProductChash","rowsSubReportLoading","rowsSubReportLoadingCash","columnsDepoAssignment","columnsSerial","columnsSerialLast","columnsSendProduct","columnsConteract","columnsSubproduct","columnsSaleLoading","columnsLastSubProduct","ViewContract","isAllContract","conrowsSubProduct","alldetail","connew","CanManageCustomer","SaleOrdersObj","objwarning","SaleSubOrdersObj","SaleInvoiceObj","SaleSendProduct","SaleSubSendProductObj","SaleLoadingCommandObj","SaleSubLoadingCommandObj","BarCodeObj","DepoAssignmentProductObj","DepoAssignmentProductNumberLoadingObj","DepoAssignmentProductDetailObj","DepoAssignmentProductBarCodeobj","rowsSaleSubOrders_BarCode","rowsSaleSubSendProduct_BarCode","VMSelectSaleSubSendProduct_BarCode","rowsSaleSubLoadingCommands_BarCode","VMSelectSaleSubLoadingCommands_BarCode","rowsDepoAssignmentProductDetail_BarCode","VMSelectDepoAssignmentProductDetail_BarCode","allcar","alldriver","rowsCustomer","TabDrictiveobj","StatusSerialText","CarCode","CarCode1","DriverCode","insertOrderConfirm","rowsPreInvoice","deletedOrderConfirm","IsExistBarcodes","lscdccodelocal","LoadNumber","DelayLoad","Spfor","SpAdress","SmsNumber","resizable","headerCheckboxable","checkboxable","actionsTemplateload","actionsTemplateSerial","loadPubCars","MethodTestCmain","getNameHeader","filterValue","customerContractList","trim","toLowerCase","paginator","firstPage","joker","editingCName","getSaleCustomer","MethodTestContractnew","Depocodenew","dep","depowner","checkoutCashDeskStatus","SaleNewContractSelectList","statusString","GetSaleLoadingUrl","nccodeget","loadSaleLoading","obj","objLast","customerSendOrderContractList","objPubDrivers","dcode","objpubCar","ccode","cnumer","onChangeCar","getPubCars","dateInsert","oneDay","tomorrowDateInsert","getTime","nccode","ncsubCustomerCode","ncdate","datediffrent","IsOneDay","selectContract","GetStatusNUmber","wizardobj","tabs","step","activeTab","active","getNewContractProduct","MethodTestContractProduct","nccustomerCode","disabled","status_ID","GetContractForCheckAccept","onCheckAcceptContract","voidContract","onCheckValidContract","lscdccode","serialLoad","GetLastSerialAll","lscnum","onCurrentserialBarcode","onCurrentserial","Print","NumberOrder","lcNumberSendProduct","DateSend","loadPDate","NumberBargiei","lcNum","CSubCode","dapCode","NumberHavaleh","GetAssProductList","onLoadassProduct","StoreName","depoName","OutputGoods","CodemeliHavaleh","OutputCar","carKind","lcFor","lcDestination","OutputAddress","Pelak","cNumer","Drivername","dName","OutputNumberPelak","OutputDriver","PrintResid","getSubSendProduct","onCurrentSubOrder","LoadNumbertxt","loadNumber","onKeydownLoad","LastLoad","MethodTest","GetSaleLoadingSelectForScaner","MethodTestSaleSub","serialCode","SerialNUmber","txtmessage","isInputTxtKeyNumber","GetStatusSerialEndpointBySerial","MethodTestSaleSubstatus","searchElement","isExist","lscloadingOrderCount","lsccountLoading","TemprorySerialObj","ScanSerial2","depocod","LCNumberSendProduct","LoadPDate","LCDepoCode","GetLoadingDetail","MethodTestSaleSubLoading","loadgridnew","getNewContract","MethodTestContract","ObjValue","LoadAimOff","billEditor","showbill","ncyear","editorModalBill","OrderNumber","Spdate","SpartCode","Spyear","Spcode","IsAccepted","IsCancel","SpdepoCode","SpnumberOrder","selectSaleSubSendProduct_BarCode","Sspyear","SspartCode","Sspdes","Sspcode","Ssppcode","pCode","Sspcount","orderCount","SspsendCount","GetNewSaleSendProduct","saveNewSaleSendProductSuccessHelper","MethodStatusNumber","load","ViewResid","GetOOrderNum","Methodoorder","MethodTestPreInvoice","checkCount","isInstallments","osCount","rmindMajazi","issaleorder","GetOrdernum","MethodOrderNumberForSaleSendProduct","CheckTrue","isSavingAssignDepo","MethodSaveAssignmentProducts","productSeriales","ContractCode","ContractYear","contractyear","DAPCancelBit","DAPCustomerMainCode","DAPCustomerSubCode","DAPDateAssignment","DAPSysDate","DAPDepCode","DAPPrice","DAPTCode","DAPYear","DAPUserCode","selectDepoAssignmentProductDetail_BarCode","user1","DAPDYear","DAPDCode","DAPDDCCode","DAPDDepoCode","DAPDUnitProduct","DAPDASSCount","DAPDForInvoice","DAPDPrice","DAPDPricePersonel","DAPDPPriceEnergy","DAPDPriceEstehlak","DAPDPriceMali","DADPriceSale","depoAssignmentProduct","GetNewAssignmentLoading","saveNewAssignmentDepoHelper","AssignmentLoadNewCode","LoadNumbert","DeleteSaleLoadingCommandBarCode","newDepoAssignmentProduct","DepoAssignmentProductSave","DAPDepoCode","DAPLCNum","newDepoAssignmentProductNumberLoading","DepoAssignmentProductNumberLoadingSave","newDepoAssignmentProductDetail","DepoAssignmentProductDetailSaveSuccess","Dapcode","Dapbddccode","DapbbarCode","Dapbcode","DapbdepCode","Dapbyear","DepoAssignmentProductBarCodes","Active","SaveAssignmentProducts","LCNum","Lcnum","Lcyear","LcdateLoading","LcpartCode","LcnumberSendProduct","LcdepoCode","Lcfor","Ccode","LcdriverCode","Lcdestination","LccancelBit","LcdepoCodeFact","newSaleLoadinCommand","SaveSaleLoadingCommand","Lscyear","LscunitProductCode","LscpartCode","Lscdesc","newSaleSubLoadingCommands","SaveSaleSubLoadingCommand","UpdateChangeStatus","saveNewSaleLoadingCommandSuccessHelper","SPCode","selectSaleSubLoadingCommands_BarCode","setcountload","saleLoadingCommand","GetNewAssignmentLoadingNextSendProduct","saveNewAssignmentLoadingNextSendProductHelper","DeleteSendProduct","TypeModel","getPreInvoices","onDataLoadSuccessfulPreInvoice","spicode","cmain","ObjPreInvoice","cPostalCode","nameCity","nameOstan","spdate","spiDate","prod","GetSaleSelectSubBarCode","MethodGetOrderNumber","customerOrderContractList","priceEditor","editorModalprice","driverEditor","editorModalDriver","isVoid","ncisVoid","ncisAccepted","GetDepoAssignmentProductForCheckVoidContract","ValidContractHelper","UpdateValidContract","saveContractSuccessHelperValid","SetUpdatePreinvoiceVoid","saveContractSuccessPreInvoiceHelper","GetRemindWithVouchers","LoadremaindVouchers","loadError","remindWithVouchersKarmozd","ans","saveContractHelperAccept","Mccode","Sccode","OpartCode","IsCanceled","OcontractNum","OcontractYear","OcreditFrom","OcreditTo","Odate","OgetWay","OorderNum","OorderWay","OproIdea","Oyear","selectSaleSubOrders_BarCode","Oscount","Osdes","Pcode","GetNewSaleOrder","saveContractSuccessSubOrderHelper","newSaleOrdes","saveContractSuccessHelper","newSaleSubOrders","selectSubOrder","ContractRemind","DCHeight","DCLong","DCweight","DCwidth","OOrderNum","OPartCode","OSDes","OYear","Unit","IsRemainCanceled","orderNewCode","ordercode","CheckBarcode","GetNewAssignmentLoadingNextAccept","saveNewAssignmentLoadingNextAcceptHelper","saveOrderSuccessHelper","DeleteOrder","ObjMoney","icode","icontractCode","icontractYear","idate","idesc","iisVoid","ikind","imainCustomerCode","ipartCode","ipayType","iremarks","iseller","isellerCode","isubCustomerCode","letSumAfterDiscount","letsumDiscount","letsumPrice","lettaxandDuties","letIpayment","sumAfterDiscount","sumPriceAll","taxAndDuties","sumContractPay","SaleInvoiceDetailModel","idyear","idcode","iddiscount","idid","idproductCode","dapddcCode","idtax","idtotalAfterDiscount","idtotalPayment","idtotalPrice","idunitPrice","idamount","sumForRegist","isumAfterDiscount","isumDiscount","isumPrice","itax","ipayment","iuserCode","iyear","InsertSaleInvoice","SaveSaleInvoiceSuccess","tre","getPubDrivers","onCurrentUserDataLoadDriverSuccessful","VMSelectSubOrderObj","sPIPartCode","editorModalShowWarehouse","changeColor","BaseService","headers","ReportSaleCashDeskModel","RequestInvoice","requestInvoiceProducts","reqIduser","reqMoney","reqType","RevertInvoiceNumber","NotFoundComponent","PERSIAN_DATE_FORMATS","parse","dateInput","monthYearLabel","dateA11yLabel","monthYearA11yLabel","MaterialPersianDateAdapter","clone","jYear","jMonth","jDate","day","jMonths","jMonthsShort","valuesArray","weekdays","weekdaysShort","jDaysInMonth","month","hours","minutes","seconds","milliseconds","getMonth","isValid","parseFormat","displayFormat","years","add","months","days","MyCompanyService","deleteData","PersonalInformationInfoComponent","FileUploadService","reportProgress","responseType","request","WarehouseStoreInfoKardexRemaindMajaziComponent","ListBarcodesObj","rowsCach","LoadForm","GetContractsDetailsForRemindMajaziKardexProductSelect","GetKardexProductSelectSuccess","list","VMDepoRevertToDepoCustomers","depoRevertObj","rowSerial","isExistInvoice","SaleOrders","SearchBoxComponent","searchChange","searchInput","onValueChange","reportcontractComponent","dateFrom","dateTo","customerCode","loadReportCustomerData","getReportDateByCustomerCode","GetAllReportSite","reportCustomerList","applyFilter","reportsalegroupinfoComponent","cdRef","rowsselect","uniqueProductCode","rowRequestInvoiceProduct","rowRequestInvoiceProductBarCode","rowslist","RequstInvoiceObj","RequestInvoiceProductObj","RequestInvoiceProductsBarcode","RequestInvoiceProductBarcode","columnsselect","SumMoneykole","getSupplierList","Txtdiscount","detectChanges","getDealerSaleGroupResultsMethod","table","rowDetail","toggleExpandRow","toFixed","mapProductCode","unique","lcbProductCode","moneyBase","includes","indexs","countCode","GetGetNewCodeRequestInvoiceEndPoint","MethodGetNewCodeReciep","spiCodeMain","ReqInvoiceProductObj","reqpAmount","reqpCode","reqpDealercode","reqpPrice","reqpPriceSum","reqpProductCode","reqpYear","getDealerSale_Results","ObjselectBarcode","ReqInvoiceProductBarcodeObj","lcbBarcode","requestInvoiceProductBarCodes","RequestInvoicesInsert","Succ","MethodSucc","MethodError","selectdealer","rownumber","onSelect","onKeydowntakhfif","SaveRequestInsert","Notification","parseDate","invoicesaleComponent","DepoRecieptPermanent","DRPYear","DRPCode","DRPDepCode","DRPDateTime","DRPRecieptTemp","DRPDeliverCode","DRPCarCode","DRPDealerCode","DRPKindDealerCode","DRPRecieptTecnical","DRPSysDate","DRPUserCode","DRPDesc","UploadDucumentsComponent","HomeInfoComponent","ClientShopBannerComponent","SaleReceiptLcComponent","lcFile","rSBankTrader","salePriceKindCode","SaleSubSendProduct","EndpointBase","refreshLogin","continuation","isRefreshingLogin","pauseTask","reLogin","error_description","taskPauser","continueOp","DBkeys","CURRENT_USER","USER_PERMISSIONS","REMEMBER_ME","LANGUAGE","HOME_URL","THEME_ID","SHOW_DASHBOARD_STATISTICS","SHOW_DASHBOARD_NOTIFICATIONS","SHOW_DASHBOARD_TODO","SHOW_DASHBOARD_BANNER","contractComponent","toppings","disableSelect","toppingList","BootstrapSelectDirective","oldValues","shown","hidden","checkIsValuesChanged","selectpicker","requiredAttribute","doValidation","newValue","every","v","valid","ClientFranchiseComponent","ClientProductComponent","productShow","depotarazComponent","BootstrapToggleDirective","checkedSubscription","bootstrapToggle","change","toggle","ConfigurationService","themeManager","fallbackBaseUrl","_language","_homeUrl","_themeId","_showDashboardStatistics","_showDashboardNotifications","_showDashboardTodo","_showDashboardBanner","onConfigurationImported","configurationImported$","loadLocalChanges","exists","resetLanguage","installTheme","getThemeByID","resetTheme","savePermanentData","jsonValue","clearLocalChanges","importValue","JsonTryParse","themeId","homeUrl","showDashboardStatistics","showDashboardNotifications","showDashboardTodo","showDashboardBanner","changesOnly","exportValue","useBrowserLanguage","useDefaultLangage","saveToLocalStore","defaultLanguage","defaultThemeId","defaultHomeUrl","defaultShowDashboardStatistics","defaultShowDashboardNotifications","defaultShowDashboardTodo","defaultShowDashboardBanner","appVersion","DepoAssignmentProductNumberLoading","InventoryComponent","ClientContactComponent","isContactPage","VMSaleSubSendProduct_BarCode","StatisticsDemoComponent","chartData","label","chartLabels","chartOptions","responsive","chartColors","backgroundColor","borderColor","pointBackgroundColor","pointBorderColor","pointHoverBackgroundColor","pointHoverBorderColor","chartLegend","chartType","timerReference","setInterval","randomize","initialWidth$","innerWidth","resizedWidth$","windowWidth$","windowWidthSub","clearInterval","_chartData","j","floor","random","configure","chartHovered","chartClicked","changeChartType","SaleSubOrders","ReportCashierByDateModel","sumRecipt","sumNaghd","sumPos","sumCheck","sumHavaleh","sumAccount","sumDiffOld","sumCashier","sumCashierRecive","sumCustomerAcc","sumCustomer","notAcceptedContractPrice","acceptedContractPrice","canceledContractPrice","contractPrice","countALL","AuthGuard","state","checkLogin","canActivate","path","loginRedirectUrl","DepoAssignmentProduct","RequestInvoiceEnum","SharedService","messageSource","currentMessage","currentPrice","maximumPrice","currentPercentage","string","len","str","persianNumbers","arabicNumbers","FristDate","nowDate","d1","getDate","d2","sdate0","convert2english","sdate","SerialProduct","NumberDirective","_el","initalValue","SupliesOrderRelationReciept","soryear","sorcode","sorunitBuy","sorkindRequest","soryearReciept","sorcodeReceipt","sordepoReceipt","sorprodactCode","sorcount","sorsysDate","soruserCode","WarehouseStoreComponent","requestinvoiceproductComponent","excelService","requestType","requestInvoiceId","reloadData","GetRequestInvoiceProduct","MethodLoadProduct","UpdateRequestInvoice","changeModal","updateRevertInvoiceEndpoin","exportAsExcelFile","exportAsXLSX","invsalecomponent","salePerInvoiceForContractCheckInfoService","showInvoiceSale","preInvoices","rowsSalePreInvoiceForContractProductSelect","rowsSalePreInvoiceForContractProductSelectCash","SaleBankAccountsViewRows","installmentsDetail","SalePreInvoiceSaleNewContract","salePreInvoice","acceptInvoiceSale","canceledInvoiceSale","customerImages","applicantPage","customers","columnsPrint","columnsPrintCash","showInstallments","IsPrint","allOstan","tehranVillaCheck","printTitle","isAcceptContract","loadData","loadBank","loadHesabKind","loadSaleBankAccount","invoiceSaleList","GetPartCode","canViewCustomer","onLoadostan","InvEditor","GetSBACode","methodSBACode","GetCustomerAddress","onDataLoadSuccessfulGetCustomer","GetSaleBankAccountsList","methodListSaleBank","sbabankName","sbaacountNum","sbaNumberCard1","sbaNumberSheba","PreAddressstore","PreManageName","cAdminName","PreManageTel","editingCCustomerName","resetInvosale","paymentType2","setValue","selectGroup1","selectGroup2","editedPreInvoice","sourcePreInvoice","reportCustomerEditor","UpdateNationalCodeCallback","editorModalReportCustomer","Ostans","objPreInvoice","dd","dayDiff","date1","date2","diff","diffDays","ceil","Sale","CustomerClubObj","customerAddress","customerMobile","isEditing","preinvoicenew","EmptySearch","firstloadGroup","getinstallmentsService","tbl_InstallmentsDetails","GetAllPreInvoiceSelectList","modal","UpdateAccept","savePreInvoiceSuccessHelperAccept","methodCmain","CodeMain","CreateContractForPerInvoiceProducts","saveCreateContractForPerInvoiceProductsSuccessHelper","preInvoice","Ncpcodeobject","SabtareshHelper","closePreContractModal","sPIYear","UpdateVoid","savefaild","ngOnInit","MethodloadNewCode","showPay","getHesabKind","onCurrentHesabKindDataLoadSuccessful","getBankAccount","onCurrentBankAccountDataLoadSuccessful","onCurrentBankDataLoadSuccessful","hesabKind","salebankacc","spiIsAccepted","spiIsVoid","deleteCustomerHelper","customerInstallments","dateInstallments","PreDate","spipDate","PreAddress","PreTel","PreNumberInvoice","PreNathionalCode","PreCodePosti","PreTelHamrah","PreCustomerCode","priceKindName","PreNameGroup","columnsPrintFilter","spipSumPrice","spipDiscountPrice","spipSumDiscountPrice","spipPay","funcSaleReceiptList","funcContractStatus","funcSalebank","loadBankInfo","funcHesabKind","loadHesabKindInfo","funcSalebankacc","funcOldcheckDetailList","getOldcheckDetailList","saleBankAccounts","oldcheckDetailList","installmentData","getInstallmentData","salePreInvoiceContractCheckInfo","getSalePreInvoiceContractCheckInfo","resultInstallments","getAllContractCheckInfoListByYear","AllBedPay","ReceiptNum","spiCodeLocal","spiYearLocal","spiPartCodeLocal","VoidPreInvoice","updateNationalCodeForm","PreInvoiceObj","custmer","deponame","partcode","cMain","cSub","customerId","idSaleCustomerGroup","Allremain","loadReportCustomer","paymentInstallmentModal","recordCustomerCheck","getSalePreInvoiceForContractCheckInfoList","acceptSaleCustomer","getCustomerImages","customerInfo","saleCustomerImageInfos","getCustomerImageInfos","refreshPreInvoiceData","closeInvoiceSaleModal","closeInvoiceSale","GoodsInfoDetailsComponent","comment","barcode","SalePrice","productCount","fromDateTime","toDateTime","maximumUnitSalePriceAfterDiscount","discountPriceFromMaximumUnitSalePriceAfterDiscount","approvedDiscountValuePercent","approvedDiscountValuePrice","storeBaseCommissionAfterDiscount","totaltax","discountValuePercent","discountValuePrice","rowProduct","DiscountKind","DiscountApplication","DiscountAmount","Address","ReportSaleCashDeskComponent","displayedSubColumns","expandedElement","reportContractsSaleReciptCash","minHeight","RolesManagementComponent","allPermissions","roleEditor","addNewRoleToList","editedRole","sourceRole","sourceIndex","moveArrayItem","maxIndex","getRolesAndPermissions","roles","permissions","editingRoleName","newRole","editRole","deleteRoleHelper","deleteRole","NotificationService","notificationEndpoint","notificationId","getNotificationEndpoint","Create","page","pageSize","getNotificationsEndpoint","getNotificationsFromResponse","userId","getUnreadNotificationsEndpoint","getNewNotificationsEndpoint","lastNotificationDate","processNewNotificationsFromResponse","notificationOrNotificationId","getPinUnpinNotificationEndpoint","notificationIds","getReadUnreadNotificationEndpoint","getDeleteNotificationEndpoint","_recentNotifications","SaleReceiptCustomerComponent","saleReceiptStatus","statusSaveSaleReceipt","Utilities","responses","checkNoNetwork","noNetworkMessageCaption","noNetworkMessageDetail","responseObject","getResponseBody","checkAccessDenied","accessDeniedMessageCaption","accessDeniedMessageDetail","checkNotFound","notFoundMessageCaption","notFoundMessageDetail","httpMessage","findHttpResponseMessage","messageToFind","seachInCaptionOnly","includeCaptionInResult","searchString","httpMessages","fullMessage","statusText","base","URL","hostname","paramString","param","keyValue","separator","separatorIndex","part1","substr","part2","object","simpleObject","charAt","toUpperCase","subString","items","loweredRoles","randomNumber","min","max","origin","protocol","port","base2","dayNames","monthNames","dayOfWeek","getDay","dayOfMonth","sup","getFullYear","dateString","period","minute","getMinutes","hour","getHours","timeString","today","setHours","yesterday","setDate","test","toDateString","printDate","dateTimeSeparator","search","start","end","delta","printedDays","birthDate","otherDate","searchTerm","caseSensitive","array","oldIndex","newIndex","RegExp","testIsAbsoluteUrl","isArray","removeNulls","func","immediate","context","args_","arguments","later","apply","callNow","cookies","getItem","sKey","decodeURIComponent","cookie","encodeURIComponent","setItem","sValue","vEnd","sPath","sDomain","bSecure","sExpires","constructor","Infinity","toUTCString","removeItem","hasItem","aKeys","nIdx","AutofocusDirective","elementRef","BarcodeListModalComponent","colorSettingService","selectBarcodeList","barcodeSelect","barcodeListData","barcodeList","findBarcode","changeColorBarcode","sendBarcodes","PubDrivers","dccode","Dname","DStore","SaleLoadingCommand","LcsysDate","Lcuser","LocalStoreManager","syncKeys","initEvent","reservedKeys","sessionStorageTransferHandler","sessionStorage","localStorageSetItem","loadSyncKeys","syncKeysContains","sessionStorageSetItem","onInit","addToSessionStorageHelper","removeFromSessionStorageHelper","clearInstanceSessionStorage","addToSyncKeysHelper","removeFromSyncKeysHelper","syncListenerInitialised","syncSessionStorage","clearAllSessionsStorage","clearLocalStorage","DBKEY_SYNC_KEYS","DBKEY_USER_DATA","testForInvalidKeys","removeFromSyncKeys","addToSessionStorage","removeFromSessionStorage","saveSessionData","sessionStorageGetItem","localStorageGetItem","isDateType","addToSyncKeysBackup","keyToRemove","removeFromSyncKeysBackup","getSyncKeysFromStorage","storedSyncKeys","CustomerDocumentStatusEnum","carComponent","returnedComponent","PreviewsPrintComponent","ImageUploaderComponent","uploader","isUploading","isValidSize","isValidWH","imageUrl","images","onUploadFinished","progressSource","progress","imgUrl","img","Image","src","loadedImage","currentTarget","IsValidSize","wid","hei","kbSize","getImageDimenstion","infoMessage","onChange","AccountEndpoint","_GetTikets","_usersUrl","_getUserUrl","_userByUserNameUrl","_currentUserUrl","_currentUserPreferencesUrl","_unblockUserUrl","_rolesUrl","_roleByRoleNameUrl","_permissionsUrl","_CMainCodeByUserId","_SDCodeByUserId","_TiketsInsert","_GetAssigneSalerUrl","_GetSBACodeUrl","_GetNtswByTrackingCode","_GetNtswWithOutTrackingCode","_GetRepresentCode","_GetcheckDepoRecieptPermanentURL","_RevertDetailRepeateurl","_GetCustomerClub","_SupliesDealerListurl","_GetDepoRecieptPermanentsExist","_SalePriceKindsurl","_SalePriceKind_SupliesDealer","_DepoAssignmentProductBarCodesUrl","_CsubCodeByUserId","_CheckExistReceiptUrl","_GetCustomerAddressUrl","_GetCountProductDealerCodeUrl","_CheckSerialRevertUrl","_CheckExsitInvoiceAssUrl","_saveCustomerClubUrl","_saveAddressUrl","_saveCustomerUrl","_InsertHesabTafziliUrl","_UpdateRequestInvoiceUrl","_InsertRevertiUrl","_SaleCustomerUrl","_SaleSubOrdersUrl","_GroupUrl","_GetGroupsNewUrl","_GetGroupswithcMainCode","_GetgroupswithSaleCustomerItemPriceKind","_ProductSupliesDealersUrl","_ProductSupliesDealerImagesUrl","_ProductSupliesDealerImagesFolderInsertUrl","_ProductSupliesDealerImagesDeleteUrl","_GetRequestInvoiceProductUrl","_editCustomerUrl","_deleteCustomerUrl","_checkCustomerUrl","_PubOstanUrl","_PubCitiesUrl","_RequestInvoiceUrl","_PostRequestInvoiceUrl","_UpdateRevertInvoiceUrl","_DepoProductUnitsUrl","_SalesUrl","_NameHeadUrl","_GroupNameUrl","_DepoCodeListUrl","_GetSaleSelectSubUrl","_GetSaleSelectSubBarCodeUrl","_GetRemindWithVouchersUrl","_GetStatusAcceptUrl","_GetSupliesOrderNewsUrl","_getGetReportDebtNewResultMethodUrl","_getGetReportDebtNewGroupResultMethodUrl","_getGetReportDebtNewGroupResultMethodByInvoiceNumberUrl","_GetSupliesContractReportUrl","_GetSupliesContractReportWithDealerCodeUrl","_GetSupliesContractReportWithDealerCode_ProductCodeUrl","_GetSupliesContractReportMoneySiteUrl","_GetCustomerClubWithUrl","_DeposListUrlOwner","_DepoListTarazUrl","_DepoTarazwithcomDetail","_VirtualWarehouseInventory","_MethodGetDepoTarazwithcomDetailByDCCodeUrl","_GetInvoiceReportSite","_DepoTarazwithcomDetailBarcode","_DepoTarazwithcomDetailSearchScan","_DepoTarazNewPivotDepos","_TarazDepoBaseUrl","_GetSaleBankAccountsUrl","_GetSubSendProductUrl","_SaleReceiptChekHesabSanadUrl","_GetAcceptContractCheckUrl","_GetSaleSubReceiptSelectUrl","_GetAssProductListUrl","_GetDepoRecieptTemporaryListUrl","_GetDepoAssignmentWithSerialListUrl","_GetSaleLoadingUrl","_GetDepoByCommissionMoneyUrl","_GetDepoByCommissionMoneyAcceptUrl","_GetDepoByCommissionMoneyAcceptByDCDealerCodeUrl","_GetDepoAssignmentByAcceptUrl","_GetLastSerialUrl","_PreInvoiceUrl","_ContractProductUrl","_ContractProductInsertUrl","_SupliesDealerMoneysInsertUrl","_SupliesOrderRelationRecieptsInsertUrl","_DepoRevertToDepoCustomersUrl","_DepoAssignmentProductInsertUrl","_RequestInvoicesInsertUrl","_RequestInvoiceProductsInsertUrl","_RequestInvoiceProductBarCodesInsertUrl","_AdjustmentsInsertUrl","_GetOffsetContractUrl","_GetAimsetContractUrl","_DepoAssignmentProductLoadingInsertUrl","_DepoAssignmentProductDetailInsertUrl","_GetRequestInvoiceByGroupResultsUrl","_ProductSupliesDealersInsertUrl","_ProductSupliesDealersUpdateUrl","_ProductSupliesDealerImagesInsertUrl","_DepoRecieptPermanentsUrl","_DepoRecieptPermanentDetailsUrl","_SaleSubReceiptInsertUrl","_SaleSubReceiptsInsertUrl","_SaleLoadingCommandBarCodesInsertUrl","_SaleLoadingCommandBarCodesInsertPostArrayUrl","_TemprorySerialsInsertUrl","_DepoRialReceiptInsertUrl","_TemprorySerialsGetUrl","_PreInvoiceInsertUrl","_DepoRevertToDepoCustomerDetailInsertUrl","_GetNewCodeUrl","_GetSDCodeUrl","_GetTaxPriceTotalUrl","_GetNewCodeDepoRecieptPermanentUrl","_GetOrdernum","_GetSerialStatue","_GetCheckExistBarCode","_GetNewCarsCodeUrl","_GetNewDriverCodeUrl","_GetStatusNumberUrl","_GetSaleNewContract_PrintInvoiceUrl","_GetNewCodeLoading","_GetNewCodeassignmentLoading","_NewAssignmentProducts","_NewAssignmentProductsNextAccept","_NewPreInvoice","_InsertNewPreInvoice","_NewSaleOrder","_NewSaleSendProduct","_NewSaleLoadingCommand","_NewAssignmentProductsNextPayment","_NewAssignmentLoadingNextSendProduct","_CreateContractForPerInvoiceProducts","_GetGetDapCodeProductLoading","_GetDepoRecieptTemporaryNewDetail","_GetDepoRecieptTemporaryDetail","_GetCodeSPICode","_GetDepoTarazNewResult","_GetDepoTarazNewResult2","_GetDepoCodeDealerCodeUrl","_GetProductSupliesDealerUrl","_GetProductSupliesDealerImageUrl","_GetProductSupliesDealerFileImageUrl","_GetProductSupliesDealerImageUrlfromsup","_GetDirectory","_GetRNum","_DeleteTemproryUrl","_AddressCustomerUrl","_GetNewCodeReciptUrl","_GetNewCodeRevertUrl","_GetNewCodeContractUrl","_GetNewCodesalepriceUrl","_GetPreInvoiceProducttUrl","_getPreInvoiceUrl","_DeletePreInvoiceUrl","_DeleteSendProductUrl","_DeleteOrderUrl","_DeleteSaleLoadingCommandBarCodeUrl","_GetPreInvoiceUrl","_GetAllReport","_GetAllReportSite","_GetAllReportsettlement","_GetReceiptSettlementSimilar","_GetAllPreInvoiceSelectList","_GetAllSerial","_GetLoadingDetail","_GetNewCodeOrderUrl","_GetNewCodeDepoRecieptTemporaryUrl","_GetGetNewCodeRequestInvoiceUrl","_GetDealerSaleResultsMethod","_getDealerSaleGroupResultsMethod","_GetOOrderNumUrl","_GetNewCodesspUrl","_GetNewCodeDepoAssignmentUrl","_GetNewCodeCustomerClubUrl","_GetNewCodeInvoiceUrl","_GetSaleContractToInvoiceSelectUrl","_SaleNewContractSelectListUrl","_SalePreInvoiceForContractsInsertUrl","_SaleSendProductsInsertUrl","_DepoCodeInsertUrl","_DepoRecieptPermanentBarCodesInsertUrl","_SaleNewContractsInsertUrl","_SaleSubSendProductsInsertUrl","_SaleLoadingCommandsInsertUrl","_SupliesDealerCommissionDetailsInsertUrl","_updatecommissionUrl","_dateUrl","_DepoAssignmentsInsertUrl","_DepoAssignmentDetailsInsertUrl","_DepoAssignmentBarCodesInsertUrl","_DepoAssignment_RequestAssignmentInsertUrl","_DepoRecieptTemporaryNewsInsertUrl","_SalePricesInsertUrl","_SalePricesRejectUrl","_DepoRecieptTemporaryDetailNewsInsertUrl","_DepoRecieptTemporaryBarCodesInsertUrl","_DepoRelreciepAssignmenInsertUrl","_SaleSubLoadingCommandsInsertUrl","_SalePreInvoice_SaleNewContractUrl","_SaleNewContractsGet","_CustomerClubsInsertUrl","_CustomerSalePreInvoicesInsertUrl","_UpdateNationalInsertUrl","_SaleInvoicesInsertUrl","_SaleInvoiceDetailsInsertUrl","_SaleOrdersInsertUrl","_PubCarsInsertUrl","_GetAcceptContract","_GetDepoRecieptTemporaryBarCode","_GetDepoRecieptTemporaryBarCodeCheckSerialurl","_GetProductCodeWithBarcodeurl","_GetProductCodeWithProductCodeurl","_PubDriverInsertUrl","_PubDriverListUrl","_GetCarsPropertiesUrl","_GetPubDriversUrl","_GetRequestAssignmentDetailSelectUrl","_GetSuppliersSaleByWhereResultMethod","_getSuppliersSaleByWhereGroupResultsUrl","_SalePreInvoiceForContractProductInsertUrl","_UpdateAccept","_UpdatePreinvoiceVoid","_UpdateProductSupliesDealerUrl","_VoidAccept","_UpdateAcceptContract","_Updatechangestatus","_VoidAcceptContract","_HesabKindList","_SaleBankAccountList","_SaleLoadingSelcetForScannersList","_AllowInsertSaleRecepitByRSerial","_PubCarKindsList","_PubCarsList","_StoreList","_TbiInstallments","_GetTbl_Installments","_GetRequestRevertFromSale","_GetUpdateNationalCode","_GetDepoViewDescription","_GetDepoReverToDepoes","_GetDepoRevertToDepoDetailBarcode","_PostDepoReverToDepoes","_GetDepoUserSelectsAllSite","_GetDepoUnitUserSelect","_GetSaleSelectAllLoadedCountRegist","_CustomerClubList","_HesabSanads","_GetSalePartitions","_GetDepoCodes","_GetNotAccessSalePartions","_GetAccessSalePartions","_PostAccessSalePartions","_DeleteAccessSalePartions","_GetSaleSelectAllLoadedCountRegistDetailUrl","usersUrl","currentUserUrl","getUserEndpoint","GetCustomerClubUrl","getCustomerClubEndPoint","GetSaleSelectAllLoadedCountRegistDetailUrl","GetSaleSelectAllLoadedCountRegistDetailEndPoint","FromDate","ToDate","kind","showVoid","statuse","GetInvoiceReportSiteUrl","GetInvoiceReportSiteEndPoint","getUserUrl","getUser_Endpoint","SODealerCode","GetSuppliersSaleByWhereResultMethod","GetSuppliersSaleByWhereResultMethodEndPoint","getSuppliersSaleByWhereGroupResultsUrl","getSuppliersSaleByWhereGroupEndPoint","GetRepresentCode","GetRepresentCodeEndpoint","GetcheckDepoRecieptPermanentURL","GetcheckDepoRecieptPermanentEndpoint","DRTDCDYear","DRTDCDCode","DRTDCDDepCode","DRTDCDDCCode","RevertDetailRepeateurl","RevertDetailRepeatEndpoint","SupliesDealerListurl","SupliesDealerListEndpoint","SalePriceKindsurl","SalePriceKindsEndpoint","SDCode","SalePriceKind_SupliesDealerurl","SalePriceKind_SupliesDealerEndpoint","GetRemindWithVouchersUrl","getremindWithVouchersEndpoint","GetStatusAcceptUrl","GetStatusAcceptEndpoint","REQYear","REQCode","REQDealercode","UpdateRequestInvoiceUrl","UpdateRequestInvoiceEndpoint","GetRequestInvoiceByGroupResultsUrl","GetRequestInvoiceByGroupResultEndPoint","getDealerSaleGroupResultsMethodUrl","getDealerSaleGroupResultsMethodEndPoint","sOYear","sOUnitBuy","sOKindBuy","GetSupliesOrderNewsUrl","GetSupliesOrderNewsEndpoint","getGetReportDebtNewResultMethodUrl","getGetReportDebtNewResultMethodEndpoint","getGetReportDebtNewGroupResultMethodUrl","getGetReportDebtNewGroupResultMethodEndpoint","getGetReportDebtNewGroupResultMethodByInvoiceNumberUrl","getGetReportDebtNewGroupResultMethodByInvoiceNumberEndpoint","PKCode","GetSupliesContractReportUrl","GetSupliesContractReportEndpoint","GetSupliesContractReportWithDealerCodeUrl","GetSupliesContractReportEndpointWithDealerCode","GetSupliesContractReportWithDealerCode_ProductCodeUrl","GetSupliesContractReportEndpointWithDealerCode_ProductCode","GetSupliesContractReportMoneySiteUrl","GetSupliesContractReportMoneySiteEndpoint","customerObject","saveCustomerUrl","saveCustomerEndpoint","InsertHesabTafziliUrl","InsertHesabTafziliEndpoint","InsertRevertiUrl","DepoRevertToDepoCustomerDetailsEndPoint","SalePreInvoiceForContractsInsertUrl","saveSalePreInvoiceForContractsEndpoint","SaleSendProductsInsertUrl","saveSaleSendProductsEndpoint","DepoCodeInsertUrl","DepoCodesInsertEndpoint","DepoRecieptPermanentBarCodesInsertUrl","SaveDepoRecieptPermanentBarCodesEndpoint","ContractProductInsertUrl","saveContrctPreInvoiceProduct","SupliesDealerMoneysInsertUrl","SupliesDealerMoneysInsertEndPoint","SupliesOrderRelationRecieptsInsertUrl","SupliesOrderRelationRecieptsInsertEndPoint","DepoRevertToDepoCustomersUrl","DepoRevertToDepoCustomersInsertEndpoint","DepoAssignmentProductInsertUrl","saveDepoAssigmentProduct","RequestInvoicesInsertUrl","RequestInvoiceProductsInsertUrl","RequestInvoiceProductInsertEndPoint","RequestInvoiceProductBarCodesInsertUrl","RequestInvoiceProductBarCodesInsertEndPoint","AdjustmentsInsertUrl","saveAdjustmentsEndpointUrl","DepoAssignmentProductLoadingInsertUrl","saveDepoAssigmentProductLoadingEndpoint","DepoAssignmentProductDetailInsertUrl","saveDepoAssignmentProductDetailEndpoint","ProductSupliesDealersInsertUrl","ProductSupliesDealersInsertEndpoint","CustomerObject","ProductSupliesDealersUpdateUrl","put","ProductSupliesDealersUpdateEndpoint","ProductSupliesDealerImagesInsertUrl","ProductSupliesDealerImagesInsertEndpoint","Procode","ProductSupliesDealerImagesDeleteEndpoint","ProName","ProductSupliesDealerImagesDeleteUrl","ImagesDeleteEndpoint","prodcode","ProductSupliesDealerImagesFolderInsertUrl","observe","ProductSupliesDealerImagesFolderInsertEndpoint","DepoRecieptPermanentsUrl","saveDepoRecieptPermanentsEndpoint","DepoRecieptPermanentDetailsUrl","saveDepoRecieptPermanentDetailsEndpoint","SaleSubReceiptInsertUrl","saveSaleSubReceipt","SaleSubReceiptsInsertUrl","ReceiptObject","DepoRialReceiptInsertUrl","DepoRialReceiptInsertEndpoint","SaleLoadingCommandBarCodesInsertUrl","saveSaleLoadingCommandBarCodesEndpoint","SaleLoadingCommandBarCodesInsertPostArrayUrl","saveSaleLoadingCommandBarCodesPostArrayEndpoint","TemprorySerialsInsertUrl","saveTemprorySerialEndpoint","SaleNewContractsInsertUrl","saveSaleNewContractsEndpoint","SaleSubSendProductsInsertUrl","saveSaleSubSendProductEndpoint","DepoAssignmentProductBarCodesUrl","DepoAssignmentProductBarCodesEndpoint","SaleSubLoadingCommandsInsertUrl","saveSaleSubLoadingCommandsInsertUrlEndpoint","DepoRelreciepAssignmenInsertUrl","DepoRelreciepAssignmenInsertEndPoint","DepoRecieptTemporaryNewsInsertUrl","DepoRecieptTemporaryNewsInsertEndPoint","rIsApprove","SalePricesInsertUrl","SalePricesInsertEndPoint","SalePricesRejectUrl","SalePricesRejectEndPoint","DepoRecieptTemporaryDetailNewsInsertUrl","DepoRecieptTemporaryDetailNewsInsertEndPoint","DepoRecieptTemporaryBarCodesInsertUrl","DepoRecieptTemporaryBarCodesInsertEndPoint","DepoAssignment_RequestAssignmentInsertUrl","DepoAssignment_RequestAssignmentInsertEndPoint","SaleLoadingCommandsInsertUrl","saveSaleLoadinCommandEndpoint","SupliesDealerCommissionDetailsInsertUrl","SupliesDealerCommissionDetailsInsertEndpoint","DepoAssignmentsInsertUrl","DepoAssignmentsInsertUrlEndPoint","DepoAssignmentDetailsInsertUrl","DepoAssignmentDetailsInsertUrlEndPoint","DepoAssignmentBarCodesInsertUrl","DepoAssignmentBarCodesInsertUrlEndPoint","SalePreInvoice_SaleNewContractUrl","saveSalePreInvoice_SaleNewContractEndPoint","SaleOrdersInsertUrl","saveSaleOrdersEndpoint","CustomerClubsInsertUrl","InsertCustomerClubEndpoint","CustomerSalePreInvoicesInsertUrl","InsertCustomerSalePreInvoicesEndpoint","SaleInvoicesInsertUrl","SaleInvoicesInsertEndpoint","SaleInvoiceDetailsInsertUrl","SaleInvoiceDetailsInsertEndpoint","PubCarsInsertUrl","savePubCarsEndpoint","PubDriverInsertUrl","savePubDriversEndpoint","SaleSubOrdersUrl","saveSaleSubOrdersEndpoint","SalePreInvoiceForContractProductInsertUrl","saveSalePreInvoiceForContractProductEndpoint","AllowInsertSaleRecepitByRSerial","allowInsertSaleRecepitByRSerial","CMainCodeByUserId","GetCMainCodeEndpoint","CustomerMobile","CustomerNationalCode","UpdateNationalInsertUrl","UpdateNationalEndpoint","SDCodeByUserId","GetSDCodeEndpoint","GetAssigneSalerUrl","GetAssigneSalerEndpoint","GetSBACodeUrl","GetSBAEndpoint","GetDepoTarazNewResultEndPoint","GetDepoTarazNewResult2","GetDepoTarazNewResult2EndPoint","GetDepoCodeDealerCodeUrl","GetDepoCodeDealerCodeEndPoint","GetProductSupliesDealerUrl","GetProductSupliesDealerEndPoint","GetProductSupliesDealerfromSupImageUrl","GetProductSupliesDealerImagefromSupEndPoint","GetProductSupliesDealerImageUrl","GetProductSupliesDealerImageEndPoint","GetProductSupliesDealerFileImageUrl","GetProductSupliesDealerImageFileEndPoint","GetOffsetContractUrl","GetOffsetContractEndpoint","GetDepoRecieptPermanentsExist","GetDepoRecieptPermanentsEndPoint","GetAimsetContractUrl","GetAimsetContractEndpoint","NCSubCustomerCode","GetAcceptContractEndpoint","sPICode","SetUpdateAccept","SPIPartCode","UpdatePreinvoiceVoid","SetUpdatePreinvoiceVoidEndpoint","DCCode","UpdateProductSupliesDealerUrl","UpdateProductSupliesDealerEndpoint","ncpartCode","UpdateAcceptContract","SetUpdateAcceptContract","NCStatusNumber","NCStatusString","Updatechangestatus","SetUpdateChangeStatusEndpoint","VoidAcceptContract","SetUpdateValidContract","VoidAccept","SetUpdateVoid","NameHeadUrl","GetNameHeadEndpoint","CsubCodeByUserId","GetCSubCodeEndpoint","RSerial","CheckExistReceiptUrl","GetRSerialCheckEndpoint","SIAAssignmentCode","SIAYear","SIADepoCode","CheckExsitInvoiceAssUrl","CheckExsitInvoiceAssEndpoint","CheckSerialRevertUrl","CheckSerialRevertEndpoint","TypeNumber","SaleBankAccountList","GetBankAccount","SaleLoadingSelcetForScannersList","GetSaleLoadingSelectForScanerEndPoint","GetLoadingDetailEndPoint","LCBNum","LCBProductCode","GetLastSerialUrl","GetLastSerialEndPoint","NCCustomerCode","SaleNewContractsGet","GetSaleNewContract","Code","Status_ID","SaleNewContractSelectListUrl","SaleNewContractSelectListEndpoint","GetMoneyLabelCodeProduct","GetCustomerAddressUrl","GetCustomerAddressEndpoint","RequestInvoiEnum","GetRequestInvoiceProductUrl","GetRequestInvoiceProductEndpoint","GetCountProductDealerCodeUrl","GetCountProductDealerCodeEndpoint","GetAllReport","GetAllReportmethod","GetAllReportSiteEndPoint","GetAllReportsettlement","GetAllReportmethodsettlementEndpoint","sPIPYear","sPIPPartCode","sPIPCode","sPIPRevesion","GetAllPreInvoiceSelectListEndPoint","TemprorySerialsGetUrl","TemprorySerialsGetEndPoint","GetAllSerial","GetAllSerialEndpoint","HesabKindList","GetHesabKind","CSubcode","SalesUrl","GetSaleCustomer","IdGroup","DepoCodeListUrl","GetDepoCode","dRTYear","dRTDepCode","dRTCode","dRTTCode","GetDepoRecieptTemporaryNewDetail","GetDepoRecieptTemporaryNewDetailEndpoint","AddressCustomerUrl","GetCustomerByCMainCodeEndpoint","GetDepoRecieptTemporaryDetail","GetDepoRecieptTemporaryDetailEndpoint","OrderNum","OrderYear","IsRemaind","GetSaleSelectSubUrl","GetSaleSelectSubEndPoint","GetSaleSelectSubBarCodeUrl","GetSaleSelectSubBarCodeEndPoint","GetCustomerClubWithUrl","GetCustomerClubWithMobileEndPoint","DeposListUrlOwner","GetNewCodeOrderUrl","GetNewCodeOrder","DRTYear","DRTDepCode","GetNewCodeDepoRecieptTemporaryUrl","GetNewCodeDepoRecieptTemporaryEndPoint","GetGetNewCodeRequestInvoiceUrl","OContractNum","GetOOrderNumUrl","GetOOrderNumEndPoint","GetNewCodesspUrl","GetNewCodessp","DAYear","DADepCode","GetNewCodeDepoAssignmentUrl","GetNewCodeDepoAssignmentEndPoint","GetNewCodeCustomerClubUrl","GetNewCodeCustomerClubUrlEndPoint","GetNewCodeInvoiceUrl","GetNewCodeInvoiceEndPoint","GetSaleContractToInvoiceSelectUrl","GetSaleContractToInvoiceSelectEndPoint","GetNewCodeUrl","GetNewCode","Id","GetSDCodeUrl","GetSDCodeEndPoint","OContractYear","GetOrdernumEndpoint","saveCustomerClubUrl","UpdateCustomerClubEndpoint","saveAddressUrl","UpdateAddressEndpoint","GetDirectory","GetDirectoryEndpoint","Price","GetTaxPriceTotalUrl","GetTaxPriceTotalEndpoint","GetSerialStatue","GetStatusSerialEndpoint","GetCheckExistBarCode","GetStatusNumberUrl","GetSaleNewContract_PrintInvoiceUrl","GetNewCarsCodeUrl","GetNewCarsCodeEndPoint","GetNewDriverCodeUrl","GetNewDriverCodeEndPoint","GetNewCodeLoadingurl","GetNewCodeLoadingEndPoint","GetGetDapCodeProductLoading","GetDapCodeProductEndPoint","DRPBYear","DRPBCode","DRPBDepCode","DRTBProductCode","GetDepoRecieptTemporaryBarCode","GetDepoRecieptTemporaryBarCodeEndPoint","DRTBBarCode","GetDepoRecieptTemporaryBarCodeCheckSerialurl","GetDepoRecieptTemporaryBarCodeCheckSerialEndPoint","GetProductCodeWithBarcodeurl","GetProductCodeWithBarcodeEndPoint","GetProductCodeWithProductCodeurl","GetProductCodeWithProductCodeEndPoint","rowsSelectDepoAssignmentProductDetail_BarCodeObject","NewAssignmentLoading","NewAssignmentLoadingEndPoint","rowsSelectSubOrderObject","NewAssignmentLoadingNextAccept","NewAssignmentLoadingNextAcceptEndPoint","rowsSelectSalePreInvoiceForContractProduct_BarCodeObject","NewPreInvoice","NewPreInvoiceEndPoint","InsertNewPreInvoice","rowsSelectSaleSubOrder_BarCodeObject","NewSaleOrder","NewSaleOrderEndPoint","rowsSelectSaleSubSendProduct_BarCodeObject","NewSaleSendProduct","NewSaleSendProductEndPoint","rowsSelectSaleSubLoadingCommand_BarCodeObject","NewSaleLoadingCommand","NewSaleLoadingCommandEndPoint","NewAssignmentLoadingNextPayment","NewAssignmentLoadingNextPaymentEndPoint","NewAssignmentLoadingNextSendProduct","GetNewAssignmentLoadingNextSendProductEndPoint","CreateContractForPerInvoiceProductsurl","CreateContractForPerInvoiceProductsEndPoint","GetNewCodeassignmentLoading","GetNewCodeassignmentLoadingEndPoint","GetNewCodeDepoRecieptPermanenturl","GetNewCodeDepoRecieptPermanentEndPoint","GetCodeSPICode","GetCodeSPICodeEndPoint","RYear","RPartCode","RContractCode","GetRNum","GetRNumEndPoint","DeleteTemproryUrl","DeleteTemprorySerialEndPoint","GetNewCodeContractUrl","GetNewCodeContract","PYear","GetNewCodesalepriceUrl","GetNewCodesalepriceEndPoint","GetNewCodeReciptUrl","GetNewCodeRevertUrl","GetNewCodeRevertEndPoint","DepoListTarazUrl","GetDeposListTaraz","MethodGetDepoTarazwithcomDetailByDCCodeUrl","MethodGetDepoTarazwithcomDetailByDCCodeEndPoint","DepoTarazwithcomDetail","getDepoTarazwithcomDetail","VirtualWarehouseInventory","DepoTarazwithcomDetailBarcode","getDepoTarazwithcomDetailBarcode","DepoTarazwithcomDetailSearchScan","getDepoTarazwithcomDetailSearchScan","customerClubObject","saveCustomerClubEndpoint","GetNewCustomerClubIDEndPoint","getAddressesEndpoint","addressObject","saveAddressEndpoint","drpRequestDateFrom","drpRequestDateTo","dcMainUnit","deliverCode","DepoTarazNewPivotDepos","getDepoTarazNewPivotDepos","TarazDepoBaseUrl","GetTarazDepoBaseEndPoint","sbacode","GetSaleBankAccountsUrl","GetSaleBankAccountsListEndPoint","GetSubSendProductUrl","GetSendSubProductEndPoint","ReceiptCode","ReceiptPartCode","ReciptKind","SaleReceiptChekHesabSanadUrl","SaleReceiptChekHesabSanadEndPoint","GetAcceptContractCheckUrl","GetAcceptContractCheckEndPoint","ReceiptKind","GetSaleSubReceiptSelectUrl","GetSaleSubReceiptSelectEndPoint","dAPDYear","dAPDCode","dAPDDepoCode","GetAssProductListUrl","GetAssProductListEndPoint","GetDepoRecieptTemporaryListUrl","GetDepoRecieptTemporaryListEndPoint","LCBBarcode","LCPartCode","GetDepoAssignmentWithSerialListUrl","GetDepoAssignmentWithSerialListEndPoint","UnitCode","GetSaleLoadingUrlEndPoint","GetDepoByCommissionMoneyUrl","GetDepoByCommissionMoneyEndPoint","GetDepoByCommissionMoneyAcceptUrl","GetDepoByCommissionMoneyAcceptEndPoint","GetDepoByCommissionMoneyAcceptByDCDealerCodeUrl","GetDepoByCommissionMoneyAcceptByDCDealerCodeEndPoint","GetDepoAssignmentByAcceptUrl","GetDepoAssignmentByAcceptEndPoint","PreInvoiceUrl","GetPreInvoiceList","ContractProductUrl","GetContractList","SPIPYear","SPIPPartCode","SPIPCode","GetPreInvoiceProducttUrl","GetPreInvoiceProduct","SPIYear","getPreInvoicetUrl","getPreInvoice","DeletePreInvoicetUrl","DeletePreInvoice","SPYear","SPPartCode","DeleteSendProductUrl","OCode","DeleteOrderUrl","DeleteSaleLoadingCommandBarCodeUrl","GetPreInvoicetUrl","GetPreInvoice","SPIKindCode","SPIDate","SPICustomerCode","SPISubCustomerCode","SPIFromDeliverytDate","SPIToDeliveryDate","SPIIsVoid","SPIIsAccepted","SPIRegistUserCode","SPIAcceptedUserCode","SPIPrivateConditions","PriceKind","AssigneSalerCode","PreInvoiceInsertUrl","InsertPreInvoice","userByUserNameUrl","getUserByUserNameEndpoint","getUsersEndpoint","editCustomerUrl","getUpdateUserEndpoint","userObject","getNewUserEndpoint","valueOrPatch","opOrUserId","from","patchDocument","op","patch","getPatchUpdateUserEndpoint","currentUserPreferencesUrl","getUserPreferencesEndpoint","configuration","getUpdateUserPreferencesEndpoint","unblockUserUrl","getUnblockUserEndpoint","getDeleteUserEndpoint","DateUrl","deleteCustomerUrl","getDeleteCustomerEndpoint","checkCustomerUrl","getCheckCustomerEndpoint","roleId","rolesUrl","getRoleEndpoint","roleName","roleByRoleNameUrl","getRoleByRoleNameEndpoint","getRolesEndpoint","groupUrl","GetGroupswithcMainCode","getGroupswithcMainCodeEndpoint","GetgroupswithSaleCustomerItemPriceKind","getgroupswithSaleCustomerItemPriceKindEndpoint","CustomerMainCode","GetGroupsNewUrl","GetGroupsNewUrlEndpoint","SaleCustomerUrl","getSaleCustomerEndpoint","GroupNameUrl","getGroupsCustomerEndpoint","PubOstanUrl","getOstanEndpoint","OstanCode","PubCitiesUrl","getCitiEndpoint","RequestInvoiceUrl","getRequestInvoiceEndpoint","PostRequestInvoiceUrl","postRequestInvoiceEndpoin","revertInvoiceNumber","UpdateRevertInvoiceUrl","PubCarKindsList","getPubCarKindsEndPoint","DepoProductUnitsUrl","DepoProductUnitsEndPoint","PubCarsList","getPubCarsEndPoint","PubDriverListUrl","getPubDriverEndPoint","CNumber","GetCarsPropertiesUrl","GetCarsPropertiesEndPoint","CarNum","CarSerial","carCode","GetPubDriversUrl","GetPubDriversEndPoint","RANum","GetRequestAssignmentDetailSelectUrl","GetRequestAssignmentDetailSelectEndPoint","roleObject","getNewRoleEndpoint","getUpdateRoleEndpoint","getDeleteRoleEndpoint","permissionsUrl","getPermissionsEndpoint","StoreList","getStoreList","Installments","installmentsEndpoint","GetTbl_Installments","getInstallmentsEndpoint","GetRequestRevertFromSale","getRequestRevertFromSale","mobileNumber","GetUpdateNationalCode","getUpdateNationalCode","serialNumber","storDepoCode","GetDepoViewDescription","getDepoViewDescription","GetDepoReverToDepoes","getDepoReverToDepoes","drtddcode","drtdddccode","GetDepoRevertToDepoDetailBarcode","getDepoRevertToDepoDetailBarcode","depoRevertoDepo","PostDepoReverToDepoes","postDepoReverToDepoes","GetDepoUserSelectsAllSite","getDepoUserSelectsAllSite","GetDepoUnitUserSelect","getDepoUnitUserSelect","GetSaleSelectAllLoadedCountRegist","getSaleSelectAllLoadedCountRegist","GetCustomerClubList","getCustomerClubList","sandDesc","PostHesabSanads","sendHesabSanads","GetSalePartitions","getSalePartitions","GetDepoCodes","getDepoCodes","saleId","GetNotAccessSalePartions","getNotAccessSalePartions","GetAccessSalePartions","getAccessSalePartions","PostAccessSalePartions","postAccessSalePartions","accessProduct","deleteAccessSalePartions","MainMenuComponent","ReportSaleCustomerInfoComponent","fBuilder","cSubName","customerNationalCode","frozenLeft","SumRemanid","GetReportCustomerSelect","GetReportCustomerSelectSuccess","sumPriceContracted","sumPayment","natioanalCode","returnedinfocomponent","DepoRevertObj","DepoRevertObjDetail","rowSerialCash","isPositivePrice","totalAmount","editorModalReports","NewCode","allsum","assnumber","DepoRevertToDepoCustomersInsert","DepoRevertToDepoCustomersInsertSave","SaveError","DepoRevertToDepoCustomerDetailsInsert","getDeposOwner","GetNewCodeRevert","onDataLoadNewCode","onFocus","LoadingSearch","WaringSearch","CheckDepoAssignmentIsRevertSerial","checkrepeat","ErrorSearch","onDataLoadSuccessfulDepoAssignmentWithSerial","CheckRepeat","obserial","dapDateAssignment","CheckExsitInvoiceAss","checkDiscountInvoice","selectSerial","countBack","discountDocumentId","returnedProductCount","getSalePriceProductInfoForSaleInvoiceBack","CheckReturnInvoice","FailedSearch","newRow","InvoiceUnitPrice","InvoiceCount","InvoiceRealCount","InvoiceBackCount","InvoiceBeforeBackCount","InvoiceBeforeBackDiscountPercent","InvoiceBeforeBackDiscountPrice","InvoiceBackDiscountUnitPercent","InvoiceBackDiscountUnitPrice","InvoiceBackDiscountTotalPrice","InvoiceBackAfterDiscountUnitPrice","InvoiceBackTotalPrice","DiscountAmountId","returnedDiscountPercent","returnedDiscountPrice","discountAmountId","discountValue","getPriceToPercentage","ncpPriceAfterDiscount","ncpPriceTotal","drtdcdyear","drtdcddepdode","drtdcdcode","cname","assdate","SuccessSearch","onIndexingRows","sumPriceWithKind2","isDepoRevert","isExistBarcode","NewDepoRevertToDepoCustomer","DepoRevertSaved","SuccessSearch_Sticky","SelectRow","CheckDiscountForDeleteMethodBarcode","rowSerialObj","EmptyData","onKeydownSerial","saveDepoRevert","DeleteMethodBarcodeALL","InputPricePaymentFormInvoiceSaleModel","AddressComponent","isNewDesk","isNewPOS","submitted","sendAddress","viewType","actionsTemplateCashDesk","addressForEdit","aId","deleteCashDeskHelper","saveSuccessCashDeskHelper","checkValidAddress","desk","VisitsListInfoComponent","visitDate","phoneNumber1","phoneNumber2","listControl","SalePreInvoiceForContracts","IdSaleCustomerGroup","UploaderService","getEventMessage","envelope","processProgress","source","dest","objectURL","Sent","Response","email","jobTitle","activityyear","CashDeskDetailComponent","checkoutCashDeskDetail","cashDeskNumber","lastAccept","currentRoute","DocNumber","sumCashierOld","rowsCachUsersTemp","rowsCachUsers","Naghad","Pos","Check","Havaleh","hesab","Status","editorModalSavePrice","editorModalCheckPrice","editorModalContractsApproved","editorModalNormalContracts","editorModalCumulativeContracts","editorModalApprovedDocuments","editorModalInvalidatedDocuments","cleanData","cashDate2","allReportCashierByCheckoutCashDeskDetail","checkoutCashDeskId","tempRecipt","typeDoc","rsPrice1","rsPrice2","rsPrice3","rsPrice4","rsPrice5","rsPrice6","temp","rsPrice16","rsPrice17","tempNotAccept","getAllReportContractsSaleReciptCash","cashUsers","allremain","editorModalReportCashier","getAllReportReciptsSaleReciptCash","reportReciptsSaleReciptCash","editorModalReportReciptCashier","reportDate","back","showReportCashier","showReportReciptCashier","goBackPage","closeReportReciptCashier","SaleReceiptBaratelectronicComponent","baratFile","dueDate","AboutClientComponent","AddReturnToDepoComponent","depoViewDescription","prodcutViewDescription","depoRevertoDepoDetail","depoRevertoDepoDetailBarcode","supplierCode","expanded","repeatSerisl","warrantyCheckbox","saveRevertofDepo","saveAndLoadNewData","allStoreListByUser","revertToDepoForm","storeCode","warrantyStatus","storeLists","findDepo","allowStoreCode","res1","returnProductDescription","productSerial","depoViewBarcodes","newReturnProductDescription","RevertProduct","pop","depoDescriptionTable","depoRevertToDepoDetail","depoRevertToDepoDetailBarcode","editorModalWarrantyInfo","unchecked","element","onDetailToggle","editorModalHide","SaleClosingManagementService","urlService","baseAddress","updateCheckModel","UsersManagementComponent","allRoles","userNameTemplate","rolesTemplate","canManageUsers","userEditor","addNewUserToList","sourceUser","u","canViewRoles","getUsersAndRoles","getUsers","users","editingUserName","newUser","editUser","deleteUserHelper","deleteUser","VMSalePreInvoiceForContractProduct_BarCode","RecordPersonalInformationInfoComponent","formbuilder","customerGradeService","uploadFiles","modalEnumValue","showUploadPage","checkIamge","customerImagesObj","tooltipText","gradeInfos","getCustomerImage","changeGrade","checkInformationForm","birthCertificate","nationalCard","certificateOfEmployment","eductionOfSalaries","validationReport","selectedGradeInfo","insertImage","uploadCustomerImages","customerInfoData","responseUploadCustomerImages","newSaleCustomerImage","SaleCustomerImage","findCustomerImages","saleCustomerImageTypeId","saleCustomerImageStatusId","isDeleted","addOrUploadImageCustomerInfo","allowInsert","customerDocuments","updateCustomerImage","CustomerId","selectedGrade","GradeId","InsertUser","addCustomerGrade","findImage","domainName","imageSrc","imageAddress","notAcceptDescription","SetGardeCustomer","imageType","imageStatus","customerData","classname","submitCheckInformationForm","showTooltip","hideTooltip","showImage","onSelectUploadFile","cnacelUpload","closeModal","LoginComponent","userLogin","captchaConfig","stroke","solid","color","captch_input","resultCode","checkCaptchaValue","createCaptcha","getAllowSale","loginForm","username","password","recaptcha","createMatchCaptchaValidator","rememberme","rememberMe","getShouldRedirect","redirectLoginUser","loginStatusSubscription","CMain","MethodSetValueStore","get_User","MethodSetValueSuppliers","changeMessage","saleCustomer","login","resault","offerAlternateHost","errorMessage","getHttpResponseMessage","mapLoginErrorMessage","field","markAsTouched","onlySelf","getuserLogined","checkIsLocalHost","hasUpperCase","hasValid","passwordValid","captchaMatch","char","substring","captcahCanvas","ctx","getContext","fillStyle","fillRect","beginPath","letterSpacing","textBaseline","fillText","strokeStyle","moveTo","lineTo","submitLoginForm","reloadCaptcha","printdepoComponent","allPubCar","payam","LoadDriversCars","GetNewDriverCode","NumberLoading","PubcarsObj","Dccode","newPubDrivers","allkind","allPUbkind","CreditInstitutiomService","mainCode","subCode","PreInvoiceContract","SPIProductCode","Amount","SPIRevesion","CustomPaginator","customPaginatorIntl","itemsPerPageLabel","SalesPreInvoiceForContractCheckInfoComponent","documentDate","checkAmount","uploadCheckFiles","checkDetailListTable","checkImageServer","checkImageStatus","imageName","countOfCheck","addOrUpdateStatus","updateCheck","backgroundChange","sayadiNumber","countValidInsert","isUpdate","findOld","findItem","SayadiNumber","checkNumber","checkSayadiNumber","checkCheckNumber","bankName","findDiffrentStatusId","insertSalePreInvoiceCheckDetail","checkImage","addCheckInfo","sendSalePerInvoiceForContractCheckInfo","SalecustomerEndpoint","_SaleAllCustomerUrl","SaleAllCustomerUrl","invInfoComponent","isMoveGroup","MoveGroupDepo","EnabaleChange","totallAllRows","totallTaxRows","totallSumRows","totallComissionRows","showMyPropColumn","isshownew","isNewCus","SalePreInvoiceProduct","allsalepreinvoice","rowsSelectInv","saleGroup","rowsDepoCode","rowsDepoCodeCash","offsetWidth","editTemplate","dateObjectfrom","yourDate","dateObjectto","goodsEditor","GetAssigneSaler","methodAssignSaler","ErrorFiled","CAssignSaler","editorModalgoods","Depos","indexpreinvoice","newPreInvoice","savePreInvoiceSuccessHelpernotmessage","lenghNUmber","depBarCode","priceStore","priceDiscount","newPreInvoiceProduct","savePreInvoiceSuccessHelpernotmessageProduct","savePreInvoiceSuccessHelper","savePreInvoiceSuccessHelperVoid","tocam","tocam2","tocam3","cam","totalAll","totalta","totalsu","totalco","LoadDepoCode","MethodBackCmainCSub","MethodReload","ObjNumber","objNumber","CustomerEditor","MethodloadNewCodeContract","editorModalcheck","editorModalghest","nckindCode","ncfromCreditDate","nctoCreditDate","ncsaleFactor","ncbuyFactor","ncregistUserCode","ncPrivateConditions","ncStatusNumber","ncStatusString","ncStatusAccept","newSaleNewContracts","getPreInvoiceProduct","ObjSale","lenght","nCPPerPay","nCPDelayDeliveryPay","sourcePreInvoiceInfo","newContractProduct","saveContractProductSuccessHelper","ClientShopFooterComponent","scrollFunction","documentElement","topFunction","reportComponent","CashDeskDocumentType","invInstallmentcomponent","AppModule","useClass","deps","useValue","forRoot","loader","SalePreInvoiceCheckDetailModalComponent","saleBankAccount","changeStatus","statusCheck","checkDetail","changeStatusCheck","Role","goodsinfodealercode","getDeposListTaraz","CustomerSalePreInvoice","ClientShoppingWithComponent","reportsaleinfoComponent","allSuplies","GetInvoiceReportSite","ReportAllObj","unitPrice","discount","totalAfterDiscount","exportExcel","NationalCodeService","checkCode","Arr","Sum","Last","divideRemaining","PubCar","CserilaNum","ClastDriverCode","CcarKindCode","DownloadRegistrationComponent","CustomerImagesNameEnum","LcFormComponent","DepoAssignmentProductBarCode","VMSaleSubLoadingCommands_BarCode","SendOrderInfoComponent","gender","company","ThemeManager","themes","href","isDefault","isDark","removeStyle","setStyle","getLinkElementForKey","existingLinkElement","getExistingLinkElementByKey","head","createLinkElementWithKey","querySelector","getClassNameForKey","linkEl","classList","driverInfoComponent","onSubmit","VMSalePriceProductInfoForSalePerInvoice","rowNumber","priceChangeKindId","priceChangeKindName","priceChangeLastDate","supplierPrice","commissionProfitPercentage","salePrice","pyear","comdArsam","comdStore","combaseArsam","combaseStore","comActive","discountDocumentDate","retailStoreId","discountKindId","discountApplyId","fromValue","toValue","comArsamPriceFromSaleUnitBeforDiscount","comStorePriceFromSaleUnitBeforDiscount","arsamBaseCommissionAfterDiscount","CustomerClub","customerCMainCode","customerCSubCode","DepoAssignmentProductDetail","DAPDDesc","DAPDForPerInvoice","WarehouseStoreInfoBarcodesComponent","clipboard","WareHouseResultObj","GetBarcodesProductCodeSelect","GetBarcodesProductCodeSelectSuccess","copy","AccountService","SoDealercode","rowsSelectDepoAssignmentProductDetailBarCode","rowsSelectSubOrderOrderProduct","rowsSelectSalePreInvoiceForContractProductBarCode","InsertNewPreInvoiceEndPoint","CsubCode","rowsSelectSaleSubOrderBarCode","rowsSelectSaleSubSendProductBarCode","rowsSelectSaleSubLoadingCommandBarCode","proCode","ObjDepoImageAssignment","ObjDepoImageFolderAssignment","procode","GetDeposListTarazarray","foundUser","getUpdateCustomerEndpoint","objhesab","objrevert","ObjRialReceipt","RequestInvoiceObj","RequestInvoicesInsertEndPoint","RequestInvoiceProductBarCodeObj","Adjustmentsobj","ObjDepoAssignment","ObjDepoRecieptPermanent","DepoCodeArsamObj","DepoRecieptPermanentBarCodeObj","ContractProductobj","PreContract","saveSaleSubReceipts","objBarCode","SaleNewContracts","PubCarobj","SupliesDealerMoneyObj","SupliesDealerobj","DepoAssignmentObj","DepoRecieptTemporaryNewObj","SalePriceObj","CustomerSalePreInvoiceObj","SaleInvoiceDetailObj","DepoRecieptTemporaryDetailObj","DepoRecieptTemporaryBarCodeObj","DepoRelreciepAssignmenObj","DepoAssignment_RequestAssignmentObj","SaleReceiptobj","getServerDate","userOrUserId","permissionValue","p","onRolesChanged","foundRole","roleOrRoleId","sanadDesc","userPermissions","JwtHelper","output","b64DecodeUnicode","prototype","call","atob","charCodeAt","token","parts","decoded","urlBase64Decode","decodeToken","setUTCSeconds","exp","offsetSeconds","getTokenExpirationDate","BarcodeListModel","SalesPreInvoiceForContractCheckComponent","EXCEL_TYPE","EXCEL_EXTENSION","ExcelService","json","excelFileName","myworksheet","json_to_sheet","myworkbook","Sheets","SheetNames","excelBuffer","bookType","saveAsExcelFile","buffer","Blob","SpinnerLoadingComponent","DownloadRegistrationInfoComponent","productRows","productRowsCash","storesControl","unitUserSelect","saleSelectAllLoadedCountRegist","ArrayBarcode","ObjBarcode","SerialCode","isDanger","textDangerMessage","lcYear","isShowError","GetStatusSerial","messageError","lscdcCode","lscLoadingOrderCount","lscCountLoading","Temp","FlagCheck","newSaleLoadingCommandBarCodesPostArray","SuccessInsertBarcode","pUserCode","puCode","saveSendProduct","VisitsListComponent","ClientHomeComponent","VMDepoAssignmentProductDetail_BarCode","InventoryInfoComponent","dynamicReport","cols","col","itemArray","VMSaleSubOrders_BarCode","DepoRecieptPermanentDetail","DRPDYear","DRPDCode","DRPDDepCode","DRPDDCCode","DRPDUnitProduct","DRPDCount","DRPDDesc","DRPDBuyReqCode","DRPDYearRequest","DRPDPrice","DRPDPricefinal","DRPDDescPrice","DRPDPricePersonel","DRPDPriceEnergy","DRPDPriceEstehlak","DRPDPriceSale","DRPDPriceMali","PreviewsPrintInfoComponent","Designer","StiDesignerOptions","designer","StiDesigner","Base","StiLicense","toolbar","showFileMenu","showPageButton","showInsertButton","showLayoutButton","showSetupToolboxButton","dictionary","showDictionary","appearance","showReportTree","showPropertiesGrid","showTooltips","report","Report","StiReport","loadFile","dsDemo","System","Data","DataSet","readJsonFile","regData","renderHtml","AuthStorage","dbKeyPrefix","RememberMe","Warning","VMSaleNewContractProduct_PrintInvoice","NCPProductCode","DCDesc","NCPAmount","TotalPrice","TotalPriceWithDiscount","VMSaleNewContractProduct_PrintInvoice_String","IInstallments","prePayment","remainingPayment","numberInstallments","finalAmount","creditInstitutionPlansForCustomersId","SaleInvoiceDetail","BackButtonDirective","ColorSettingsService","ConfirmMessageComponent","confirmResult","confirmMessage","PricePaymentFormComponent","ReportsMarketerComponent","LastElementDirective","lastFunction","isLastElement","VMSelectSaleSubLoadingCommand_BarCode","carInfoComponent","objpubcar","allPubCarKind","CCarKindCodeobj","firstNum","secoundNum","lastNum","alphabet","pelaqueNumber","alphabetArray","loadPubKindCar","GetNewCarsCode","getPubCarKinds","PubCarKindObj","newPubCars","objcar","CarKind","AuthService","_discoveryDocUrl","previousIsLoggedInCheck","_loginStatus","initializeLoginStatus","getInitEvent","reevaluateLoginStatus","preserveParams","navigationExtras","queryParamsHandling","preserveFragment","redirect","urlParamsAndFragment","urlAndParams","queryParams","getQueryParamsFromString","logoutRedirectUrl","redirectForLogin","discoveryDocumentLoaded","refreshToken","processLoginResponse","getAccessToken","configureOauthService","loadDiscoveryDocument","discoveryDocUrl","fetchTokenUsingPasswordFlow","issuer","clientId","scope","skipSubjectCheck","dummyClientSecret","accessToken","jwtHelper","decodedAccessToken","permission","fullname","jobtitle","phone_number","isEnabled","saveUserDetails","logOut","getAccessTokenExpiration","accessTokenExpiryDate","getRefreshToken","CustomerClubService","SaleReceiptCheckComponent","rsBankType","SaleSubReceiptService","baseService","saleSubReceiptUrl","saleReceiptUrl","saleSubReceiptApiUrl","yearActive","saleReceiptApiUrl","SaleNewContract","ncacceptedUserCode","saleNewContract","chktasviyeh","sumAssPrice","SumAssignment","SumContract","StatusName","ncpdate","SaleClosingManagmentComponent","ForgotPasswordComponent","fbuilder","emailForm","onSubmitEmail","SDCodeClass","SaleSubLoadingCommands","DepoRevertToDepoCustomerDetail","DRTDCDUnitProduct","DRTDCDCount","DRTDCDDesc","DRTDCDPrice","DRTDCDPricefinal","DRTDCDDescPrice","DRTDCDPercent","DRTDCDPriceEnd","WebsiteGuideInfoComponent","UserInfoComponent","isNewUser","isChangePassword","loadCurrentUserData","canViewAllRoles","getUserAndRoles","getUser","userEdit","updateUser","deletePasswordFromUser","refreshLoggedInUser","unblockUser","isLockedOut","setRoles","ReferenceReportsComponent","driverComponent","VMSelectSubOrder","CheckInformationComponent","PersonalInformationComponent","VisitorDetailComponent","initialMarkers","markers","visitIcon","initializeMapOptions","navigator","geolocation","getCurrentPosition","lat","coords","latitude","lng","longitude","mapIcon","getDefaultIcon","marker","generateMarker","addTo","setIcon","bindPopup","panTo","$event","getVisitorsIcon","latlng","on","markerClicked","markerDragEnd","getLatLng","zoom","layers","maxZoom","attribution","iconSize","iconAnchor","iconUrl","shadowUrl","initMarkers","mapClicked","NotificationEndpoint","demoNotifications","notification","createResponse","unreadNotifications","ClientFooterComponent","IInstallmentsDetaile","installmentsId","amountInstallments","ClientComponent","yScrollStack","ev","lastPoppedUrl","scrollY","scrollTo","ClientShopHeaderComponent","closeModalDialog","SaleReceiptService","RNum","newPrice","saleReceiptObj","serialSaleReceipt","Adjustments","DecimalNumberDirective","NtsEndPointService","auth","ntsWithTrackingCodeUrl","ntsWithOutTrackingCodeUrl","ntsWithOutTrackingCodeBussinessManUrl","ntsLocationtransfer","ntsStoreAll","registerDocumentRequestMaster","sendRegisterDocumentRequestMaster","getStatusRegisterDocumentRequestUrl","datetimefrom","datetimeto","NtsWithTrackingCodeUrl","GetNtsTrackingEndPoint","NtsStoreAll","GetNtsStoreAllEndPoint","datefrom","dateto","NtsWithOutTrackingCodeUrl","GetNtswWithOutTrackingCode","dateForm","NtsWithOutTrackingCodeBussinessMan","getNtsWithOutTrackingCodeBussinessMan","NtsLocationTransfer","getNtsLocationTransfer","RegisterDocumentRequestMaster","getRegisterDocumentRequestMaster","SendRegisterDocumentRequestMaster","sendRegisterDocumentRequest","GetStatusRegisterDocumentRequestUrl","getStatusRegisterDocumentRequest","RequestInvoiceProduct","reqpSocode","reqpName","SaleCustomerImageModel","BaratElectronicFormComponent","ClientProductListComponent","fadeInOut","opacity","flyInOut","duration","ReportsMarketerInfoComponent","CustomerGradeModel","salescustomercomponent","saleCustomerService","colorService","customersStore","customerImagesList","saleCustomerImageInfo","onLoadOstan","cOstan","cCity","customerStoreList","getAllSaleCustomer","addNewCustomerToList","showStatusCustomer","cStatusId","cStatusType","val2","countAccept","countDelete","newData","editingFullName","CheckAllowEditCustomer","editcustomer","provinces","checkCustomer","deleteCustomer","saleCustomerImage","assignClassStatus","newCus","ClientStoreFinderComponent","filteredAddress","UserLogin","WarehouseStoreInfoKardexComponent","Allin","Allout","GetKardexProductSelect","CashDeskComponent","colorSettings","cMainCodeMethod","allReportCashDesk","firstDayOfMonth","getAllReportCashierByDate","reportCashierSettlmentData","diffrentContractPrice","WarehouseStoreInfoComponent","rowsDepoProducts","rowsDepoProductsCash","columnsDepoProducts","LoadData","GetDepoTarazNew","LoadDepoProducts","MethodGetDepoProducts","wareHouseStore","onCheckboxChange","printPage","VMSaleNewContract","NCAddress","SumTotal","SumTotalWithDiscount","PaymentType","ncRegistUserCode","ncCustomerCode","ncSubCustomerCode","ncAddress","LowerCaseUrlSerializer","possibleSeparators","indexOfSeparator","processedUrl","urlParts","routes","component","children","redirectTo","pathMatch","AppRoutingModule","scrollPositionRestoration","relativeLinkResolution","preloadingStrategy","BootstrapTabDirective","zone","showBSTab","hideBSTab","tabShownSubscription","runInZone","relatedTarget","tabHiddenSubscription","delegate","run","selector","residinfocomponent","renderer","rowsDepoRecieptTemporaryNewDetail","rowsDepoRecieptTemporaryNewDetailCash","ObjDepoRecieptPermanentDetail","DepoRecieptPermanentBarCodeobj","SupliesOrderRelationRecieptObj","displayedColumnsDetail","showRecieptTemporaryListDetail","newBarcodeList","columnsTemproryResidDetail","myInput","selectRootElement","listen","GetDepoRecieptTemporaryList","recieptTemporaryList","newRecieptTemporaryList","drtCode","drtDealerCode","drtDepCode","drtKindDealerCode","depoRecieptTemporaryNewDetail","depoRecieptTemporaryDetail","newCodeDepoRecieptPermanent","recieptTemporaryListDetail","carcode","drtCarCode","depTitle","drtRecieptDate","drtRecieptTime","drtRecieptDateTime","newCodeRecieptPermanent","GetNewCodeDepoRecieptPermanent","barcodes","newBarcodeObject","GetDepoRecieptTemporaryBarCodeCheckSerial","loadDepoRecieptTemporaryDetailProductCode","drtbCodeget","drtbProductCode","drtddcCode","drpdCount","isExsit","drtdCount","GetDepoRecieptPermanents","loadeExist","loadeNewCodeLoading","drpdesc","newDepoRecieptPermanents","savePreInvoiceSubProduct","drtdUnitProduct","drtbBarCode","userobj","DrpbbarCode","Drpbyear","Drpbcode","DrpbdepCode","DRPBProductCode","SaveDepoRecieptPermanentBarCodes","SaveDepoRecieptPermanentBarCodessuccess","newDepoRecieptPermanentDetails","saveDepoRecieptPermanentDetail","CashDeskService","checkoutCashDesksUrl","checkoutCashDeskApiUrl","DepoRecieptPermanentBarCode","NewPasswordComponent","passwordForm","onSubmitPassword","PreInvoice","SaleReceipt","SendOrderComponent","NtsService","ShowUploadPage","CustomersComponent","IReturnProductDescription","IReturnProductBarcode","customerControl","InvInfoCComponent","creditInstitutiomService","EnabaleChangeTasvieh","totallDiscountRows","rowsSalePreInvoiceForContractProduct_BarCode","showInstallmentFields","ddlGroup","allgroup_PK_3","acceptInstallment","acceptInstallmentText","installmentNum","groupCode","selectcreditInstitutionPlans","selectcreditInstitutionPlansId","EnabaleSerialNumber","displayFn","chosedItem","preInvoiceSale","successfulSave","AllpaySale","waiting","Barcode","percentInstallmentInterest","IsMoveSelecteds","IsSearchBarcode","prePayment2","precentageInstallments","paymentInstallments","installmentInterest2","paymentPerInstallment","finalPayment2","installments2","installmentDate","filteredCustomers","valueChanges","CheckChangeForm","installmentForm","prepayment","installmentNumber","finalPayment","enable","factorrasmi","existcustomer","scode","GetProductCodeWithBarcode","vb","loadDepo","depBarCode_Serial","IsBarcode","qty","TisExist","scanserial","depo","isAdd","isremain","onCheckingRemanidRows","rowindex","rowB","indexB","update_Value","GetSalePriceProduct","disable","indexrow","isDisCount","isDisCountPercen","percentDiscount","getSalePriceProductInfoForSalePerInvoice","calculatNewCommission_Discount","addDepo","getPercentageToPrice","update_Value_ALL","isPayment","selectSalePreInvoiceForContractProduct_BarCode","resultAction","isexist","index2","SaveFinish","InvNo","ShowPayInvNo","CustomerClubsInsert","saveCustomerClub","InsertCustomerSalePreInvoices","newcount","pprice","percentageoCom","overhead","bar","totaldic","pcode","index1","ex","option","getCreditInstitutionPlansForCustomers","showdetailsEditor","creditInstitutionPlans","ShowPay","saleCustomerItem","dcIntegratedSerial","UpdateNational","UpdateFinish","UpdateError","GetNewCodeCustomerClub","updateValue","DeleteMethod","totallTax","changeTypeStore","NewNumber","fromdate","todate","editorModalshowdetails","installmentsService","selectedCredit","calculateInstallmentFees","numberCheck","installmentsNumber","wageArsam","wageBank","patchValue","aroundPayment","aroundPaymentCheck","paymentPerInstallment2","sumCheckPriceCustomer","setMonth","sumCheckPriceAll","checkPrice","finalpayment","unPurePayment","defaultPrePayment","changeTypeTasviyeh","addProductSerial","InputGoods","UserPreferencesComponent","themeSelectorToggle","languageChangedSubscription","languageSelector","homePageSelector","getUserPreferences","setAsDefaultHelper","updateUserPreferences","resetDefaultHelper","reloadFromServer","resetDefault","setAsDefault","OrdersComponent","SidebarComponent","RoleEditorComponent","isNewRole","roleEdit","selectedValues","getSelectedPermissions","updateRole","firstMemberValue","getBaseUrl","getElementsByTagName","providers","useFactory","bootstrapModule","GroupByPipe","groupedObj","prev","cur","webpackEmptyAsyncContext","Promise","then","CustomerClubListInfoComponent","customerClubList","searchCustomerClubList","reportCustomerSale","sumDebt","sumCredit","remindMoney","getAllCustomerClub","closeEditorModalReportCustomer"],"mappings":"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;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAGA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAGA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACA;;AACF;;AACF;;AAEA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CE;;AACE;;AAEF;;AACA;;AACE;;AAAI;;AAAyE;;AAC/E;;AACF;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACE;;AACE;;AACF;;AACA;;AACE;;AAAI;;AAA8D;;AACpE;;AACF;;AACF;;AACF;;AACF;;AAGF;;AACF;;AAGA;;AACE;;AACE;;AACE;;AAAI;;AAAwC;;AAC5C;;AACF;;AACA;;AACE;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACF;;AACF;;AACF;;AACA;;AAEE;;AACE;;AACE;;AAUF;;AACF;;AACF;;AAEF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACF;;AACF;;AACF;;AAEA;;AAEE;;AACE;;AACE;;AACF;;AACA;;AACE;;AAAK;;AAA+B;;AACpC;;AAAK;;AAAyB;;AAC9B;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AAAK;;AAA6B;;AAClC;;AAAK;;AAAqB;;AAC1B;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AAEF;;AAEA;;AACE;;AACF;;AACA;;AACE;;AACE;;AACF;;AAEA;;AACE;;AACF;;AAEF;;AAEF;;AACF;;AAEF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACF;;AACF;;AACF;;AACA;;AAEE;;AACE;;AACE;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AAEF;;AACF;;AACF;;AACF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACF;;AACF;;AACF;;AACA;;AAEE;;AACE;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AAAa;;AAAe;;AAC5B;;AAAG;;AAAiE;;AACpE;;AACE;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACF;;AAEA;;AACE;;AACA;;AACE;;AAAgB;;AAAI;;AACpB;;AAAgB;;AAAgB;;AAChC;;AAAgB;;AAAiB;;AACjC;;AAAgB;;AAAsB;;AACxC;;AACA;;AACA;;AACA;;AACE;;AAAgB;;AAAC;;AACjB;;AAAI;;AAAa;;AACjB;;AAAI;;AAAa;;AACjB;;AAAI;;AAAa;;AACnB;;AACA;;AACE;;AAAgB;;AAAC;;AACjB;;AAAI;;AAAqB;;AACzB;;AAAI;;AAAkB;;AACtB;;AAAI;;AAAc;;AACpB;;AACA;;AACE;;AAAgB;;AAAC;;AACjB;;AAAI;;AAAmB;;AACvB;;AAAI;;AAAkB;;AACtB;;AAAI;;AAAc;;AACpB;;AACA;;AACF;;AAEA;;AACE;;AACF;;AACA;;AACE;;AAGF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AAEF;;AACF;;AACF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACF;;AACF;;AACF;;AACA;;AAEE;;AACE;;AACE;;AACF;;AACA;;AACE;;AAAI;;AAA4C;;AAChD;;AAAI;;AAA8D;;AAClE;;AAAI;;AAAyE;;AAC7E;;AAAI;;AAAmD;;AACvD;;AAAI;;AAAkB;;AACtB;;AAAI;;AAAa;;AACjB;;AAAI;;AAA6D;;AACjE;;AAAI;;AAA2D;;AAC/D;;AAAI;;AAAc;;AACpB;;AACA;;AACE;;AACF;;AACA;;AACE;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACF;;AAEF;;AACF;;AAGF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACF;;AACF;;AACF;;AACA;;AAEE;;AAEE;;AACE;;AAAK;;AAA0C;;AAC/C;;AAAK;;AAAU;;AACf;;AAAK;;AAAmB;;AACxB;;AAAK;;AAAiC;;AACtC;;AAAK;;AAAqB;;AAC1B;;AAAK;;AAAgC;;AACrC;;AAAK;;AAA6E;;AAClF;;AACE;;AAEF;;AAEF;;AAGF;;AACF;;AAGF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACF;;AACF;;AACF;;AACA;;AAEE;;AACE;;AACE;;AAAK;;AAAgD;;AACrD;;AAAI;;AAAoD;;AACxD;;AAAI;;AAAoB;;AACxB;;AAAI;;AAA+B;;AACnC;;AAAI;;AAAgB;;AACpB;;AAAI;;AAAgB;;AACpB;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACA;;AACE;;AACF;;AACF;;AACF;;AACF;;AACF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AACA;;AACA;;AACF;;AACF;;AACF;;AACA;;AAEE;;AACE;;AACE;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACA;;AACE;;AACF;;AACA;;AACE;;AAKF;;AACA;;AACE;;AAEF;;AACF;;AACF;;AACF;;AAGF;;AAGF;;AACF;;AACF;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChjBE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAI;;AAAY;;AAClB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAAkC;;AAAgB;;AACpD;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAGF;;AACF;;AACA;;AACE;;AACE;;AAA2C;;AAAqB;;AAClE;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA2C;;AAAiB;;AAC9D;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA2C;;AAAmB;;AAChE;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;;;AA7D0B;;AAAA;;AAOP;;AAAA;;AAQO;;AAAA;;AAQE;;AAAA;;AAQF;;AAAA;;AAOE;;AAAA;;AAQF;;AAAA;;AAOE;;AAAA;;;;;;;;;;;;;;;;;;AAS5B;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAI;;AAAkB;;AACxB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAAmC;;AAAwB;;AAC7D;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA2C;;AAA0B;;AACvE;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA2C;;AAAiC;;AAC9E;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;;;AA7C0B;;AAAA;;AAOP;;AAAA;;AAQO;;AAAA;;AAOE;;AAAA;;AAQF;;AAAA;;AAOE;;AAAA;;;;;;;;;;;;;;;;;;;;;;AAS5B;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAI;;AAAQ;;AACd;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAAkC;;AAAgC;;AACpE;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA4C;;AAAe;;AAC7D;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA4C;;AAAwB;;AACtE;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA4C;;AAAoB;;AAClE;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA4C;;AAA8B;;AAC5E;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AAA4C;;AAA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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;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;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;;;;sCAEYx5H,K,EAAe;AAEzB,iBAAK2S,OAAL,CAAaouB,MAAb,CAAoB,CAApB,EAAuB,CAAvB;AACA,iBAAKpuB,OAAL,CAAaoB,IAAb,CAAkB/T,KAAK,CAACR,QAAN,EAAlB;AAED;;;iCAEMQ,K,EAAe;AAEpB,iBAAKq8B,QAAL,GAAgBr8B,KAAK,CAACR,QAAN,EAAhB;AA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A,O;;;cAAvBA,uB;AAAuB,wC;AAAA;AAAA;;;;;;;;;;;;;;;;;;ACZpC;;AAEG;;AAAI;;AAAK;;AAGZ;;;;;;;;;;;;;;;;;;;;ACLA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;A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","file":"main-es5.js","sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoadingService {\r\n public isLoading: BehaviorSubject = new BehaviorSubject(false);\r\n \r\n constructor() { }\r\n \r\n}\r\n","export class DepoRevertToDepoCustomer {\n constructor(DRTDCYear?: number\n , DRTDCCode?: number\n , DRTDCDepCode?: string\n , DRTDCRevertDate?: string\n , DRTDCSysDate?: string\n , DRTDCUserCode?: number\n , DRTDCCostomerCode?: number\n , DRTDCSubCostomerCode?: number\n , DRTDCPriceall?: number\n , DRTDCOther?: number\n , DRTDCRemain?: number\n , DRTDCRevertDatePrice?: string\n , DRTDPartCode?: number\n , DRTDFromAssignment?: number\n , DRTDFromAssignmentYear?: number\n ) {\n this.DRTDCYear = DRTDCYear;\n this.DRTDCCode = DRTDCCode;\n this.DRTDCDepCode = DRTDCDepCode;\n this.DRTDCRevertDate = DRTDCRevertDate;\n this.DRTDCSysDate = DRTDCSysDate;\n this.DRTDCUserCode = DRTDCUserCode;\n this.DRTDCCostomerCode = DRTDCCostomerCode;\n this.DRTDCSubCostomerCode = DRTDCSubCostomerCode;\n this.DRTDCPriceall = DRTDCPriceall;\n this.DRTDCOther = DRTDCOther;\n this.DRTDCRemain = DRTDCRemain;\n this.DRTDCRevertDatePrice = DRTDCRevertDatePrice;\n this.DRTDPartCode = DRTDPartCode;\n this.DRTDFromAssignment = DRTDFromAssignment;\n this.DRTDFromAssignmentYear = DRTDFromAssignmentYear;\n }\n public DRTDCYear: number;\n public DRTDCCode: number;\n public DRTDCDepCode: string;\n public DRTDCRevertDate: string;\n public DRTDCSysDate: string;\n public DRTDCUserCode: number;\n public DRTDCCostomerCode: number;\n public DRTDCSubCostomerCode: number;\n public DRTDCPriceall: number;\n public DRTDCOther: number;\n public DRTDCRemain: number;\n public DRTDCRevertDatePrice: string;\n public DRTDPartCode: number;\n public DRTDFromAssignment: number;\n public DRTDFromAssignmentYear: number;\n}\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'about',\n templateUrl: './about.component.html',\n styleUrls: ['./about.component.scss'],\n animations: [fadeInOut]\n})\nexport class AboutComponent {\n}\n","
\n
\n

\n \n {{'pageHeader.About' | translate}}\n

\n
\n
\n
\n
\n
\n
\n

آرسام تجارت نیکو

\n
\n

\n شرکت آرسام تجارت نیکو توزیع کننده محصولات شرکت لورچ است.\n

\n

\n شرکت تولیدی صنعتی لورچ در سال 1356 به عنوان یکی از تولیدکنندگان لوازم خانگی، با هدف اشتغال زایی و کارآفرینی و با سرمایه گذاری بخش خصوصی فعالیت خود را در شهر زیبا و تاریخی اصفهان آغاز نمود. این کارخانه با مساحتی بالغ بر 44939 متر مربع در منطقه صنعتی جی در شرق اصفهان احداث گردید. شرکت لورچ همواره با بکارگیری نیروهای متخصص و کارآزموده تلاش نموده محصولاتی با کیفیت و در خور شان مصرف کننده تولید نماید.\n

\n

\n در حال حاضر حدود 300 نفر به صورت مستقیم در مجموعه کارخانجات گروه صنعتی لورچ به فعالیت مشغول هستند. با توجه به وجود تولید کنندگان خوب داخلی، ایران می تواند به عنوان قطب تولیدکننده لوازم خانگی و تاسیسات در خاورمیانه معرفی گردد. گروه صنعتی لورچ به پشتوانه سالها تلاش خود موفق گردیده ضمن کم کردن سهم واردات کالاهای مشابه و جلوگیری از خروج ارز از کشور، نسبت به صادرات محصولات خود به کشورهای مختلف نیز اقدام نماید. در کنار این مهم، گروه صنعتی لورچ کوشیده است با افزایش کیفیت محصولات خود در حد معیارها و استانداردهای جهانی سعی نمایند بازارهای خارجی را بدست آورد تا از این طریق ضمن ارزآوری برای کشور، زمینه اشتغال جوانان این مرز و بوم را نیز فراهم آورد.\n

\n\n

گواهینامه ها

\n

\n شرکت لورچ در طی سالهای فعالیت خود افتخار کسب گواهینامه های معتبر ملی و بین المللی را داشته است از جمله گواهینامه استاندارد ملی انواع رادیاتور پانلی، گواهینامه استاندارد ملی انواع پکیج های گازی، گواهینامه استاندارد ملی انواع آبگرمکن، گواهینامه استاندارد ملی انواع کولرهای آبی، گواهینامه استاندارد ملی انواع بخاری گازی، دریافت گواهینامه استاندارد CE اروپا، دریافت گواهینامه IMS در زمینه مدیریت یکپارچه سیستم که شامل ISO 9001 در زمینه مدیریت کیفیت محصولات، ISO 14001 در زمینه استاندارد بین المللی زیست محیطی و کاهش آلاینده ها و BS OHSAS 18001 در زمینه استاندارد بین المللی فعالیت های ایمنی و بهداشت کار میباشد.\n

\n\n

افتخارات

\n

- واحد نمونه استاندارد در سالیان متوالی

\n

- اخذ تندیس طلایی سازمان حمایت از حقوق مصرف کنندگان

\n

- اخذ تندیس نقره ای سازمان حمایت از حقوق مصرف کنندگان در سال 1394 و 1396 و 1397

\n

- اخذ تندیس برنز سازمان حمایت از حقوق مصرف کنندگان در سال 1393

\n

- اخذ گواهینامه حمایت حقوق مصرف کنندگان در سه سال متوالی 1390 ، 1391 ، 1392

\n

- واحد نمونه صنعت و معدن استان اصفهان در سال 1392

\n

- واحد صنعتی نوآور و برتر اقتصادی

\n

-واحد برتر جشنواره تولید ملی، افتخار ملی

\n

-دریافت لوح سپاس 100 برند برتر

\n\n

آدرس

\n

تهران - خیابان ولیعصر - کوچه گلستان(شهنواز) - پلاک 78

\n
\n
\n
\n
\n\n\n \n
\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';\r\nimport { IInstallments } from '../../models/installments.model';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { SalePreInvoiceForContractProductSelect } from '../../models/SalePreInvoiceForContractProductSelect.model';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { SaleCustomerImageInfosService } from '../../services/sale-customer-service/sale-customer-image-infos.service';\r\nimport { CashDeskService } from '../../services/cash-desk-service/cash-desk.service';\r\nimport { CheckoutCashDeskModel } from '../../models/CashDesk/checkout-cash-desks.model';\r\nimport { ConfirmMessageModel } from '../../models/utilities/confirm-message.model';\r\nimport { GradeService } from '../../services/sale-customer-service/grade.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'pre-contract-modal',\r\n templateUrl: 'pre-contract-modal.component.html',\r\n styleUrls: ['pre-contract-modal.component.scss']\r\n})\r\nexport class PreContractModalComponent implements OnInit, OnChanges {\r\n public columns: any[] = [];\r\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n public checkoutConfirm: boolean = false;\r\n public buyerName: string = '';\r\n public serverDate: Date = new Date(Date.now());\r\n public totalPayment: number = 0;\r\n public totalTax: number = 0;\r\n public totalproductPayment: number = 0;\r\n\r\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\r\n @Input() installments: IInstallments = new IInstallments();\r\n @Output() acceptPreContract = new EventEmitter();\r\n @Output() notUploadDocuments = new EventEmitter();\r\n @Input() invoiceSaleProducts: SalePreInvoiceForContractProductSelect[] = [];\r\n @Input() listSalePreInvoice: PreInvoice[] = [];\r\n\r\n constructor(private authService: AuthService,\r\n private saleCustomerImageInfosService: SaleCustomerImageInfosService,\r\n private alertService: AlertService,\r\n private cashDeskService: CashDeskService,\r\n private gradeService: GradeService) { }\r\n\r\n ngOnChanges() {\r\n this.buyerName = this.authService.currentUser.fullName;\r\n this.invoiceSaleProducts.forEach((val) => {\r\n this.totalproductPayment += val.spipPrice;\r\n this.totalTax += val.tax;\r\n this.totalPayment += val.pay;\r\n })\r\n }\r\n\r\n ngOnInit() { }\r\n\r\n printContract() {\r\n window.print();\r\n }\r\n\r\n getFormatDateShamsi(date: string) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n\r\n //ToDo: Send to Payment\r\n acceptContractModal() {\r\n let dateOfNow = this.serverDate.toLocaleDateString('en').split('/').join('-');\r\n this.cashDeskService.allCheckoutCashDesks(this.saleInvoiceDetail.spiCustomerCode, dateOfNow, dateOfNow).subscribe(\r\n (res: CheckoutCashDeskModel[]) => {\r\n if (res.length <= 0) {\r\n this.saleCustomerImageInfosService.statusSaleCustomerDocuments(this.saleInvoiceDetail.spiCustomerCode, this.saleInvoiceDetail.spiSubCustomerCode).subscribe(\r\n (res) => {\r\n if (res) {\r\n this.gradeService.getCreditGradeCustomer(+this.saleInvoiceDetail.spiCustomerCode, +this.saleInvoiceDetail.spiSubCustomerCode, +this.saleInvoiceDetail.spiYear).subscribe((credit) => {\r\n if (credit > 0) {\r\n let sumPrice = 0;\r\n this.listSalePreInvoice.forEach((res) => {\r\n if ((res.spiCustomerCode == this.saleInvoiceDetail.spiCustomerCode)\r\n && (res.spiSubCustomerCode == this.saleInvoiceDetail.spiSubCustomerCode)\r\n && (res.typePrice == 2)\r\n && (res.status != \"ابطال شده\")) {\r\n sumPrice += res.sumPrice\r\n }\r\n });\r\n if (sumPrice < credit) {\r\n this.acceptPreContract.emit(this.saleInvoiceDetail);\r\n } else {\r\n this.alertService.showMessage('اخطار', \"مبلغ کل پیش فاکتور \" + sumPrice.toString() + \" می باشد،اقساط مشتری از سقف تعیین شده برای گرید مشتری فراتر رفت است. \", MessageSeverity.error);\r\n }\r\n } else {\r\n this.alertService.showMessage('اخطار', \"شخص مورد نظر فاقد اعتبار برای دریافت اقساط می باشد\", MessageSeverity.error);\r\n }\r\n }, (err) => {\r\n this.alertService.showMessage('اخطار', err.error, MessageSeverity.error);\r\n });\r\n } else {\r\n this.alertService.showMessage('اخطار', `مدارک مشتری ${this.saleInvoiceDetail.cName} آپلود یا تایید نشده است.`, MessageSeverity.error);\r\n this.notUploadDocuments.emit(this.saleInvoiceDetail);\r\n }\r\n },\r\n (err) => {\r\n this.alertService.showMessage('اخطار', `مدارک مشتری ${this.saleInvoiceDetail.cName} در سیستم بارگذاری نشده است.`, MessageSeverity.error);\r\n })\r\n } else {\r\n this.confirmMessageObj.statusId = 2;\r\n this.confirmMessageObj.confirmType = 2;\r\n this.confirmMessageObj.title = 'عدم تایید پیش فاکتور';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به تایید پیش فاکتور اقساط نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n });\r\n\r\n\r\n\r\n\r\n\r\n }\r\n\r\n showCheckoutConfirm(event: boolean) {\r\n this.checkoutConfirm = event;\r\n }\r\n\r\n onEditorModalHidden() { }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

قرارداد فروش اقساطی کالا

\r\n
\r\n
\r\n تاریخ :{{saleInvoiceDetail.spipDate}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n

این قرارداد پیروی مذاکرات صورت گرفته میان طرفین به‌موجب ماده 10 قانون مدنی منعقد شده و طرفین خود را با امضای آن ملتزم به مفاد قرارداد دانسته‌اند.

\r\n
\r\n
\r\n
ماده 1 : طرفین قرارداد
\r\n

\r\n این قرارداد بین شرکت\r\n آرسام تجارت نیکو\r\n با شماره پیش فاکتور\r\n {{saleInvoiceDetail.spiCode}}\r\n و شماره قرارداد {{saleInvoiceDetail.contractCode}}\r\n ،\r\n به نمایندگی\r\n {{buyerName}}\r\n که از این پس فروشنده خوانده می شود و\r\n {{saleInvoiceDetail.cName}}\r\n با کد ملی\r\n {{saleInvoiceDetail.cPublicCode}}\r\n شهر\r\n {{saleInvoiceDetail.nameCity}}،\r\n به آدرس\r\n {{saleInvoiceDetail.cAddress}}،\r\n کد پستی\r\n {{saleInvoiceDetail.cPostalCode}}،\r\n و تلفن همراه\r\n {{saleInvoiceDetail.cTel}}\r\n که از این پس در این قرارداد خریدار خوانده می شود به شرح موارد زیر منعقد می گردد.\r\n

\r\n
\r\n
\r\n
ماده 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 \r\n
ردیفنام کالاتعدادقیمت واحدمالیاتپرداخت
{{i + 1}}{{item.productName.substr(0, 50) | titlecase}} ...{{item.spipAmount}}{{item.spipPrice | number}} ریال{{item.tax | number}} ریال{{item.pay | number}} ریال
جمع :{{totalproductPayment | number}} ریال{{totalTax | number}} ریال{{totalPayment | number}} ریال
\r\n
\r\n
\r\n
\r\n

کل ثمن معامله عبارت است از مبلغ {{saleInvoiceDetail.sumPrice | number}} ریال که مبلغ {{installments.prePayment | 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
ردیفتاریخ پرداختمبلغ چک
{{i + 1}}{{getFormatDateShamsi(item.dateInstallments)}}{{item.amountInstallments | number}} ریال
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

خریدار : {{saleInvoiceDetail.cName}}

\r\n

کد ملی : {{saleInvoiceDetail.cPublicCode}}

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

اثر انگشت :

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

امضا :

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

فروشنده : {{buyerName}}

\r\n

کد ملی : {{saleInvoiceDetail.buyerNationalCode}}

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

اثر انگشت :

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

امضا :

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
ماده 3 : تعهدات فروشنده
\r\n

فروشنده خود را در قبال موارد زیر مسئول دانسته و انجام آن ها را تعهد می نماید:

\r\n
    \r\n
  • \r\n

    5-1 تهیه کالای مورد نیاز خریدار و تقدیم آن بعد از دریافت پیش پرداخت و امضای این قرارداد.

    \r\n
  • \r\n
  • \r\n

    5-2 ارائه صورتحساب فروش(فاکتور) بعد از پرداخت آخرین قسط توسط خریدار بدیهی است صورتحساب فروش (فاکتور) کالا تا پرداخت آخرین قسط، نزد فروشنده باقی می ماند.

    \r\n
  • \r\n
\r\n
\r\n
\r\n
ماده 4 : تعهدات خریدار
\r\n

خریدار خود را قبال موارد زیر مسئول دانسته و انجام آن ها را تعهد می نماید:

\r\n
    \r\n
  • \r\n

    6-1 ارائه اطلاعات هویتی، محل سکونت و کار و همچنین میزان درآمد خود به‌صورت کامل و صحیح قبل از امضای قرارداد و اقرار به اصالت و صحیح بودن آن اطلاعات که شامل تحویل کپی کلیه مدارک مثبته به هنگام دریافت کالا نیز می‌باشد.

    \r\n
  • \r\n
  • \r\n

    6-2 خریدار خود را ملزم به حفظ و نگهداری صحیح کالای خریداری‌شده تا انتهای قرارداد می‌داند.

    \r\n
  • \r\n
  • \r\n

    6-3 خریدار خود را موظف به پرداخت به‌موقع اقساط طبق جدول اعلامی در بند ب ماده 1 می‌داند و آن را کاملاً تعهد می‌نماید.

    \r\n
  • \r\n
  • \r\n

    6-4 خریدار تا پایان این قرارداد و پرداخت کلیه دیون و اقساط خود به فروشنده،حق واگذاری کالای خریداری‌شده به شخص دیگری را ندارد. در صورت هرگونه انتقال به شخصی دیگر، خریدار مسئول جبران ضرر و زیان وارده به فروشنده است.

    \r\n
  • \r\n
  • \r\n

    6-5 خریدار در صورت عدم انجام تعهدات خود این حق را به فروشنده می‌دهد که اقدامات قانونی موردنیاز را برای وصول مطالبات خود انجام دهد. این اقدامات می‌تواند از جلوگیری از استفاده خریدار از کالای خریداری‌شده (مانند جمع آوری کالا تا اجرا گذاردن چک یا سفته خریدار) ادامه داشته باشد.

    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n

خریدار : {{saleInvoiceDetail.cName}}

\r\n

کد ملی : {{saleInvoiceDetail.cPublicCode}}

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

اثر انگشت :

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

امضا :

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

فروشنده : {{buyerName}}

\r\n

کد ملی : {{saleInvoiceDetail.buyerNationalCode}}

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

اثر انگشت :

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

امضا :

\r\n
\r\n
\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, Input, TemplateRef, EventEmitter, Output, OnChanges } from '@angular/core';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\nimport { HesabKindBanks } from '../../models/HesabKindBanks.model';\r\nimport { SaleBankAccounts } from '../../models/SaleBankAccounts.model';\r\nimport { SaleReceipt } from '../../models/SaleReceipts/SaleReceipt.model';\r\nimport { SaleNewContract } from '../../models/SaleNewContract.model';\r\nimport { ContractProduct } from '../../models/ContractProduct.model';\r\nimport { SaleSubReceipt } from '../../models/SaleReceipts/SaleSubReceipt.model';\r\nimport { SaleSubReceiptSelect } from '../../models/SaleSubReceiptSelect.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport * as moment from 'jalali-moment';\r\nimport { RemindClass } from '../../models/RemindClass.model';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { VMUpdateSaleSubReceipt } from '../../models/VMUpdateSaleSubReceipt.model';\r\nimport { SharedService } from '../../services/Shared.service';\r\nimport { SalePreInvoiceForContractCheckInfoModel } from '../../models/SalePreInvoiceForContractCheckInfo.model';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { IInstallmentsDetaile } from '../../models/installment-detail.model';\r\nimport { InputPricePaymentFormInvoiceSaleModel } from '../../models/InputPricePaymentFormInvoiceSale.model';\r\nimport { UpdateSaleSubReceiptResult } from '../../enums/update-sale-sub-receipt-result';\r\nimport { SaleReceiptService } from '../../services/receipt-services/sale-receipt.service';\r\nimport { SaleSubReceiptService } from '../../services/receipt-services/sale-sub-receipt.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'inv-price',\r\n templateUrl: './inv-price.component.html'\r\n})\r\nexport class invpricecomponent implements OnInit, OnChanges {\r\n public sumPriceInvoice: number = 0;\r\n public remindPaymentInvoice: number = 0;\r\n public paymentInvoice: number = 0;\r\n public installmentInterest: number = 0;\r\n public dateObject: string;\r\n public dateObjectRSDate = moment();\r\n public loadingIndicator: boolean;\r\n\r\n public rowsCache: SaleSubReceiptSelect[] = [];\r\n public rows: SaleSubReceiptSelect[] = [];\r\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\r\n public checkDetailList: SalePreInvoiceForContractCheckInfoModel[] = [];\r\n public installmentsData: IInstallmentsDetaile[] = [];\r\n public allbank: SaleBankAccounts[] = [];\r\n public allhesabkindbank: HesabKindBanks[] = [];\r\n public allsalebankaccounts: SaleBankAccounts[] = [];\r\n\r\n\r\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\r\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel = new InputPricePaymentFormInvoiceSaleModel();\r\n @Output() saveCheckDetailStatus = new EventEmitter();\r\n @Output() paymentPriceSuccess = new EventEmitter();\r\n\r\n public isSelect = false;\r\n public ReceiptNum: number;\r\n\r\n public AllPay: number = 0;\r\n public AllBed: number = 0;\r\n public AllBes: number = 0;\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n public isEditMode = true;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public spiCode: number;\r\n public CuntractNumber: number;\r\n columns: any[] = [];\r\n group = '';\r\n public RSBankAccountCode2: number;\r\n public RSBankType: number;\r\n public RSBankAccountCode: number;\r\n public TypePrice: number = 1;\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\r\n public VMUpdateSaleSubReceipt: VMUpdateSaleSubReceipt = new VMUpdateSaleSubReceipt();\r\n public SaleNewContractObj: SaleNewContract = new SaleNewContract();\r\n public SaleNewContractProductObj: ContractProduct = new ContractProduct();\r\n public Ncpcodeobject: number;\r\n public Cmain: number;\r\n public Csub: number;\r\n public isEdit: boolean = false;\r\n public isEditComment: boolean = true;\r\n public isEditSerial: boolean = true;\r\n public isEditPrice: boolean = true;\r\n public isEditDate: boolean = true;\r\n public isEditContractCode: boolean = true;\r\n serverDate: Date;\r\n CanManagemanageInvoiceSale = false;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @Input()\r\n isViewOnly: boolean;\r\n @Input()\r\n isGeneralEditor = false;\r\n @ViewChild('f', { static: false })\r\n public form;\r\n PreSeller: { name: string; };\r\n NumberPreInvoic: { name: string; };\r\n NumberSanad: { name: string; };\r\n NumberCuntract: { name: string; };\r\n public IsReload: boolean = false;\r\n public IsAssignment: boolean = false;\r\n oldserial = \"\";\r\n newContractCode = 0;\r\n oldPrice = 0;\r\n public SanadHesabdari: number;\r\n public AcceptContract: boolean = true;\r\n ReciptNo: number = 0;\r\n\r\n\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private authService: AuthService,\r\n private translationService: AppTranslationService,\r\n private myCompanyService: MyCompanyService,\r\n private sharedService: SharedService,\r\n private myaccountService: MyAccountService,\r\n private saleSubReceiptService: SaleSubReceiptService,\r\n private saleReceiptService: SaleReceiptService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnChanges() {\r\n $('.nav-pills a[href=\"#paymentTab\"]').tab('show');\r\n //$('[data-target=\"#paymentTab\"]').tab('show');\r\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\r\n //this.installmentInterest = this.saleInvoiceDetail.installmentInterest;\r\n //this.sumPriceInvoice = this.saleInvoiceDetail.sumPrice;\r\n //this.remindPaymentInvoice = this.sumPriceInvoice - this.paymentInvoice;\r\n }\r\n\r\n ngOnInit() {\r\n this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\r\n this.dateObjectRSDate = this.sharedService.getDateToMoment(this.dateObject);\r\n //const gT = (key: string) => this.translationService.getTranslation(key);\r\n //this.columns = [\r\n // {\r\n // prop: 'index', name: 'ردیف', width: 50, cellTemplate: this.indexTemplate,\r\n // canAutoResize: false, summaryFunc: cells => this.DetailSummery(cells)\r\n // },\r\n // { prop: 'rKind', name: gT('نوع'), width: 100 },\r\n // { prop: 'rSerial', name: gT('سریال'), width: 140 },\r\n // { prop: 'rsDate', name: gT('تاریخ رسید'), width: 100 },\r\n // {\r\n // prop: 'rsPrice', name: gT('مبلغ'), width: 150,\r\n // summaryFunc: cells => this.SumMoney(cells)\r\n // },\r\n // {\r\n // prop: 'rsNum', name: gT('شماره سند'), width: 100,\r\n // summaryFunc: cells => this.Detailsanad(cells)\r\n // }\r\n //];\r\n //this.columns.push({ name: '', width: 160, resizeable: false, cellTemplate: this.actionsTemplate, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n\r\n saveCheckDetail() {\r\n this.saveCheckDetailStatus.emit(true);\r\n }\r\n\r\n loadReceipt() {\r\n this.accountService.GetSaleSubReceiptSelect(this.saleInvoiceDetail.contractCode, Number(this.authService.currentUser.phoneNumber), 5, 1).subscribe(\r\n results => this.onSaleSubReceiptSelect(results),\r\n error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private onSaleSubReceiptSelect(salebank: SaleSubReceiptSelect[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n salebank.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1;\r\n user.rsDate = new Date(user.rsDate).toLocaleDateString('fa-IR');\r\n var currencyFormatter = require('currency-formatter');\r\n user.rsPrice = currencyFormatter.format(user.rsPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n });\r\n this.rowsCache = [...salebank];\r\n this.rows = salebank;\r\n this.remindPaymentInvoice = this.sumPriceInvoice - this.paymentInvoice;\r\n this.getStatusContract();\r\n }\r\n\r\n getStatusContract() {\r\n this.accountService.GetStatusAccept(Number(this.accountService.currentUser.phoneNumber), 5, this.saleInvoiceDetail.contractCode).subscribe(\r\n res => {\r\n this.AcceptContract = res;\r\n },\r\n err => console.log(err)\r\n )\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n\r\n Detailsanad(cells: any) {\r\n const filteredCells = \"\";\r\n return filteredCells;\r\n }\r\n\r\n changereal() {\r\n this.isreal = true;\r\n }\r\n\r\n changeLegal() {\r\n this.isreal = false;\r\n }\r\n\r\n newprice(allbank: SaleBankAccounts[], allsalebankaccounts: SaleBankAccounts[], allhesabkindbank: HesabKindBanks[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.allbank = allbank;\r\n this.allsalebankaccounts = allsalebankaccounts;\r\n this.allhesabkindbank = allhesabkindbank;\r\n this.getStatusContract();\r\n }\r\n\r\n onChangeBankAccountCode(number?: number) {\r\n this.RSBankAccountCode = number;\r\n }\r\n\r\n onChangeallSaleBankAccounts(number?: number) {\r\n this.RSBankAccountCode2 = number;\r\n }\r\n\r\n onChangeallHesabKindBank(number?: number) {\r\n this.RSBankType = number;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n this.isSaving = false;\r\n\r\n }\r\n\r\n save(isAssignment: boolean) {\r\n this.IsAssignment = isAssignment;\r\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != \"undefined\" && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\r\n this.accountService.GetRSerialCheck(this.SaleSubReceiptObj.rSerial).subscribe(results => { this.onCurrentCheck(results) }, error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n }\r\n\r\n update(isAssignment: boolean) {\r\n this.IsAssignment = isAssignment;\r\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\r\n this.saleReceiptService.getRSerialCheckForUpdate(this.SaleSubReceiptObj.rsNum, this.SaleSubReceiptObj.rSerial).subscribe(results => { this.onCurrentCheck(results) }, error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n }\r\n\r\n onCurrentCheck(results: boolean): void {\r\n var CheckComplet = true;\r\n if (results == true) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'شماره سریال تکراری می باشد', MessageSeverity.warn);\r\n }\r\n\r\n\r\n if (this.dateObjectRSDate == null || this.dateObjectRSDate.toLocaleString() == \"undefined\" || this.dateObjectRSDate.toString() == undefined || this.dateObjectRSDate.toLocaleString() == \"\") {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rsPrice == 0 || this.SaleSubReceiptObj.rsPrice == null) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rSerial == \"\" || this.SaleSubReceiptObj.rSerial == null) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\r\n }\r\n var date = this.sharedService.checkDate(this.dateObjectRSDate)\r\n if (date > 0) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\r\n }\r\n\r\n if (CheckComplet) {\r\n this.isSaving = true;\r\n\r\n //this.accountService.GetRemindWithVouchers(Number(this.authService.currentUser.phoneNumber), 5, 0, \"0\", this.CuntractNumber, this.Cmain, this.Csub).subscribe(result => { this.LoadremaindVouchers(result) }, error => { this.isSaving = false; this.saveerror(error) });\r\n if (this.isEdit) {\r\n this.CheckRemindUpdate(this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice);\r\n\r\n }\r\n else {\r\n this.CheckRemind(this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice);\r\n\r\n }\r\n }\r\n\r\n }\r\n\r\n CheckRemind(remind: number) {\r\n if (this.SaleSubReceiptObj.rsPrice > 0) {\r\n if (remind == 0) {\r\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remind < this.SaleSubReceiptObj.rsPrice) {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remind >= this.SaleSubReceiptObj.rsPrice) {\r\n this.MethodGetNewCodeRecipt(remind);\r\n\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n\r\n MethodGetNewCodeRecipt(remind: number) {\r\n this.accountService.GetNewCodeRecipt(+this.authService.currentUser.phoneNumber, 5, 1).subscribe(res => { this.MethodSaveSaleReceipts(res, remind), error => { this.isSaving = false; this.saveerror(error) } });\r\n }\r\n\r\n\r\n MethodSaveSaleReceipts(loadNewCode: number, remind: number) {\r\n this.ReciptNo = loadNewCode;\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n this.SaleReceiptObj.rnum = loadNewCode;\r\n this.SaleReceiptObj.ryear = this.saleInvoiceDetail.spiYear;\r\n this.SaleReceiptObj.rmainCustomerCode = this.saleInvoiceDetail.spiCustomerCode;\r\n this.SaleReceiptObj.rsubCustomerCode = this.saleInvoiceDetail.spiSubCustomerCode;\r\n this.SaleReceiptObj.rpartCode = this.saleInvoiceDetail.spiPartCode;\r\n this.SaleReceiptObj.rdate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleReceiptObj.rkind = 1;\r\n this.SaleReceiptObj.rreceivedFor = -1;\r\n this.SaleReceiptObj.rreceivedNumber = this.saleInvoiceDetail.spiCode;\r\n this.SaleReceiptObj.rreceivedYear = +this.authService.currentUser.phoneNumber;\r\n this.SaleReceiptObj.risNotInCycle = false;\r\n this.SaleReceiptObj.rcontractYear = +this.authService.currentUser.phoneNumber;\r\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\r\n this.SaleReceiptObj.sanavat = false;\r\n this.saleReceiptService.updateSaleReceipt(this.SaleReceiptObj, this.SaleSubReceiptObj.rSerial).subscribe(s => this.saveNewSaleSubReceiptSuccessHelper(remind), error => { this.isSaving = false; this.saveerror(error) });\r\n\r\n }\r\n\r\n private saveNewSaleSubReceiptSuccessHelper(remind: number) {\r\n this.SaleSubReceiptObj.rsKind = 1;\r\n this.SaleSubReceiptObj.rsBankAccountCode = 197;\r\n //this.SaleSubReceiptObj.RSBankType = this.RSBankType;\r\n this.SaleSubReceiptObj.rsPartCode = 5;\r\n this.SaleSubReceiptObj.rsYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleSubReceiptObj.rsReceiptKind = 1;\r\n this.SaleSubReceiptObj.rsNum = this.SaleReceiptObj.rnum;\r\n //this.SaleSubReceiptObj.rsDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleSubReceiptObj.rsDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\r\n\r\n this.accountService.newSaleSubReceipt(this.SaleSubReceiptObj).subscribe(s => this.saveSubSuccessHelper(remind), error => this.saveerror(error));\r\n }\r\n\r\n private saveSubSuccessHelper(remind: number) {\r\n if (this.ReciptNo > 0) {\r\n\r\n\r\n if (this.IsAssignment) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + this.ReciptNo + ' ثبت شد. ', MessageSeverity.success);\r\n this.paymentPriceSuccess.emit(this.saleInvoiceDetail);\r\n if ((remind - this.SaleSubReceiptObj.rsPrice) == 0) {\r\n //this.IsReload = true;\r\n this.alertService.startLoadingMessage('تایید قرارداد و صدور حواله ...');\r\n this.LoadremaindVouchers_AcceptContractNextPayment(remind);\r\n }\r\n else {\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n //this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n this.loadReceipt();\r\n }\r\n }\r\n else {\r\n this.resetData();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + this.ReciptNo + ' ثبت شد. ', MessageSeverity.success);\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Goto('/contract');\r\n //this.myCompanyService.Goto('/invoicesale');\r\n }\r\n\r\n }\r\n else {\r\n\r\n }\r\n }\r\n\r\n LoadremaindVouchers_AcceptContractNextPayment(remind: number) {\r\n if ((remind - this.SaleSubReceiptObj.rsPrice) < 0) {\r\n this.alertService.showStickyMessage('عدم تایید', 'شما به دلیل دارا بودن مانده بدهی برای قرار داد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" نمی توانید ثبت سفارش کنید', MessageSeverity.error);\r\n }\r\n else {\r\n //this.IsReload = true;\r\n this.alertService.showDialog('آیا می خواهید قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" را ثبت سفارش کنید?', DialogType.confirm,\r\n () => this.saveGetNewAssignmentLoadingNextPaymentSuccessHelper(),\r\n () => {\r\n this.cancel();\r\n });\r\n }\r\n }\r\n\r\n private saveGetNewAssignmentLoadingNextPaymentSuccessHelper(SalePreInvoice?: string) {\r\n var spiCode = Number(this.NumberPreInvoic.name);\r\n this.accountService.GetNewAssignmentLoadingNextPayment(Number(this.authService.currentUser.phoneNumber), this.SaleReceiptObj.rcontractCode, spiCode).subscribe(res => this.saveNewAssignmentLoadingHelper(res), error => this.saveFailedHelper(error));\r\n }\r\n\r\n saveNewAssignmentLoadingHelper(DAPCode: number) {\r\n this.resetData();\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n var dapcode: string = String(DAPCode);\r\n switch (dapcode) {\r\n case '-8':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'شما به دلیل دارا بودن مانده بدهی برای قرار داد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" نمی توانید ثبت سفارش کنید', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-7':\r\n {\r\n this.alertService.showStickyMessage('Success', ' قرارداد شماره ' + this.SaleReceiptObj.rcontractCode + ' ثبت سفارش شد ', MessageSeverity.success);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Goto('/contract');\r\n\r\n break;\r\n }\r\n case '-6':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'در پیش فاکتور ' + this.NumberPreInvoic.name + ' کالایی ثبت نشده است.', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-5':\r\n {\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-4':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'شما به دلیل دارا بودن مانده بدهی برای قرار داد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" نمی توانید ثبت سفارش کنید', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-3':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'قرارداد شماره ' + this.SaleReceiptObj.rcontractCode + ' در سیستم ثبت نشده است.', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-2':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'پیش فاکتور شماره ' + this.NumberPreInvoic.name + ' در سیستم ثبت نشده است.', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-1':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '0':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n default:\r\n {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' حواله با شماره ' + dapcode + ' ثبت شد ', MessageSeverity.success);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Goto('/contract');\r\n break;\r\n }\r\n }\r\n\r\n }\r\n\r\n private saveerror(error: any) { }\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n } else {\r\n }\r\n this.showValidationErrors = false;\r\n this.resetData();\r\n //this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n\r\n if (this.IsReload) {\r\n this.myCompanyService.Refresh();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n resetData() {\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n }\r\n\r\n EmptyData() {\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n this.isEdit = false;\r\n this.isEditComment = true;\r\n this.isEditSerial = true;\r\n this.isEditPrice = true;\r\n this.isEditDate = true;\r\n this.isEditContractCode = true;\r\n\r\n this.oldserial = \"\";\r\n this.newContractCode = 0;\r\n this.oldPrice = 0;\r\n this.SanadHesabdari = 0;\r\n this.AcceptContract = false;\r\n\r\n this.PreSeller = { name: \"\" };\r\n this.NumberPreInvoic = { name: \"\" };\r\n this.NumberSanad = { name: \"\" };\r\n this.NumberCuntract = { name: \"\" };\r\n\r\n this.spiCode = 0;\r\n this.CuntractNumber = 0;\r\n this.ReciptNo = 0;\r\n }\r\n\r\n VoidPay(row: SaleSubReceipt) {\r\n this.getStatusContract();\r\n if (!this.AcceptContract) {\r\n this.CheckAcceptContract(this.AcceptContract, row);\r\n\r\n }\r\n else {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', ' قرارداد ' + Number(this.NumberCuntract.name) + ' تایید نشده است. ', MessageSeverity.error);\r\n }\r\n }\r\n\r\n LoadErrorCheck(error: any): void {\r\n throw new Error('Method not implemented.');\r\n }\r\n\r\n editPay(row) {\r\n this.AcceptContract = this.inputPricePaymentFormInvoiceSale.contractStatus\r\n if (this.AcceptContract === false) {\r\n this.CheckAcceptContract(this.AcceptContract, row);\r\n }\r\n else {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', ' قرارداد ' + Number(this.NumberCuntract.name) + ' تایید نشده است. ', MessageSeverity.error);\r\n }\r\n }\r\n\r\n CheckAcceptContract(s: boolean, rowsub: SaleSubReceipt): void {\r\n this.AcceptContract = s;\r\n this.accountService.SaleReceiptChekHesabSanad(Number(this.authService.currentUser.phoneNumber), rowsub.rsNum, rowsub.rsPartCode, rowsub.rsKind).subscribe(\r\n res => this.CheckHesabSanad(res, rowsub),\r\n error => this.LoadErrorCheck(error));\r\n }\r\n\r\n CheckHesabSanad(RemindClassCheck: RemindClass, rowsub: SaleSubReceipt): void {\r\n var currencyFormatter = require('currency-formatter');\r\n\r\n if (rowsub != null) {\r\n this.oldserial = rowsub.rSerial;\r\n this.oldPrice = Number(currencyFormatter.unformat(rowsub.rsPrice, { code: 'USD' }));\r\n this.newContractCode = this.SaleReceiptObj.rcontractCode;\r\n this.SaleSubReceiptObj = rowsub;\r\n this.SaleSubReceiptObj.rsPrice = this.oldPrice;\r\n\r\n //this.dateObjectRSDate = this.sharedService.getDateToMoment(rowsub.rsDate);\r\n //this.dateObjectRSDate = this.sharedService.getDateToMoment(rowsub.rsDate);\r\n }\r\n\r\n this.SanadHesabdari = Number(RemindClassCheck);\r\n if (this.SanadHesabdari == 0 && !this.AcceptContract) {\r\n this.isEdit = true;\r\n this.isEditComment = true;\r\n this.isEditSerial = true;\r\n this.isEditPrice = true;\r\n this.isEditDate = true;\r\n this.isEditContractCode = true;\r\n }\r\n else if (this.SanadHesabdari == 1 && !this.AcceptContract) {\r\n this.isEdit = true;\r\n this.isEditContractCode = true;\r\n\r\n }\r\n else if (this.AcceptContract) {\r\n this.isEdit = false;\r\n this.isEditComment = false;\r\n this.isEditSerial = false;\r\n this.isEditPrice = false;\r\n this.isEditDate = false;\r\n this.isEditContractCode = false;\r\n }\r\n }\r\n\r\n\r\n LoadAcceptContracterror(error: any): void {\r\n throw new Error('Method not implemented.');\r\n }\r\n\r\n print() {\r\n window.print();\r\n }\r\n\r\n CheckRemindUpdate(remind: number) {\r\n var newprice = this.SaleSubReceiptObj.rsPrice;\r\n var remindupdate = Math.abs(this.inputPricePaymentFormInvoiceSale.sumPriceInvoice - (this.inputPricePaymentFormInvoiceSale.sumPriceInvoice - (remind + this.oldPrice)));\r\n //var remindupdateFinal = this.AllPay - (this.AllPay - (remind + this.oldPrice) + newprice);\r\n if (newprice != this.oldPrice) {\r\n if (newprice > 0) {\r\n if (remindupdate == 0) {\r\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remindupdate < this.SaleSubReceiptObj.rsPrice) {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remindupdate >= this.SaleSubReceiptObj.rsPrice) {\r\n this.MethodUpdateSaleReceipts(this.SaleSubReceiptObj.rsNum, remindupdate);\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n else {\r\n this.MethodUpdateSaleReceipts(this.SaleSubReceiptObj.rsNum, remindupdate);\r\n }\r\n }\r\n\r\n MethodUpdateSaleReceipts(loadNewCode: number, remind: number) {\r\n this.ReciptNo = loadNewCode;\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n this.SaleSubReceiptObj.rsKind = 1;\r\n this.SaleSubReceiptObj.rsBankAccountCode = 197;\r\n this.SaleSubReceiptObj.rsPartCode = 5;\r\n this.SaleSubReceiptObj.rsYear = +this.authService.currentUser.phoneNumber;\r\n this.SaleSubReceiptObj.rsReceiptKind = 1;\r\n this.SaleSubReceiptObj.rsNum = loadNewCode;\r\n this.SaleSubReceiptObj.rsDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\r\n\r\n var oldCuntractCode = this.SaleReceiptObj.rcontractCode;\r\n this.newContractCode = this.SaleReceiptObj.rcontractCode;\r\n this.VMUpdateSaleSubReceipt.oldSerial = this.oldserial;\r\n this.VMUpdateSaleSubReceipt.newContractCode = this.newContractCode;\r\n this.VMUpdateSaleSubReceipt.saleSubReceipt = this.SaleSubReceiptObj;\r\n\r\n if (this.newContractCode > 0 && oldCuntractCode != this.newContractCode) {\r\n this.saleReceiptService.checkUpdateSaleSubReceiptByContractCode(this.SaleSubReceiptObj.rsYear, this.SaleSubReceiptObj.rsPartCode, oldCuntractCode, this.newContractCode, this.SaleSubReceiptObj.rsPrice).subscribe(results => {\r\n if (results === '' || results == null) {\r\n this.saleSubReceiptService.updateSaleSubReceipt(this.VMUpdateSaleSubReceipt).subscribe(s => this.updateSubSuccessHelper(s), error => this.saveerror(error));\r\n }\r\n else {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Error! ', results, MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }, error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n else {\r\n this.saleSubReceiptService.updateSaleSubReceipt(this.VMUpdateSaleSubReceipt).subscribe(s => this.updateSubSuccessHelper(s), error => this.saveerror(error));\r\n }\r\n }\r\n\r\n private updateSubSuccessHelper(res: any) {\r\n if (res == UpdateSaleSubReceiptResult.Success) {\r\n var msg = ' پرداخت با شماره ' + this.ReciptNo + ' اصلاح شد. ';\r\n this.saveCheckDetailStatus.emit(true);\r\n this.SaleReceiptObj.rcontractCode = this.newContractCode;\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n //this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n this.isEdit = false;\r\n this.isEditComment = true;\r\n this.isEditSerial = true;\r\n this.isEditPrice = true;\r\n this.isEditDate = true;\r\n this.isEditContractCode = true;\r\n\r\n this.loadReceipt();\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', msg, MessageSeverity.success);\r\n }\r\n else {\r\n let msg = \"\";\r\n switch (res) {\r\n case UpdateSaleSubReceiptResult.Error:\r\n msg = ' متاسفانه پرداخت با شماره ' + this.ReciptNo + ' اصلاح نشد. ';\r\n break;\r\n case UpdateSaleSubReceiptResult.EmptyOldSerial:\r\n msg = ' سریال وارد شده نا معتبر است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.IsNotAcceptedAndNotIsVoidNewContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، قرارداد جدید باید ابطال و تایید نشده باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.IsNotAcceptedOrIsVoidOldContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، قرارداد فعلی باید ابطال شده یا تایید نشده باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotEqualCustomerContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، مشتری قرارداد جدید باید از همان فروشگاه مشتری قرارداد قبلی باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotEqualSubCustomerContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، مشتری قرارداد جدید باید همان مشتری قرارداد قبلی باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistNewContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، شماره قرارداد جدید وارد شده در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistOldContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، شماره قرارداد قبلی در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistSaleReceipt:\r\n msg = ' شماره رسید پرداختی در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistSaleSubReceipt:\r\n msg = ' شماره پیگیری رسید پرداختی در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistSerial:\r\n msg = ' سریال وارد شده در سیستم ثبت نشده است.';\r\n break;\r\n default:\r\n msg = ' متاسفانه پرداخت با شماره ' + this.ReciptNo + ' اصلاح نشد. ';\r\n break;\r\n }\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', msg, MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n\r\n getFormatDateShamsi(date: string) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n\r\n ///End Of deleted\r\n\r\n //private onCurrentHesabKindDataLoadSuccessful(hesabKind: HesabKindBanks[]) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.allhesabkindbank = hesabKind;\r\n //}\r\n\r\n //private onCurrentBankAccountDataLoadSuccessful(salebankacc: SaleBankAccounts[]) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.allsalebankaccounts = salebankacc;\r\n //}\r\n\r\n\r\n //private onCurrentBankDataLoadSuccessful(salebank: SaleBankAccounts[]) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.allbank = salebank;\r\n //}\r\n\r\n //private loadHesabKind() {\r\n // this.alertService.startLoadingMessage();\r\n // this.accountService.getHesabKind().subscribe(results => this.onCurrentHesabKindDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n //}\r\n\r\n //private loadSaleBankAccount() {\r\n // this.alertService.startLoadingMessage();\r\n // this.accountService.getBankAccount(1).subscribe(results => this.onCurrentBankAccountDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n //}\r\n\r\n //private loadBank() {\r\n // this.alertService.startLoadingMessage();\r\n // this.accountService.getBankAccount(2).subscribe(results => this.onCurrentBankDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n //}\r\n\r\n //loadReceipt() {\r\n // if (this.CuntractNumber != null && this.CuntractNumber != undefined && this.CuntractNumber.toString() != '') {\r\n // this.accountService.GetSaleSubReceiptSelect(this.CuntractNumber, Number(this.authService.currentUser.phoneNumber), 5, 1).subscribe(results => this.onSaleSubReceiptSelect(results), error => this.onCurrentUserDataLoadFailed(error));\r\n // }\r\n // else {\r\n // this.alertService.stopLoadingMessage();\r\n // this.alertService.showMessage('Error! ', 'پیش فاکتور تایید نشده است.', MessageSeverity.error);\r\n // }\r\n //}\r\n\r\n}\r\n\r\n\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
شماره پیش فاکتور : {{saleInvoiceDetail.spiCode}}
\r\n
\r\n
\r\n
\r\n
\r\n
شماره قرارداد : {{saleInvoiceDetail.contractCode}}
\r\n
\r\n
\r\n
\r\n
\r\n
نام مشتری : {{saleInvoiceDetail.cName}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{getFormatDateShamsi(value)}}\r\n \r\n \r\n \r\n \r\n {{value | 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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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 { SaleInvoiceDetail } from './SaleInvoiceDetail.model';\r\n\nexport class SaleInvoice {\n iyear: number;\n icode: number;\n ikind: number;\n ipartCode: number;\n icontractCode: number;\n icontractYear: number;\n idate: string;\n imainCustomerCode: number;\n isubCustomerCode: number;\n isumPrice: number;\n isumDiscount: number;\n isumAfterDiscount: number;\n itax: number;\n iuserCode: number;\n iisVoid: boolean;\n iseller: string;\n isellerCode: number;\n idesc: string;\n iremarks: string;\n ipayment: number;\n ipayType: string;\n saleInvoiceDetail: SaleInvoiceDetail[];\n}\n","export class IDepoRevertToDepo {\n constructor(Drtdyear?: number\n , Drtdcode?: number\n , DrtddepCode?: string\n , DrtdrevertDate?: Date\n , DrtdsysDate?: Date\n , DrtduserCode?: number\n , DrtddealerCode?: number\n , Drtdpriceall?: number\n , Drtddiscount?: number\n , Drtdother?: number\n , Drtdremain?: number\n , Drtdtax?: number\n , Drtdtransport?: number\n , DrtddkindRevert?: number\n , DrtddateSession?: number\n , DrtdnumSession?: string\n , DrtdstatuseRevert?: number\n , DrtdcancelBit?: boolean\n , DepoRevertToDepoDetail?: IDepoRevertToDepoDetail[]\n ) {\n this.Drtdyear = Drtdyear;\n this.Drtdcode = Drtdcode;\n this.DrtddepCode = DrtddepCode;\n this.DrtdrevertDate = DrtdrevertDate;\n this.DrtdsysDate = DrtdsysDate;\n this.DrtduserCode = DrtduserCode;\n this.DrtddealerCode = DrtddealerCode;\n this.Drtdpriceall = Drtdpriceall;\n this.Drtddiscount = Drtddiscount;\n this.Drtdother = Drtdother;\n this.Drtdremain = Drtdremain;\n this.Drtdtax = Drtdtax;\n this.Drtdtransport = Drtdtransport;\n this.DrtddkindRevert = DrtddkindRevert;\n this.DrtddateSession = DrtddateSession;\n this.DrtdnumSession = DrtdnumSession;\n this.DrtdstatuseRevert = DrtdstatuseRevert;\n this.DrtdcancelBit = DrtdcancelBit;\n this.DepoRevertToDepoDetail = DepoRevertToDepoDetail\n }\n public Drtdyear: number;\n public Drtdcode: number;\n public DrtddepCode: string;\n public DrtdrevertDate: Date;\n public DrtdsysDate: Date;\n public DrtduserCode: number;\n public DrtddealerCode: number;\n public Drtdpriceall: number;\n public Drtddiscount: number;\n public Drtdother: number;\n public Drtdremain: number;\n public Drtdtax: number;\n public Drtdtransport: number;\n public DrtddkindRevert: number;\n public DrtddateSession: number;\n public DrtdnumSession: string;\n public DrtdstatuseRevert: number;\n public DrtdcancelBit: boolean;\n public DepoRevertToDepoDetail: IDepoRevertToDepoDetail[];\n}\n\nexport class IDepoRevertToDepoDetail {\n constructor(Drtddyear?: number\n , Drtddcode?: number\n , DrtdddepCode?: string\n , Drtdddccode?: string\n , DrtddunitProduct?: number\n , Drtddcount?: number\n , Drtdddesc?: string\n , DrtddreciveNumber?: number\n , Drtddprice?: number\n , Drtddpricefinal?: number\n , DrtdddescPrice?: string\n , DrtdendPrice?: number\n , DrtdpricePersonel?: number\n , DrtdpriceEnergy?: number\n , DrtdpriceEstehlak?: number\n , DrtdpriceMali?: number\n , DrtdpriceSale?: number\n , drtdddccodeNavigation?: IDepoRevertToDepoNavigation\n , DepoRevertToDepoDetailBarcode?: IDepoRevertToDepoDetailBarcode[]\n ) {\n this.Drtddyear = Drtddyear;\n this.Drtddcode = Drtddcode;\n this.DrtdddepCode = DrtdddepCode;\n this.Drtdddccode = Drtdddccode;\n this.DrtddunitProduct = DrtddunitProduct;\n this.Drtddcount = Drtddcount;\n this.Drtdddesc = Drtdddesc;\n this.DrtddreciveNumber = DrtddreciveNumber;\n this.Drtddprice = Drtddprice;\n this.Drtddpricefinal = Drtddpricefinal;\n this.DrtdddescPrice = DrtdddescPrice;\n this.DrtdendPrice = DrtdendPrice;\n this.DrtdpricePersonel = DrtdpricePersonel;\n this.DrtdpriceEnergy = DrtdpriceEnergy;\n this.DrtdpriceEstehlak = DrtdpriceEstehlak;\n this.DrtdpriceMali = DrtdpriceMali;\n this.DrtdpriceSale = DrtdpriceSale;\n this.drtdddccodeNavigation = drtdddccodeNavigation;\n this.DepoRevertToDepoDetailBarcode = DepoRevertToDepoDetailBarcode\n }\n public Drtddyear: number;\n public Drtddcode: number;\n public DrtdddepCode: string;\n public Drtdddccode: string;\n public DrtddunitProduct: number;\n public Drtddcount: number;\n public Drtdddesc: string;\n public DrtddreciveNumber: number;\n public Drtddprice: number;\n public Drtddpricefinal: number;\n public DrtdddescPrice: string;\n public DrtdendPrice: number;\n public DrtdpricePersonel: number;\n public DrtdpriceEnergy: number;\n public DrtdpriceEstehlak: number;\n public DrtdpriceMali: number;\n public DrtdpriceSale: number;\n public drtdddccodeNavigation: IDepoRevertToDepoNavigation;\n public DepoRevertToDepoDetailBarcode: IDepoRevertToDepoDetailBarcode[];\n}\n\nexport class IDepoRevertToDepoDetailBarcode {\n constructor(Drtddyear?: number\n , Drtddcode?: number\n , DrtdddepCode?: string\n , Drtdddccode?: string\n , DRTDDBarcode?: string\n ) {\n this.Drtddyear = Drtddyear;\n this.Drtddcode = Drtddcode;\n this.DrtdddepCode = DrtdddepCode;\n this.Drtdddccode = Drtdddccode;\n this.DRTDDBarcode = DRTDDBarcode;\n }\n public Drtddyear: number;\n public Drtddcode: number;\n public DrtdddepCode: string;\n public Drtdddccode: string;\n public DRTDDBarcode: string;\n}\n\nexport class IDepoRevertToDepoNavigation {\n constructor(dcdesc?: string\n ) {\n this.dcdesc = dcdesc;\n }\n public dcdesc: string;\n}\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ConfigurationService } from '../configuration.service';\r\nimport { GradeModel } from '../../Grades/Grade.model';\r\nimport { CustomerGradeModel } from '../../Grades/customer-grade.Model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GradeService {\r\n baseUrl: string = \"/api/TblGrades/\"; \r\n get GradeUrl() { return this.configurations.baseUrl + this.baseUrl }\r\n\r\n constructor(\r\n private configurations: ConfigurationService,\r\n private http: HttpClient) { }\r\n\r\n getGradeInfos(): Observable {\r\n return this.http.get(this.GradeUrl);\r\n }\r\n\r\n\r\n getCustomerGrade(cMainCode: number, cSubCode: number): Observable {\r\n return this.http.get(this.GradeUrl + \"get-grade-customer/\" + Number(cMainCode) + \"/\" + Number(cSubCode));\r\n }\r\n\r\n\r\n getCreditGradeCustomer(cMainCode: number, cSubCode: number,activeYear:number): Observable {\r\n return this.http.get(this.GradeUrl + \"get-credit-grade-customer/\" + cMainCode + \"/\" + cSubCode + \"/\" + activeYear);\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {ConfigurationService} from '../configuration.service';\r\nimport {SalePreInvoiceForContractCheckInfoModel, SalePreInvoiceForContractCheckInfoUpdateStatusModel} from '../../models/SalePreInvoiceForContractCheckInfo.model';\r\nimport {Observable} from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SalePreInvoiceForContractCheckInfoService {\r\n private baseUrl: string = \"/api/SalePreInvoiceForContractCheckInfos/\";\r\n public saveChechImageStatus: boolean = true;\r\n public salePreInvoiceCheckInfoDetail: SalePreInvoiceForContractCheckInfoModel = new SalePreInvoiceForContractCheckInfoModel();\r\n\r\n constructor(private http: HttpClient,\r\n private configurationsService: ConfigurationService) {\r\n }\r\n\r\n get UploadCustomerImages() {\r\n return this.configurationsService.baseUrl + this.baseUrl;\r\n }\r\n\r\n insertUploadCustomerImage(cMainCode: string, cSubCode: string, invoiceCode: string, formData) {\r\n return this.http.post(this.UploadCustomerImages + \"upload-customer-image-checkInfo/\" + cMainCode + \"/\" + cSubCode + \"/\" + invoiceCode, formData);\r\n }\r\n\r\n addOrUploadImageCustomerInfo(SaleCheckInfo): Observable {\r\n return this.http.post(this.UploadCustomerImages + \"add-or-upload-image-checkInfo\", SaleCheckInfo);\r\n }\r\n\r\n getSalePreInvoiceForContractCheckInfoList(invoiceCode: number, contractCode: number, currentYear: number): Observable {\r\n return this.http.get\r\n (this.UploadCustomerImages + \"get-sale-pre-invoice-for-contract-check-info-list/\" + invoiceCode + \"/\" + contractCode + \"/\" + currentYear);\r\n }\r\n\r\n getSalePreInvoiceForContractCheckInfoListByYear(currentYear: number): Observable {\r\n return this.http.get(this.UploadCustomerImages + \"get-sale-pre-invoice-for-contract-check-info-list/\" + currentYear);\r\n }\r\n\r\n getAllContractCheckInfoListByYear(currentYear: number): Observable {\r\n return this.http.get(this.UploadCustomerImages + \"get-all-contract-check-info-list/\" + currentYear);\r\n }\r\n\r\n updateSalePreInvoiceForContractCheckInfoStatus(SaleCheckInfo): Observable {\r\n return this.http.post(this.UploadCustomerImages + \"update-check-info-status\", SaleCheckInfo);\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\nimport * as moment from 'jalali-moment';\r\n\n@Pipe({\r\n name: 'showPersianDate',\n pure: true\n})\nexport class ShowPersianDate implements PipeTransform {\n\n //transform(date: string, args?: any): any {\n // return new Date(date).toLocaleDateString(\"fa-IR\");\n //}\n\n transform(value: any, args?: any): any {\r\n return moment(value).format('jYYYY/jMM/jDD');\r\n }\n \n}\n","import {Component, OnInit, ViewChild, Input, TemplateRef, ElementRef, ErrorHandler} from '@angular/core';\r\nimport {AlertService, MessageSeverity} from '../../services/alert.service';\r\nimport {Utilities} from '../../services/utilities';\r\nimport {SaleCustomer} from '../../models/SaleCustomer.model';\r\nimport {AccountService} from '../../services/account.service';\r\nimport {AuthService} from '../../services/auth.service';\r\nimport {Permission} from '../../models/permission.model';\r\nimport {group} from '../../models/group.model';\r\nimport {ViewModelUser} from '../../models/CMainCode.model';\r\nimport {Ostan} from '../../models/Ostan.model';\r\nimport {City} from '../../models/City.model';\r\nimport {DepoCode} from '../../models/DepoCode.model';\r\nimport {jqxGridComponent} from 'jqwidgets-ng/jqxgrid/public_api';\r\nimport {jqxPanelComponent} from 'jqwidgets-ng/jqxpanel/public_api';\r\nimport {WarehouseStoreInfoKardexComponent} from './warehousestore-info-kardex.component';\r\nimport {WarehouseStoreInfoBarcodesComponent} from './warehousestore-info-barcodes.component';\r\nimport {ModalDirective} from 'ngx-bootstrap/modal/public_api';\r\nimport {SelectionType} from '@swimlane/ngx-datatable';\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'goods-info',\r\n templateUrl: './goods-info.component.html',\r\n styleUrls: ['./goods-info.component.scss']\r\n})\r\nexport class goodsInfoComponent implements ErrorHandler, OnInit {\r\n searchnull: { name: string; };\r\n\r\n handleError(error: any): void {\r\n this.isError = true;\r\n }\r\n\r\n public SelectionType = SelectionType;\r\n public isEditMode = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public SaveCus = false;\r\n\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public isError = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public sale: SaleCustomer = new SaleCustomer();\r\n public allgroup: group[] = [];\r\n public allostan: Ostan[] = [];\r\n public allDepoCode: DepoCode[] = [];\r\n public gr: group = new group();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n\r\n public formResetToggle = true;\r\n public Loadgoods: boolean;\r\n\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allCity: City[] = [];\r\n public loadingIndicator: boolean = true;\r\n public rowsCache: DepoCode[] = [];\r\n public rows: DepoCode[] = [];\r\n sourceDepoCode: DepoCode;\r\n rowsSelect: DepoCode[] = [];\r\n public CMainCode: number;\r\n public CSubCode: number;\r\n public IdGroup: number;\r\n public Isreal: boolean;\r\n public Year: number;\r\n public DepCode: string;\r\n public OwnerBoolan = false;\r\n\r\n public usercode: number;\r\n public DCMainUnit: number;\r\n public TarazAll: number;\r\n public IsPrice: boolean;\r\n public myArrId: string[] = new Array();\r\n columns: any[] = [];\r\n selected: DepoCode[] = [];\r\n @Input() isViewOnly: boolean;\r\n @ViewChild('f', {static: false}) public form;\r\n @ViewChild('cName', {static: false}) public cName;\r\n @ViewChild('group', {static: false}) public group;\r\n @ViewChild('cPublicCode', {static: false}) public cPublicCode;\r\n\r\n @ViewChild('cTel', {static: false})\r\n public cTel;\r\n\r\n @ViewChild('cAddress', {static: false})\r\n public cAddress;\r\n\r\n @ViewChild('cOstan', {static: false})\r\n public cOstan;\r\n\r\n @ViewChild('cCity', {static: false})\r\n public cCity;\r\n\r\n @ViewChild('rolesSelector', {static: false})\r\n public rolesSelector;\r\n\r\n @ViewChild('CitySelector', {static: false})\r\n public CitySelector;\r\n\r\n @ViewChild('indexTemplate', {static: true})\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', {static: true})\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('myGrid', {static: false}) myGrid: jqxGridComponent;\r\n\r\n @ViewChild('myPanel', {static: false}) myPanel: jqxPanelComponent;\r\n @ViewChild('eventsLog', {static: false}) eventsLog: ElementRef;\r\n @ViewChild('pagingInfo', {static: false}) pagingInfo: ElementRef;\r\n\r\n @ViewChild('groups', {static: true})\r\n cgroups: TemplateRef;\r\n\r\n @ViewChild('showkardexEditor', {static: false})\r\n showkardexEditor: WarehouseStoreInfoKardexComponent;\r\n\r\n @ViewChild('showbarcodesEditor', {static: false})\r\n showbarcodesEditor: WarehouseStoreInfoBarcodesComponent;\r\n\r\n @ViewChild('editorModalshowbarcodes', {static: true})\r\n editorModalshowbarcodes: ModalDirective;\r\n\r\n @ViewChild('editorModalshowkardex', {static: true})\r\n editorModalshowkardex: ModalDirective;\r\n\r\n @Input() isGeneralEditor = false;\r\n @Input() saleGroupItem;\r\n\r\n @ViewChild('countProduct') countProduct;\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private accountService: AccountService,\r\n private authService: AuthService) {\r\n }\r\n\r\n\r\n ngOnInit() {\r\n if (!this.isGeneralEditor) {\r\n this.loadCurrentGroupData();\r\n this.loadCurrentOstanData();\r\n }\r\n this.searchnull = {name: \"0\"};\r\n }\r\n\r\n private loadCurrentGroupData() {\r\n this.alertService.startLoadingMessage();\r\n if (this.canAssignGroups) {\r\n this.accountService.getgroups().subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n }\r\n }\r\n\r\n private loadCurrentOstanData() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getostans().subscribe(results => this.onCurrentUserDataLoadOstanSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n get CanManageCustomer() {\r\n return this.accountService.userHasPermission(Permission.manageCustomerPermission);\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.depCode, r.dcDesc));\r\n }\r\n\r\n onCheckboxChange(e) {\r\n if (e.target.checked) {\r\n this.rows = this.rowsCache.filter(r => r.remanid > 0);\r\n\r\n } else {\r\n this.rows = this.rowsCache;\r\n\r\n }\r\n }\r\n\r\n updateValue(event, row) {\r\n if ((event.target.value !== '') && (+event.target.value > 0)) {\r\n if (+row.remanid >= +event.target.value) {\r\n row.count = event.target.value;\r\n this.selected.push(row);\r\n } else {\r\n _.remove(this.selected, function(item) {\r\n return item.depCode === row.depCode;\r\n });\r\n const elemnent = event.target as HTMLInputElement;\r\n elemnent.value = '';\r\n this.alertService.showMessage('انتقال', 'تعداد درخواستی از موجودی انبار بیشتر می باشد', MessageSeverity.error);\r\n }\r\n } else {\r\n _.remove(this.selected, function(item) {\r\n return item.depCode === row.depCode;\r\n });\r\n }\r\n this.selected = [...this.selected];\r\n }\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n if (this.isNewCustomer) {\r\n this.accountService.getCSubCode(this.authService.currentUser.id).subscribe(res => this.MethodSubCode(res[0], res[1]));\r\n } else {\r\n this.accountService.updateCustomer(this.sale).subscribe(s => this.saveSuccessHelper(this.sale), error => this.saveFailedHelper(error));\r\n }\r\n }\r\n\r\n MethodSubCode(maincode: number, subcode: number) {\r\n this.sale.cSubCode = subcode;\r\n this.sale.cMainCode = maincode;\r\n this.accountService.newCustomer(this.sale).subscribe(s => this.saveSuccessHelper(this.sale), error => this.saveFailedHelper(error));\r\n }\r\n\r\n cancel() {\r\n this.showValidationErrors = false;\r\n this.alertService.showMessage('انتقال', 'کالاها به بخش فاکتور منتقل گردید', MessageSeverity.success);\r\n this.alertService.resetStickyMessage();\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n\r\n public LoadDepoCode() {\r\n this.loadingIndicator = true;\r\n this.accountService.getVirtualWarehouseInventory(\r\n this.Year, this.DepCode, this.usercode,\r\n this.DCMainUnit, this.TarazAll, this.IsPrice,\r\n this.saleGroupItem, this.CMainCode)\r\n .subscribe(results => {\r\n this.onDataLoadSuccessful(results);\r\n },\r\n error => this.onDataLoadFailed(error));\r\n }\r\n\r\n onDataLoadSuccessful(DepoCodeObj: DepoCode[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n DepoCodeObj.forEach((user, index, SaleCustomer) => {\r\n (user as any).index = index + 1;\r\n var currencyFormatter = require('currency-formatter');\r\n user.pPrice = currencyFormatter.format(user.pPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n this.selected.forEach((row, index) => {\r\n if (user.depCode === row.depCode) {\r\n user.selected = 'checked';\r\n }\r\n });\r\n\r\n });\r\n this.rowsCache = [...DepoCodeObj];\r\n this.rows = DepoCodeObj;\r\n this.Loadgoods = true;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n private onCurrentUserDataLoadSuccessful(groups: group[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allgroup = groups;\r\n }\r\n\r\n private onCurrentUserDataLoadOstanSuccessful(ostans: Ostan[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allostan = ostans;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n this.gr = new group();\r\n }\r\n\r\n\r\n onChange(number?: number) {\r\n this.accountService.getCity(number).subscribe(res => this.onLoadcity(res));\r\n }\r\n\r\n onLoadcity(citys: City[]) {\r\n this.allCity = citys;\r\n this.CitySelector.refresh();\r\n }\r\n\r\n private saveSuccessHelper(sale?: SaleCustomer) {\r\n this.testIsRoleUserCountChanged(this.sale, this.sale);\r\n if (sale) {\r\n Object.assign(this.sale, sale);\r\n }\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n Object.assign(this.sale, this.sale);\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.SaveCus = true;\r\n this.alertService.showMessage('Success', `مشتری با موفقیت ایجاد شد`, MessageSeverity.success);\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات مشتری با موفقیت انجام شد`, MessageSeverity.success);\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به مشتری با موفقیت ثبت شد', MessageSeverity.success);\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n private testIsRoleUserCountChanged(currentUser: SaleCustomer, editedUser: SaleCustomer) {\r\n\r\n const rolesAdded = this.isNewCustomer ? editedUser.group : editedUser.group.filter(role => currentUser.group.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewCustomer ? [] : currentUser.group.filter(role => editedUser.group.indexOf(role) == -1);\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n\r\n getGroupByName(name: string) {\r\n return this.allgroup.find((r) => r.NameGroup == name);\r\n }\r\n\r\n getOstanByName(name: string) {\r\n return this.allostan.find((r) => r.Name == name);\r\n }\r\n\r\n\r\n editcustomer(row: DepoCode) {\r\n this.sourceDepoCode = row;\r\n }\r\n\r\n\r\n private setGroups(sale: SaleCustomer, allgroups?: group[]) {\r\n\r\n this.allgroup = allgroups ? [...allgroups] : [];\r\n if (sale.group) {\r\n for (const ur of sale.group) {\r\n if (!this.allgroup.some(r => r.NameGroup == ur)) {\r\n this.allgroup.unshift(new group(ur));\r\n }\r\n }\r\n }\r\n if (allgroups == null || this.allgroup.length != allgroups.length) {\r\n setTimeout(() => {\r\n if (this.rolesSelector) {\r\n this.rolesSelector.refresh();\r\n }\r\n });\r\n }\r\n }\r\n\r\n ShowBarCodes(row: DepoCode) {\r\n this.showbarcodesEditor.productcode = row.depCode;\r\n this.showbarcodesEditor.productname = row.dcDesc;\r\n this.showbarcodesEditor.productUOM = \"\";\r\n this.showbarcodesEditor.depocode = this.DepCode;\r\n this.showbarcodesEditor.loadingIndicator = true;\r\n this.showbarcodesEditor.isGeneralEditor = true;\r\n\r\n this.showbarcodesEditor.loadBarcoded();\r\n this.editorModalshowbarcodes.show();\r\n }\r\n\r\n ShowKardex(row: DepoCode) {\r\n this.showkardexEditor.productcode = row.depCode;\r\n this.showkardexEditor.productname = row.dcDesc;\r\n this.showkardexEditor.productUOM = \"\";\r\n this.showkardexEditor.depocode = this.DepCode;\r\n this.showkardexEditor.loadingIndicator = true;\r\n this.showkardexEditor.isGeneralEditor = true;\r\n\r\n this.showkardexEditor.loadKardexProduct();\r\n this.editorModalshowkardex.show();\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.showbarcodesEditor.resetData();\r\n this.showkardexEditor.resetData();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n >\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ rowIndex + 1 }}\r\n \r\n \r\n ردیف\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ 'InvoiceSale.NewInvoice.Number' | translate }}\r\n \r\n \r\n \r\n \r\n \r\n {{ value }} \r\n {{ value }} \r\n \r\n \r\n \r\n {{ 'InvoiceSale.editor.ProductCode' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.editor.ProductName' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n قیمت \r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n هزینه\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n قمیت آرسام\r\n \r\n \r\n \r\n \r\n {{ value }} \r\n \r\n \r\n مقدار مانده\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n شناسه کالا\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n کد گروه\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n قمیت فروشگاه کل\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n قیمت آرسام کل\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n هزینه کل\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n قیمت پایه کل\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n

لیست بارکدها\r\n - {{ showbarcodesEditor.productcode }}

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

کاردکس کالا - {{ showkardexEditor.productcode }}\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\nexport class RequestInvoiceProductBarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(reqpbYear?: number, reqpbCode?: number, reqpbProductCode?: string\n , reqpbBarCode?: string\n , reqpbDealercode?: string\n , reqpbSocode?: number\n\n ) {\n this.reqpbYear = reqpbYear;\n this.reqpbCode = reqpbCode;\n this.reqpbProductCode = reqpbProductCode;\n this.reqpbBarCode = reqpbBarCode;\n this.reqpbDealercode = reqpbDealercode;\n this.reqpbSocode = reqpbSocode;\n }\n public reqpbYear: number;\n public reqpbCode: number;\n public reqpbProductCode: string;\n public reqpbBarCode: string;\n public reqpbDealercode: string;\n public reqpbSocode: number;\n\n}\n","\n\nexport type PermissionNames =\n 'View Users' | 'Manage Users' |\n 'View Roles' | 'Manage Roles' | 'Assign Roles' | 'Manage Customer' | 'View Customer' | 'Assign Group' |\n 'View InvoiceSale' | 'Manage InvoiceSale' | 'Taeed Payam' | 'Manage Contract' | 'Accept Contract' | 'Ghabol Ghrardad' | 'View Report' | 'View Car' | 'View Driver' | 'Manage Tadarokat' | 'View Depo' | 'Manage Resid' | 'Manage Tasviyeh' | 'Manage Marjo' | 'Depo Assignment' | 'Product Tadarokat' | 'Fail Tadarokat' | 'show Tadarokat' | 'Accept Tadarokat' | 'Notaccept Tadarokat' | 'Manage Commission' | 'Moneydealer accept' | 'Report sale' | 'Report salegroup' | 'Request invoice' | 'Rial receipt' | 'View Suplies' | 'Cash Desk' |\n 'Ntsw Show' | 'Access SaleManage'\n | 'Customer Installment' | 'Check Installment';\nexport type PermissionValues =\n 'users.view' | 'users.manage' |\n 'roles.view' | 'roles.manage' | 'roles.assign' | 'Customer.manage' | 'Customer.View' | 'group.assign' |\n 'InvoiceSale.View' | 'InvoiceSale.manage' | 'Payam.taeed' | 'Contract.manage' | 'Contract.accept' | 'Ghrardad.ghabol' | 'report.view' | 'car.view' | 'driver.view' | 'manage.tadarokat' | 'depo.view' | 'resid.manage' | 'tasviyeh.manage' | 'marjo.manage' | 'assignment.depo' | 'tadarokat.product' | 'tadarokat.fail' | 'tadarokat.show' | 'tadarokat.accept' | 'tadarokat.notaccept' | 'commission.manage' | 'accept.moneydealer' | 'sale.report' | 'salegroup.report' | 'invoice.request' | 'receipt.rial' | 'suplies.view' | 'cash.desk' |\n 'show.ntsw' | 'sale.accessmanage'\n | 'Installment.Customer' | 'Installment.Check';\n\nexport class Permission {\n\n public static readonly viewUsersPermission: PermissionValues = 'users.view';\n public static readonly manageUsersPermission: PermissionValues = 'users.manage';\n public static readonly viewRolesPermission: PermissionValues = 'roles.view';\n public static readonly manageRolesPermission: PermissionValues = 'roles.manage';\n public static readonly assignRolesPermission: PermissionValues = 'roles.assign';\n public static readonly manageCustomerPermission: PermissionValues = 'Customer.manage';\n public static readonly ViewCustomerPermission: PermissionValues = 'Customer.View';\n public static readonly assognGroupsPermisson: PermissionValues = 'group.assign';\n public static readonly ViewInvoiceSalePermisson: PermissionValues = 'InvoiceSale.View';\n public static readonly manageInvoiceSalePermisson: PermissionValues = 'InvoiceSale.manage';\n public static readonly taeedpreInvoice: PermissionValues = 'Payam.taeed';\n public static readonly ContractManage: PermissionValues = 'Contract.manage';\n public static readonly AcceptContract: PermissionValues = 'Contract.accept';\n public static readonly GhabolGharardad: PermissionValues = 'Ghrardad.ghabol';\n public static readonly ViewReportPermission: PermissionValues = 'report.view';\n public static readonly ViewCarPermission: PermissionValues = 'car.view';\n public static readonly ViewDriverPermission: PermissionValues = 'driver.view';\n public static readonly ManageTadarokatPermission: PermissionValues = 'manage.tadarokat';\n public static readonly tadarokatProductPermission: PermissionValues = 'tadarokat.product';\n public static readonly ViewDepoPermission: PermissionValues = 'depo.view';\n public static readonly ManageResidPermission: PermissionValues = 'resid.manage';\n public static readonly ManageTasviyehPermission: PermissionValues = 'tasviyeh.manage';\n public static readonly ManageMarjoPermission: PermissionValues = 'marjo.manage';\n public static readonly DepoAssignmentPermission: PermissionValues = 'assignment.depo';\n\n public static readonly ManageCommissionPermission: PermissionValues = 'commission.manage';\n public static readonly acceptmoneydealerPermission: PermissionValues = 'accept.moneydealer';\n\n public static readonly tadarokatfailPermission: PermissionValues = 'tadarokat.fail';\n public static readonly tadarokatshowPermission: PermissionValues = 'tadarokat.show';\n public static readonly tadarokatacceptPermission: PermissionValues = 'tadarokat.accept';\n public static readonly tadarokatnotacceptPermission: PermissionValues = 'tadarokat.notaccept';\n\n public static readonly SalereportPermission: PermissionValues = 'sale.report';\n public static readonly SalegroupreportPermission: PermissionValues = 'salegroup.report';\n public static readonly RequestInvoicePermission: PermissionValues = 'invoice.request';\n\n public static readonly RialReceiptPermission: PermissionValues = 'receipt.rial';\n public static readonly ViewSupliesPermission: PermissionValues = 'suplies.view';\n public static readonly CashDeskPermission: PermissionValues = 'cash.desk';\n\n public static readonly ViewNtswShow: PermissionValues = 'show.ntsw';\n public static readonly SaleManageAccess: PermissionValues = 'sale.accessmanage';\n\n public static readonly InstallmentCustomerAccess: PermissionValues = 'Installment.Customer';\n public static readonly InstallmentCheckAccess: PermissionValues = 'Installment.Check';\n\n \n\n constructor(name?: PermissionNames, value?: PermissionValues, groupName?: string, description?: string) {\n this.name = name;\n this.value = value;\n this.groupName = groupName;\n this.description = description;\n }\n\n public name: PermissionNames;\n public value: PermissionValues;\n public groupName: string;\n public description: string;\n}\n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms';\nimport { fadeInOut } from '../../services/animations';\nimport { AppTranslationService } from '../../services/app-translation.service';\n\n@Component({\n selector: 'reference-reports-info',\n templateUrl: './reference-reports-info.component.html',\n animations: [fadeInOut]\n})\nexport class ReferenceReportsInfoComponent implements OnInit {\n reportsForm: FormGroup;\n loadingIndicator: boolean = true;\n rows: any[] = [];\n columns: any[];\n\n constructor(private formBuilder: FormBuilder, private translationService: AppTranslationService) { }\n\n ngOnInit() {\n this.reportsForm = this.formBuilder.group({\n 'fromResidNumber': new FormControl(''),\n 'untilResidNumber': new FormControl(''),\n 'fromDate': new FormControl(''),\n 'untilDate': new FormControl(''),\n 'fromProductCode': new FormControl(''),\n 'untilProductCode': new FormControl(''),\n 'customerName': new FormControl(''),\n 'subGroupName': new FormControl(''),\n })\n const gT = (key: string) => this.translationService.getTranslation(key);\n this.columns = [\n { prop: 'index', name: gT('ردیف'), width: 65 },\n { prop: 'dcCode', name: gT('شماره رسید'), width: 120 },\n { prop: 'dcDesc', name: gT('تاریخ رسید'), width: 120 },\n { prop: 'dpuName', name: gT('کد کالا'), width: 120 },\n { prop: 'sum_input', name: gT('شرح کالا'), width: 120 },\n { prop: 'sum_output', name: gT('واحد کالا'), width: 120 },\n { prop: 'remanid', name: gT('مقدار رسید'), width: 120 },\n { prop: 'pPrice', name: gT('کد مشتری'), width: 120 },\n { prop: 'mojodiriyali', name: gT('نام مشتری'), width: 120 },\n ]\n }\n\n submitReportsForm() {\n this.reportsForm.reset();\n }\n}\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-single-product',\n templateUrl: './single-product.component.html',\n styleUrls: ['./single-product.component.scss']\n})\nexport class SingleProductComponent implements OnInit {\n\n price = 1234567.5.toLocaleString();\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n تخفیف ویژه جشنواره\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n دریل لورم ایپسوم لورم ایپسوم لورم ایپسوم دریل لورم ایپسوم لورم ایپسوم لورم ایپسوم\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n نمایش نظرات\r\n نمایش پرسش و پاسخ\r\n
\r\n
\r\n

\r\n لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است. چاپگرو برای شرایط فعلی تکنولوژی مورد نیاز و کاربردهای متنوع با هدف بهبود\r\n

\r\n
\r\n
    \r\n
  • ویژگی 1
  • \r\n
  • ویژگی 2
  • \r\n
  • ویژگی 3
  • \r\n
  • ویژگی 4
  • \r\n
\r\n نمایش بیشتر\r\n
\r\n
\r\n
\r\n نمایش همه محصولات برند\r\n دریل\r\n
\r\n
\r\n\r\n
\r\n
\r\n

{{price}}

تومان \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n ...\r\n
\r\n\r\n
...
\r\n
...
\r\n
\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 default __webpack_public_path__ + \"banner4.png\";","/* (ignored) */","\n\nimport { Injectable } from '@angular/core';\nimport { Router, NavigationEnd, PRIMARY_OUTLET } from '@angular/router';\nimport { Subscription } from 'rxjs';\nimport { filter, map, flatMap } from 'rxjs/operators';\nimport { Title } from '@angular/platform-browser';\n\nimport { Utilities } from './utilities';\n\n\n@Injectable()\nexport class AppTitleService {\n\n sub: Subscription;\n appName: string;\n\n constructor(private titleService: Title, private router: Router) {\n this.sub = this.router.events.pipe(\n filter(event => event instanceof NavigationEnd),\n map(_ => this.router.routerState.root),\n map(route => {\n while (route.firstChild) {\n route = route.firstChild;\n }\n\n return route;\n }),\n flatMap(route => route.data))\n .subscribe(data => {\n let title = data.title;\n\n if (title) {\n const fragment = this.router.url.split('#')[1];\n\n if (fragment) {\n title += ' | ' + Utilities.toTitleCase(fragment);\n }\n }\n\n if (title && this.appName) {\n title += ' - ' + this.appName;\n } else if (this.appName) {\n title = this.appName;\n }\n\n if (title) {\n this.titleService.setTitle(title);\n }\n });\n }\n\n}\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ConfigurationService } from '../configuration.service';\r\nimport { SaleCustomerImageModel } from '../../models/SaleCustomerImage.model';\r\nimport { SaleCustomerImageInfoModel } from '../../models/SaleCustomerImageInfo.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SaleCustomerImageInfosService {\r\n baseUrl: string = \"/api/SaleCustomerImageInfos/\";\r\n get UploadCustomerImages() { return this.baseUrl }\r\n\r\n constructor(\r\n private configurations: ConfigurationService,\r\n private http: HttpClient) { }\r\n\r\n customerInfosByImage(): Observable {\r\n return this.http.get(this.UploadCustomerImages + \"get-customer-infos-by-image-infos\");\r\n }\r\n\r\n getCustomerImageInfos(cMainCode: number, cSubCode: number): Observable {\r\n return this.http.get(this.UploadCustomerImages + \"get-customer-image-infos/\" + cMainCode + \"/\" + cSubCode);\r\n }\r\n\r\n uploadCustomerImages(cMainCode: string, cSubCode: string, formData) {\r\n return this.http.post(this.UploadCustomerImages + \"upload-customer-image/\" + cMainCode + \"/\" + cSubCode, formData);\r\n }\r\n\r\n addOrUploadImageCustomerInfo(SaleCustomerImageInfo): Observable {\r\n return this.http.post(this.UploadCustomerImages + \"add-or-upload-image-customerInfo\", SaleCustomerImageInfo);\r\n }\r\n\r\n updateCustomerImage(updateData: SaleCustomerImageModel[]) {\r\n return this.http.post(this.UploadCustomerImages + 'update-customer-image-status-id', updateData);\r\n }\r\n\r\n statusSaleCustomerDocuments(cMainCode: number, cSubCode: number) {\r\n return this.http.get(this.UploadCustomerImages + \"get-status-sale-customer-documents/\" + cMainCode + \"/\" + cSubCode)\r\n }\r\n\r\n}\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { Observable } from 'rxjs';\r\nimport { HttpEventType, HttpResponse } from '@angular/common/http';\r\nimport { FileUploadService } from '../../services/file-upload.service';\r\n\r\n@Component({\n selector: 'record-customer-checks-info',\n templateUrl: './record-customer-checks-info.component.html',\n styleUrls: ['./record-customer-checks-info.component.scss']\n})\nexport class RecordCustomerChecksInfoComponent implements OnInit {\n //public checkForm: FormGroup;\n //public customerChecksImageUrl: File;\n //public show: boolean = true;\n\n //@ViewChild('customerChecks', { static: true }) customerChecks: ElementRef;\n\n //constructor(private formBuilder: FormBuilder) {}\n\n //public ngOnInit() {\n // this.checkForm = this.formBuilder.group({\r\n // customerChecks: new FormControl('')\r\n // })\r\n //}\n\n //get fChecks() {\r\n // return this.checkForm.controls;\r\n //}\n\n //public submitCheckForm() {\n // console.log(this.checkForm.value)\n //}\n\n //public onSelectbCustomerChecksFile(event: any) {\n // if (event.target.files && event.target.files) {\n // var reader = new FileReader();\n // reader.onload = (event: any) => {\r\n // this.customerChecksImageUrl = event.target.result;\n // }\n // reader.readAsDataURL(event.target.files[0]);\n // }\r\n //}\n\n //public deleteCustomerChecks() {\n // this.customerChecks.nativeElement.value = null;\n // delete this.customerChecksImageUrl;\n //}\n selectedFiles?: FileList;\r\n selectedFileNames: string[] = [];\r\n\r\n progressInfos: any[] = [];\r\n message: string[] = [];\r\n\r\n previews: string[] = [];\r\n imageInfos?: Observable;\r\n public installmentData: any;\r\n public columns: any[] = [];\r\n public loadingIndicator: boolean = false;\r\n\r\n constructor(private uploadService: FileUploadService) { }\r\n\r\n ngOnInit(): void {\r\n //this.imageInfos = this.uploadService.getFiles();\r\n }\r\n\r\n selectFiles(event: any): void {\r\n this.message = [];\r\n this.progressInfos = [];\r\n this.selectedFileNames = [];\r\n this.selectedFiles = event.target.files;\r\n\r\n this.previews = [];\r\n if (this.selectedFiles && this.selectedFiles[0]) {\r\n const numberOfFiles = this.selectedFiles.length;\r\n for (let i = 0; i < numberOfFiles; i++) {\r\n const reader = new FileReader();\r\n\r\n reader.onload = (e: any) => {\r\n this.previews.push(e.target.result);\r\n };\r\n\r\n reader.readAsDataURL(this.selectedFiles[i]);\r\n\r\n this.selectedFileNames.push(this.selectedFiles[i].name);\r\n }\r\n }\r\n }\r\n\r\n upload(idx: number, file: File): void {\r\n this.progressInfos[idx] = { value: 0, fileName: file.name };\r\n\r\n if (file) {\r\n this.uploadService.upload(file).subscribe(\r\n (event: any) => {\r\n if (event.type === HttpEventType.UploadProgress) {\r\n this.progressInfos[idx].value = Math.round(\r\n (100 * event.loaded) / event.total\r\n );\r\n } else if (event instanceof HttpResponse) {\r\n const msg = 'Uploaded the file successfully: ' + file.name;\r\n this.message.push(msg);\r\n this.imageInfos = this.uploadService.getFiles();\r\n }\r\n },\r\n (err: any) => {\r\n this.progressInfos[idx].value = 0;\r\n const msg = 'Could not upload the file: ' + file.name;\r\n this.message.push(msg);\r\n }\r\n );\r\n }\r\n }\r\n\r\n uploadFiles(): void {\r\n this.message = [];\r\n\r\n if (this.selectedFiles) {\r\n for (let i = 0; i < this.selectedFiles.length; i++) {\r\n this.upload(i, this.selectedFiles[i]);\r\n }\r\n }\r\n }\n}\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ردیفآپلودتاریخ پرداختمبلغ قسط
{{i + 1}}\r\n
\r\n {{ progressInfo.fileName }}\r\n \r\n \r\n {{ progressInfo.value }}%\r\n \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.dateInstallments}}{{item.amountInstallments | number}}ریال
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
    \r\n
  • {{ msg }}
  • \r\n
\r\n
\r\n \r\n \r\n List of Images\r\n \r\n \r\n \r\n \r\n

{{ image.name }}

\r\n \"{{\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { AddressComponent } from './../address/address.component';\r\nimport { CustomerClub } from './../../models/CustomerClub.model';\r\nimport { concat, of } from 'rxjs';\r\nimport { Address } from './../../models/Address';\r\nimport { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { group } from '../../models/group.model';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\nimport { SaleCustomerService } from '../../services/SaleCustomer.service';\r\nimport { Ostan } from '../../models/Ostan.model';\r\nimport { City } from '../../models/City.model';\r\nimport { RepresentCode } from '../../models/RepresentCode.model';\r\nimport { HesabTafzili } from '../../models/HesabTafzili.model';\r\nimport { NationalCodeService } from '../../services/national-code.service';\r\nimport { CustomerClubService } from '../../services/base-services/customer-club.service';\r\n\r\n@Component({\r\n selector: 'customer-info',\r\n templateUrl: './customer-info.component.html'\r\n})\r\nexport class customerInfoComponent implements OnInit {\r\n\r\n public isReadonly = false;\r\n public isEditMode = false;\r\n public isNewCustomer = false; \r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public sale: SaleCustomer = new SaleCustomer();\r\n public customerClub: CustomerClub = new CustomerClub();\r\n customerClubID: number;\r\n public HesabTafzili: HesabTafzili = new HesabTafzili();\r\n public cOwnerCode: number;\r\n public allgroup: group[] = [];\r\n public allostan: Ostan[] = [];\r\n public gr: group = new group();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public AllowEdit = false;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allCity: City[] = [];\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n provinces: Ostan[];\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n @ViewChild('cName', { static: false })\r\n public cName;\r\n\r\n @ViewChild('group', { static: false })\r\n public group;\r\n\r\n @ViewChild('cPublicCode', { static: false })\r\n public cPublicCode;\r\n\r\n @ViewChild('cPostalCode', { static: false })\r\n public cPostalCode;\r\n\r\n\r\n @ViewChild('cTel', { static: false })\r\n public cTel;\r\n\r\n @ViewChild('cAddress', { static: false })\r\n public cAddress;\r\n\r\n @ViewChild('cOstan', { static: false })\r\n public cOstan;\r\n\r\n @ViewChild('cCity', { static: false })\r\n public cCity;\r\n\r\n @ViewChild('rolesSelector', { static: false })\r\n public rolesSelector;\r\n\r\n @ViewChild('CitySelector', { static: false })\r\n public CitySelector;\r\n\r\n @ViewChild('address') address: AddressComponent;\r\n\r\n nationalCodeValid = true;\r\n public customerAddressList: Address[] = [];\r\n constructor(\r\n private alertService: AlertService,\r\n private accountService: AccountService,\r\n private authService: AuthService,\r\n private SaleCustomerService: SaleCustomerService,\r\n private nationalCodeService: NationalCodeService,\r\n private customerClubService: CustomerClubService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n //if (!this.isGeneralEditor) {\r\n this.loadCurrentGroupData();\r\n //this.loadCurrentOstanData();\r\n //}\r\n this.cOwnerCode = 1;\r\n\r\n }\r\n changereal() {\r\n this.isreal = true;\r\n this.cOwnerCode = 1;\r\n }\r\n changeLegal() {\r\n this.isreal = false;\r\n this.cOwnerCode = 2;\r\n }\r\n close() { }\r\n save() {\r\n if (this.nationalCodeValid) {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n if (this.isNewCustomer) {\r\n this.accountService.getCSubCode(this.authService.currentUser.id)\r\n .subscribe(res => {\r\n concat(\r\n of(this.MethodSubCode(res[0], res[1])),\r\n of(this.address.resetAddress())\r\n )\r\n });\r\n }\r\n else {\r\n concat(\r\n of(this.customerClub.customerName = this.sale.cName),\r\n of(this.accountService.UpdateCustomerClub(this.customerClub).subscribe()),\r\n of(this.updateAddress()),\r\n of(this.address.resetAddress())\r\n )\r\n this.accountService.updateCustomer(this.sale).subscribe(s => this.saveSuccessHelper(this.sale), error => this.saveFailedHelper(error));\r\n }\r\n } else {\r\n this.alertService.showMessage('هشدار', ' کد ملی وارد شده معتبر نمی باشد', MessageSeverity.error);\r\n }\r\n }\r\n updateAddress() {\r\n this.customerAddressList.forEach(address => {\r\n if (address.aCustomerID == null) {\r\n this.accountService.newAddress(new Address(address.aaddress, address.alat, address.along, address.apostalCode, this.customerClub.customerID)).subscribe();\r\n } else {\r\n this.accountService.UpdateAddress(address).subscribe();\r\n }\r\n });\r\n }\r\n\r\n MethodSubCode(maincode: number, subcode: number) {\r\n this.sale.cSubCode = subcode;\r\n this.sale.cMainCode = maincode;\r\n this.accountService.getRepresentCode(12)\r\n .subscribe(s => this.GetRepresentCodenew(s), error => this.saveFailedHelper(error));\r\n }\r\n getAddress(value) {\r\n this.customerAddressList = value;\r\n }\r\n\r\n checkNationalCode() {\r\n this.nationalCodeValid = true;\r\n if ((this.sale.cPublicCode != '') && (this.sale.cPublicCode != undefined)) {\r\n let nationalCode = this.nationalCodeService.checkNationalCode(this.sale.cPublicCode);\r\n if (nationalCode != 0) {\r\n if (nationalCode == 1) {\r\n this.alertService.showMessage('هشدار', 'کد ملی باید بصورت عددی وارد شود.', MessageSeverity.error);\r\n } else if (nationalCode == 2) {\r\n this.alertService.showMessage('هشدار', 'تعداد کاراکترهای کد ملی کمتر از ده رقم می باشد.', MessageSeverity.error);\r\n } else if (nationalCode == 3) {\r\n this.alertService.showMessage('هشدار', 'اعتبار سنجی کد ملی اشتباه می باشد.', MessageSeverity.error);\r\n } else if (nationalCode == 4) {\r\n this.alertService.showMessage('هشدار', 'لطفا کد ملی را درست وارد کنید.', MessageSeverity.error);\r\n }\r\n this.showValidationErrors = true;\r\n window.document.getElementById(\"cPublicCode-\" + this.uniqueId + \"\").focus();\r\n this.nationalCodeValid = false;\r\n } else {\r\n if (!this.isGeneralEditor) {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(findcMain => {\r\n this.customerClubService.getCustomerClubByNationalCode(this.sale.cPublicCode, findcMain).subscribe(res => {\r\n if (res) {\r\n window.document.getElementById(\"cPublicCode-\" + this.uniqueId + \"\").focus();\r\n this.alertService.showMessage('هشدار', ' کد ملی وارد شده از قبل در سیستم موجود می باشد', MessageSeverity.error);\r\n this.nationalCodeValid = false;\r\n }\r\n }, (err) => { });\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n addAddressClub(customerID, e: SaleCustomer) {\r\n this.checkNationalCode();\r\n this.accountService.newCustomerClub(\r\n new CustomerClub(customerID, e.cName, e.cAddress, e.cTel, e.cMainCode, e.cSubCode, e.cPublicCode))\r\n .subscribe(\r\n a => {\r\n if (this.customerAddressList.length > 0) {\r\n this.customerAddressList.forEach(address => {\r\n this.accountService.newAddress(new Address(address.aaddress, null, null, address.apostalCode, customerID)).subscribe()\r\n })\r\n }\r\n });\r\n }\r\n\r\n GetRepresentCodenew(Codenew: RepresentCode) {\r\n this.sale.cRepresentCode = Number(Codenew);\r\n this.sale.cOwnerCode = this.cOwnerCode;\r\n this.accountService.newCustomer(this.sale).\r\n subscribe(s => {\r\n this.accountService.GetNewCustomerClubID().subscribe(\r\n a => this.addAddressClub(a, s)\r\n )\r\n this.saveSuccessHelper(this.sale)\r\n },\r\n error => this.saveFailedHelper(error)\r\n ),\r\n this.HesabTafzili.HTCode = String(Codenew);\r\n this.HesabTafzili.HTName = this.sale.cName;\r\n this.HesabTafzili.HTGCode = 12;\r\n this.accountService.newHesabtafzili(this.HesabTafzili).subscribe(s => this.saveHesabTafzili(), error => this.saveFailedHelper(error));\r\n }\r\n\r\n saveHesabTafzili() {\r\n\r\n }\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n this.sale = this.sale = new SaleCustomer();\r\n } else {\r\n this.sale = new SaleCustomer();\r\n }\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.address.resetAddress();\r\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('ذخیره اطلاعات', 'خطا در درج اطلاعات رخ داده است:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n private loadCurrentGroupData() {\r\n this.alertService.startLoadingMessage();\r\n if (this.canAssignGroups) {\r\n this.accountService.getgroups().subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n\r\n }\r\n }\r\n\r\n //private loadCurrentOstanData() {\r\n // this.alertService.startLoadingMessage();\r\n // this.accountService.getostans().subscribe(\r\n // results => {\r\n // this.alertService.stopLoadingMessage();\r\n // this.allostan = results;\r\n // //this.onCurrentUserDataLoadOstanSuccessful(results)\r\n // },\r\n // error => this.onCurrentUserDataLoadFailed(error));\r\n //}\r\n\r\n private onCurrentUserDataLoadSuccessful(groups: group[]) {\r\n this.alertService.stopLoadingMessage();\r\n //this.allgroup = groups;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n this.gr = new group();\r\n }\r\n\r\n newCustomer(allostan: Ostan[], allgroup?: group[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.sale = new SaleCustomer();\r\n // this.allgroup = [...allgroup];\r\n this.allostan = [...allostan];\r\n this.address.resetAddress();\r\n this.edit();\r\n return this.sale;\r\n }\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.sale = new SaleCustomer();\r\n Object.assign(this.sale, this.sale);\r\n } else {\r\n if (!this.sale) {\r\n this.sale = new SaleCustomer();\r\n }\r\n }\r\n this.isEditMode = true;\r\n }\r\n\r\n onChange(number?: number) {\r\n this.accountService.getCity(number).subscribe(res => this.onLoadcity(res));\r\n }\r\n\r\n onLoadcity(citys: City[]) {\r\n this.allCity = citys;\r\n this.CitySelector.refresh();\r\n }\r\n\r\n private saveSuccessHelper(sale?: SaleCustomer) {\r\n this.testIsRoleUserCountChanged(this.sale, this.sale);\r\n if (sale) {\r\n Object.assign(this.sale, sale);\r\n }\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n Object.assign(this.sale, this.sale);\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('', `مشتری با موفقیت ایجاد شد`, MessageSeverity.success);\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('', `تغییرات مشتری با موفقیت انجام شد`, MessageSeverity.success);\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('', 'تغییرات مربوط به مشتری با موفقیت ثبت شد', MessageSeverity.success);\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n private testIsRoleUserCountChanged(currentUser: SaleCustomer, editedUser: SaleCustomer) {\r\n\r\n //const rolesAdded = this.isNewCustomer ? editedUser.group : editedUser.group.filter(role => currentUser.group.indexOf(role) == -1);\r\n //const rolesRemoved = this.isNewCustomer ? [] : currentUser.group.filter(role => editedUser.group.indexOf(role) == -1);\r\n // const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n // if (modifiedRoles.length) {\r\n // setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n // }\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n\r\n getGroupByName(name: string) {\r\n return this.allgroup.find((r) => r.NameGroup == name);\r\n }\r\n\r\n getOstanByName(name: string) {\r\n return this.allostan.find((r) => r.Name == name);\r\n }\r\n\r\n CheckAllowEditCustomer(Csub: number, CpartCode: number) {\r\n this.accountService.GetAcceptContract(CpartCode, Csub).subscribe(results => this.checkAcceptCustomer(results), error => this.saveErrorFaild(error));\r\n }\r\n checkAcceptCustomer(res: boolean) {\r\n if (res) {\r\n this.AllowEdit = true;\r\n }\r\n else {\r\n this.AllowEdit = false;\r\n }\r\n }\r\n saveErrorFaild(error: any) {\r\n }\r\n editcustomer(sale: SaleCustomer, allostan: Ostan[], allgroup?: group[], customer?: CustomerClub) {\r\n if (sale) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = false;\r\n if (sale.cRegisterCode != null && sale.cRegisterCode != \"\") {\r\n this.isreal = false;\r\n }\r\n else {\r\n this.isreal = true;\r\n }\r\n if (customer) {\r\n this.customerClub = customer;\r\n this.accountService.getAddresses(customer.customerID).subscribe(\r\n a => {\r\n if (a != null) {\r\n this.address.editAll(a);\r\n }\r\n }\r\n )\r\n //this.customerAddressList = adrresses;\r\n }\r\n\r\n //this.setGroups(sale, allgroup);\r\n this.sale = new SaleCustomer();\r\n\r\n Object.assign(this.sale, sale);\r\n this.edit();\r\n\r\n return this.sale;\r\n } else {\r\n return this.newCustomer(allostan, allgroup);\r\n }\r\n }\r\n\r\n private setGroups(sale: SaleCustomer, allgroups?: group[]) {\r\n // this.allgroup = allgroups ? [...allgroups] : [];\r\n // if (sale.group) {\r\n // for (const ur of sale.group) {\r\n // if (!this.allgroup.some(r => r.NameGroup == ur)) {\r\n // this.allgroup.unshift(new group(ur));\r\n // }\r\n // }\r\n // }\r\n // if (allgroups == null || this.allgroup.length != allgroups.length) {\r\n // setTimeout(() => {\r\n // if (this.rolesSelector) {\r\n // this.rolesSelector.refresh();\r\n // }\r\n // });\r\n // }\r\n }\r\n}\r\n","
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{sale.cName}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'SaleCustomer.editor.CNameRequired' | translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{sale.cPublicCode}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'SaleCustomer.editor.CPublicCode' | translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{sale.cRegisterCode}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'SaleCustomer.editor.CPublicRegisterCode' | translate}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{sale.cEcoCode}}

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

{{sale.cTel}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'SaleCustomer.editor.CTel' | translate}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{sale.cOstan}}

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

{{sale.cCity}}

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

{{sale.cAddress}}

\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n {{'SaleCustomer.editor.CAddress' | translate}}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{sale.cPostalCode}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'SaleCustomer.editor.cPostalCode' | 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","import { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'customer-club-list',\r\n templateUrl: './customer-club-list.component.html',\r\n styleUrls: ['./customer-club-list.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class CustomerClubListComponent {\r\n constructor() { \r\n }\r\n}\r\n","
\r\n
\r\n

\r\n \r\n لیست باشگاه مشتریان\r\n

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n","/* (ignored) */","import { Component, OnInit, ViewChild, Input, TemplateRef, EventEmitter, Output, OnChanges } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\nimport { HesabKindBanks } from '../../models/HesabKindBanks.model';\r\nimport { SaleBankAccounts } from '../../models/SaleBankAccounts.model';\r\nimport { SaleReceipt } from '../../models/SaleReceipts/SaleReceipt.model';\r\nimport { SaleNewContract } from '../../models/SaleNewContract.model';\r\nimport { ContractProduct } from '../../models/ContractProduct.model';\r\nimport { SaleSubReceipt } from '../../models/SaleReceipts/SaleSubReceipt.model';\r\nimport { SaleSubReceiptSelect } from '../../models/SaleSubReceiptSelect.model';\r\nimport * as moment from 'jalali-moment';\r\nimport { RemindClass } from '../../models/RemindClass.model';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { VMUpdateSaleSubReceipt } from '../../models/VMUpdateSaleSubReceipt.model';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { SalePreInvoiceForContractCheckInfoModel } from '../../models/SalePreInvoiceForContractCheckInfo.model';\r\nimport { IInstallmentsDetaile } from '../../models/installment-detail.model';\r\nimport { SharedService } from '../../services/Shared.service';\r\nimport { InputPricePaymentFormInvoiceSaleModel } from '../../models/InputPricePaymentFormInvoiceSale.model';\r\nimport { ConfirmMessageModel } from '../../models/utilities/confirm-message.model';\r\nimport { ConfirmMessageEnum } from '../../enums/confirm-message.enum';\r\nimport { SaleReceiptService } from '../../services/receipt-services/sale-receipt.service';\r\nimport { SaleSubReceiptService } from '../../services/receipt-services/sale-sub-receipt.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'price-payment-form-info',\r\n templateUrl: './price-payment-form-info.component.html',\r\n styleUrls: ['./price-payment-form-info.component.scss']\r\n})\r\nexport class PricePaymentFormInfoComponent implements OnInit, OnChanges {\r\n\r\n\r\n public sumPriceInvoice: number = 0;\r\n public remindPaymentInvoice: number = 0;\r\n public paymentInvoice: number = 0;\r\n public installmentInterest: number = 0;\r\n public dateObject: string;\r\n public dateObjectRSDate = moment();\r\n public loadingIndicator: boolean;\r\n\r\n public rowsCache: SaleSubReceiptSelect[] = [];\r\n public rows: SaleSubReceiptSelect[] = [];\r\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\r\n public checkDetailList: SalePreInvoiceForContractCheckInfoModel[] = [];\r\n public installmentsData: IInstallmentsDetaile[] = [];\r\n public allbank: SaleBankAccounts[] = [];\r\n public allhesabkindbank: HesabKindBanks[] = [];\r\n public allsalebankaccounts: SaleBankAccounts[] = [];\r\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n public orderRecord: boolean = false;\r\n public checkoutConfirm: boolean = false;\r\n @Input() oldcheckDetailList: SalePreInvoiceForContractCheckInfoModel[];\r\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\r\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel; //= new InputPricePaymentFormInvoiceSaleModel();\r\n @Output() saveCheckDetailStatus = new EventEmitter();\r\n @Output() paymentPriceSuccess = new EventEmitter();\r\n\r\n public isSelect = false;\r\n public ReceiptNum: number;\r\n\r\n public AllPay: number = 0;\r\n public AllBed: number = 0;\r\n public AllBes: number = 0;\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n public isEditMode = true;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public spiCode: number;\r\n public CuntractNumber: number;\r\n columns: any[] = [];\r\n group = '';\r\n public RSBankAccountCode2: number;\r\n public RSBankType: number;\r\n public RSBankAccountCode: number;\r\n public TypePrice: number = 1;\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\r\n public VMUpdateSaleSubReceipt: VMUpdateSaleSubReceipt = new VMUpdateSaleSubReceipt();\r\n public SaleNewContractObj: SaleNewContract = new SaleNewContract();\r\n public SaleNewContractProductObj: ContractProduct = new ContractProduct();\r\n public Ncpcodeobject: number;\r\n public Cmain: number;\r\n public Csub: number;\r\n public isEdit: boolean = false;\r\n public isEditComment: boolean = true;\r\n public isEditSerial: boolean = true;\r\n public isEditPrice: boolean = true;\r\n public isEditDate: boolean = true;\r\n public isEditContractCode: boolean = true;\r\n serverDate: Date;\r\n CanManagemanageInvoiceSale = false;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @Input()\r\n isViewOnly: boolean;\r\n @Input()\r\n isGeneralEditor = false;\r\n @ViewChild('f', { static: false })\r\n public form;\r\n PreSeller: { name: string; };\r\n NumberPreInvoic: { name: string; };\r\n NumberSanad: { name: string; };\r\n NumberCuntract: { name: string; };\r\n public IsReload: boolean = false;\r\n public IsAssignment: boolean = false;\r\n oldserial = \"\";\r\n newContractCode = 0;\r\n oldPrice = 0;\r\n public SanadHesabdari: number;\r\n public AcceptContract: boolean = true;\r\n ReciptNo: number = 0;\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private authService: AuthService,\r\n private myCompanyService: MyCompanyService,\r\n private sharedService: SharedService,\r\n private saleSubReceiptService: SaleSubReceiptService,\r\n private saleReceiptService: SaleReceiptService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnChanges() {\r\n $('.nav-tabs li a[href=\"#posPaymentTab\"]').tab('show');\r\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\r\n }\r\n\r\n ngOnInit() {\r\n this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\r\n this.dateObjectRSDate = this.sharedService.getDateToMoment(this.dateObject);\r\n }\r\n\r\n saveCheckDetail() {\r\n this.saveCheckDetailStatus.emit(true);\r\n }\r\n\r\n loadReceipt() {\r\n this.accountService.GetSaleSubReceiptSelect(this.saleInvoiceDetail.contractCode, Number(this.authService.currentUser.phoneNumber), 5, 1).subscribe(\r\n results => this.onSaleSubReceiptSelect(results),\r\n error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private onSaleSubReceiptSelect(salebank: SaleSubReceiptSelect[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n salebank.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1;\r\n user.rsDate = new Date(user.rsDate).toLocaleDateString('fa-IR');\r\n var currencyFormatter = require('currency-formatter');\r\n user.rsPrice = currencyFormatter.format(user.rsPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n });\r\n this.rowsCache = [...salebank];\r\n this.rows = salebank;\r\n this.remindPaymentInvoice = this.sumPriceInvoice - this.paymentInvoice;\r\n this.getStatusContract();\r\n }\r\n\r\n getStatusContract() {\r\n this.accountService.GetStatusAccept(Number(this.accountService.currentUser.phoneNumber), 5, this.saleInvoiceDetail.contractCode).subscribe(\r\n res => {\r\n this.AcceptContract = res;\r\n },\r\n err => console.log(err)\r\n )\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n\r\n Detailsanad(cells: any) {\r\n const filteredCells = \"\";\r\n return filteredCells;\r\n }\r\n\r\n changereal() {\r\n this.isreal = true;\r\n }\r\n\r\n changeLegal() {\r\n this.isreal = false;\r\n }\r\n\r\n newprice(allbank: SaleBankAccounts[], allsalebankaccounts: SaleBankAccounts[], allhesabkindbank: HesabKindBanks[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.allbank = allbank;\r\n this.allsalebankaccounts = allsalebankaccounts;\r\n this.allhesabkindbank = allhesabkindbank;\r\n this.getStatusContract();\r\n }\r\n\r\n onChangeBankAccountCode(number?: number) {\r\n this.RSBankAccountCode = number!;\r\n }\r\n\r\n onChangeallSaleBankAccounts(number?: number) {\r\n this.RSBankAccountCode2 = number!;\r\n }\r\n\r\n onChangeallHesabKindBank(number?: number) {\r\n this.RSBankType = number!;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n this.isSaving = false;\r\n }\r\n\r\n save(isAssignment: boolean) {\r\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\r\n this.IsAssignment = isAssignment;\r\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\r\n this.accountService.GetRSerialCheck(this.SaleSubReceiptObj.rSerial)\r\n .subscribe(results => { this.onCurrentCheck(results) }, error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات مربوط به پرداخت را وارد نمایید.', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم پرداخت';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به پرداخت نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n }\r\n\r\n update(isAssignment: boolean) {\r\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\r\n this.IsAssignment = isAssignment;\r\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\r\n this.saleReceiptService.getRSerialCheckForUpdate(this.SaleSubReceiptObj.rsNum, this.SaleSubReceiptObj.rSerial).subscribe(\r\n results => { this.onCurrentCheck(results) },\r\n error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم ویرایش پرداخت';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به ویرایش پرداختی نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n }\r\n\r\n onCurrentCheck(results: boolean): void {\r\n var CheckComplet = true;\r\n if (results) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'شماره سریال تکراری می باشد', MessageSeverity.warn);\r\n }\r\n if (this.dateObjectRSDate == null || this.dateObjectRSDate.toLocaleString() == \"undefined\" || this.dateObjectRSDate.toString() == undefined || this.dateObjectRSDate.toLocaleString() == \"\") {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rsPrice == 0 || this.SaleSubReceiptObj.rsPrice == null) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rSerial == \"\" || this.SaleSubReceiptObj.rSerial == null) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\r\n }\r\n var date = this.sharedService.checkDate(this.dateObjectRSDate)\r\n if (date > 0) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\r\n }\r\n\r\n if (CheckComplet) {\r\n this.isSaving = true;\r\n if (this.isEdit) {\r\n this.CheckRemindUpdate(this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice);\r\n }\r\n else {\r\n this.CheckRemind(this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice);\r\n\r\n }\r\n }\r\n\r\n }\r\n\r\n CheckRemind(remind: number) {\r\n if (this.SaleSubReceiptObj.rsPrice > 0) {\r\n if (remind == 0) {\r\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remind < this.SaleSubReceiptObj.rsPrice) {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remind >= this.SaleSubReceiptObj.rsPrice) {\r\n this.MethodGetNewCodeRecipt(remind);\r\n\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n\r\n MethodGetNewCodeRecipt(remind: number) {\r\n this.accountService.GetNewCodeRecipt(+this.authService.currentUser.phoneNumber, 5, 1).subscribe(res => { this.MethodSaveSaleReceipts(res, remind), error => { this.isSaving = false; this.saveerror(error) } });\r\n }\r\n\r\n MethodSaveSaleReceipts(loadNewCode: number, remind: number) {\r\n this.ReciptNo = loadNewCode;\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n this.SaleReceiptObj.rnum = loadNewCode;\r\n this.SaleReceiptObj.ryear = this.saleInvoiceDetail.spiYear;\r\n this.SaleReceiptObj.rmainCustomerCode = this.saleInvoiceDetail.spiCustomerCode;\r\n this.SaleReceiptObj.rsubCustomerCode = this.saleInvoiceDetail.spiSubCustomerCode;\r\n this.SaleReceiptObj.rpartCode = this.saleInvoiceDetail.spiPartCode;\r\n this.SaleReceiptObj.rdate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleReceiptObj.rkind = 1;\r\n this.SaleReceiptObj.rreceivedFor = -1;\r\n this.SaleReceiptObj.rreceivedNumber = this.saleInvoiceDetail.spiCode;\r\n this.SaleReceiptObj.rreceivedYear = +this.authService.currentUser.phoneNumber;\r\n this.SaleReceiptObj.risNotInCycle = false;\r\n this.SaleReceiptObj.rcontractYear = +this.authService.currentUser.phoneNumber;\r\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\r\n this.SaleReceiptObj.sanavat = false;\r\n this.saleReceiptService.updateSaleReceipt(this.SaleReceiptObj, this.SaleSubReceiptObj.rSerial).subscribe(s => this.saveNewSaleSubReceiptSuccessHelper(remind), error => { this.isSaving = false; this.saveerror(error) });\r\n }\r\n\r\n private saveNewSaleSubReceiptSuccessHelper(remind: number) {\r\n this.SaleSubReceiptObj.rsKind = 1;\r\n this.SaleSubReceiptObj.rsBankAccountCode = 197;\r\n this.SaleSubReceiptObj.rsPartCode = 5;\r\n this.SaleSubReceiptObj.rsYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleSubReceiptObj.rsReceiptKind = 1;\r\n this.SaleSubReceiptObj.rsNum = this.SaleReceiptObj.rnum;\r\n this.SaleSubReceiptObj.rsDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\r\n this.accountService.newSaleSubReceipt(this.SaleSubReceiptObj).subscribe(s => this.saveSubSuccessHelper(remind), error => this.saveerror(error));\r\n }\r\n\r\n private saveSubSuccessHelper(remind: number) {\r\n if (this.saleInvoiceDetail.typePrice !== 2) {\r\n if (this.ReciptNo > 0) {\r\n if (this.IsAssignment) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + this.ReciptNo + ' ثبت شد. ', MessageSeverity.success);\r\n this.paymentPriceSuccess.emit(this.saleInvoiceDetail);\r\n if ((remind - this.SaleSubReceiptObj.rsPrice) == 0) {\r\n //this.IsReload = true;\r\n this.alertService.startLoadingMessage('تایید قرارداد و صدور حواله ...');\r\n this.LoadremaindVouchers_AcceptContractNextPayment(remind);\r\n }\r\n else {\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n //this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n this.loadReceipt();\r\n // this.myCompanyService.Refresh();\r\n }\r\n }\r\n else {\r\n this.resetData();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + this.ReciptNo + ' ثبت شد. ', MessageSeverity.success);\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Goto('/contract');\r\n //this.myCompanyService.Goto('/invoicesale');\r\n }\r\n\r\n }\r\n else {\r\n\r\n }\r\n } else {\r\n this.resetData();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + this.ReciptNo + ' ثبت شد. ', MessageSeverity.success);\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.paymentPriceSuccess.emit(this.saleInvoiceDetail);\r\n }\r\n }\r\n\r\n LoadremaindVouchers_AcceptContractNextPayment(remind: number) {\r\n if ((remind - this.SaleSubReceiptObj.rsPrice) < 0) {\r\n this.alertService.showStickyMessage('عدم تایید', 'شما به دلیل دارا بودن مانده بدهی برای قرار داد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" نمی توانید ثبت سفارش کنید', MessageSeverity.error);\r\n }\r\n else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.title = \"ثبت سفارش\";\r\n this.confirmMessageObj.title = 'آیا می خواهید قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" را ثبت سفارش کنید?';\r\n this.orderRecord = true;\r\n }\r\n }\r\n\r\n acceptContractOrder(event: boolean) {\r\n this.orderRecord = false;\r\n if (event) {\r\n this.saveGetNewAssignmentLoadingNextPaymentSuccessHelper();\r\n } else {\r\n this.cancel();\r\n }\r\n }\r\n\r\n saveGetNewAssignmentLoadingNextPaymentSuccessHelper(SalePreInvoice?: string) {\r\n this.accountService.GetNewAssignmentLoadingNextPayment(Number(this.authService.currentUser.phoneNumber), this.SaleReceiptObj.rcontractCode, this.saleInvoiceDetail.spiCode)\r\n .subscribe(res => this.saveNewAssignmentLoadingHelper(res),\r\n error => this.saveFailedHelper(error));\r\n }\r\n\r\n saveNewAssignmentLoadingHelper(DAPCode: number) {\r\n this.resetData();\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n var dapcode: string = String(DAPCode);\r\n switch (dapcode) {\r\n case '-8':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'شما به دلیل دارا بودن مانده بدهی برای قرار داد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" نمی توانید ثبت سفارش کنید', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-7':\r\n {\r\n this.alertService.showStickyMessage('Success', ' قرارداد شماره ' + this.SaleReceiptObj.rcontractCode + ' ثبت سفارش شد ', MessageSeverity.success);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Goto('/contract');\r\n this.saveCheckDetailStatus.emit(true);\r\n\r\n break;\r\n }\r\n case '-6':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'در پیش فاکتور ' + this.NumberPreInvoic.name + ' کالایی ثبت نشده است.', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-5':\r\n {\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-4':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'شما به دلیل دارا بودن مانده بدهی برای قرار داد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" نمی توانید ثبت سفارش کنید', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-3':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'قرارداد شماره ' + this.SaleReceiptObj.rcontractCode + ' در سیستم ثبت نشده است.', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-2':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'پیش فاکتور شماره ' + this.NumberPreInvoic.name + ' در سیستم ثبت نشده است.', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '-1':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n case '0':\r\n {\r\n this.alertService.showStickyMessage('Error!', 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Refresh();\r\n break;\r\n }\r\n default:\r\n {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' حواله با شماره ' + dapcode + ' ثبت شد ', MessageSeverity.success);\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n this.cancel();\r\n }\r\n this.myCompanyService.Goto('/contract');\r\n this.saveCheckDetailStatus.emit(true);\r\n break;\r\n }\r\n }\r\n\r\n }\r\n\r\n private saveerror(error: any) { }\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n } else {\r\n }\r\n this.showValidationErrors = false;\r\n this.resetData();\r\n //this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n\r\n if (this.IsReload) {\r\n this.myCompanyService.Refresh();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null!, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n resetData() {\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n }\r\n\r\n EmptyData() {\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n this.isEdit = false;\r\n this.isEditComment = true;\r\n this.isEditSerial = true;\r\n this.isEditPrice = true;\r\n this.isEditDate = true;\r\n this.isEditContractCode = true;\r\n\r\n this.oldserial = \"\";\r\n this.newContractCode = 0;\r\n this.oldPrice = 0;\r\n this.SanadHesabdari = 0;\r\n this.AcceptContract = false;\r\n\r\n this.PreSeller = { name: \"\" };\r\n this.NumberPreInvoic = { name: \"\" };\r\n this.NumberSanad = { name: \"\" };\r\n this.NumberCuntract = { name: \"\" };\r\n\r\n this.spiCode = 0;\r\n this.CuntractNumber = 0;\r\n this.ReciptNo = 0;\r\n }\r\n\r\n LoadErrorCheck(error: any): void {\r\n throw new Error('Method not implemented.');\r\n }\r\n\r\n LoadAcceptContracterror(error: any): void {\r\n throw new Error('Method not implemented.');\r\n }\r\n\r\n print() {\r\n window.print();\r\n }\r\n\r\n CheckRemindUpdate(remind: number) {\r\n var newprice = this.SaleSubReceiptObj.rsPrice;\r\n var remindupdate = Math.abs(this.inputPricePaymentFormInvoiceSale.sumPriceInvoice - (this.inputPricePaymentFormInvoiceSale.sumPriceInvoice - (remind + this.oldPrice)));\r\n //var remindupdateFinal = this.AllPay - (this.AllPay - (remind + this.oldPrice) + newprice);\r\n if (newprice != this.oldPrice) {\r\n if (newprice > 0) {\r\n if (remindupdate == 0) {\r\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remindupdate < this.SaleSubReceiptObj.rsPrice) {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n else if (remindupdate >= this.SaleSubReceiptObj.rsPrice) {\r\n this.MethodUpdateSaleReceipts(this.SaleSubReceiptObj.rsNum, remindupdate);\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n else {\r\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }\r\n else {\r\n this.MethodUpdateSaleReceipts(this.SaleSubReceiptObj.rsNum, remindupdate);\r\n }\r\n }\r\n\r\n MethodUpdateSaleReceipts(loadNewCode: number, remind: number) {\r\n this.ReciptNo = loadNewCode;\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n this.SaleSubReceiptObj.rsKind = 1;\r\n this.SaleSubReceiptObj.rsBankAccountCode = 197;\r\n this.SaleSubReceiptObj.rsPartCode = 5;\r\n this.SaleSubReceiptObj.rsYear = +this.authService.currentUser.phoneNumber;\r\n this.SaleSubReceiptObj.rsReceiptKind = 1;\r\n this.SaleSubReceiptObj.rsNum = loadNewCode;\r\n //this.SaleSubReceiptObj.rsDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleSubReceiptObj.rsDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\r\n var oldCuntractCode = this.SaleReceiptObj.rcontractCode;\r\n this.newContractCode = this.SaleReceiptObj.rcontractCode;\r\n this.VMUpdateSaleSubReceipt.oldSerial = this.oldserial;\r\n this.VMUpdateSaleSubReceipt.newContractCode = this.newContractCode;\r\n this.VMUpdateSaleSubReceipt.saleSubReceipt = this.SaleSubReceiptObj;\r\n\r\n if (this.newContractCode > 0 && oldCuntractCode != this.newContractCode) {\r\n this.saleReceiptService.checkUpdateSaleSubReceiptByContractCode(this.SaleSubReceiptObj.rsYear, this.SaleSubReceiptObj.rsPartCode, oldCuntractCode, this.newContractCode, this.SaleSubReceiptObj.rsPrice).subscribe(results => {\r\n if (results === '' || results == null) {\r\n this.saleSubReceiptService.updateSaleSubReceipt(this.VMUpdateSaleSubReceipt).subscribe(s => this.updateSubSuccessHelper(s), error => this.saveerror(error));\r\n }\r\n else {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Error! ', results, MessageSeverity.error);\r\n this.isSaving = false;\r\n }\r\n }, error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n else {\r\n this.saleSubReceiptService.updateSaleSubReceipt(this.VMUpdateSaleSubReceipt).subscribe(s => this.updateSubSuccessHelper(s), error => this.saveerror(error));\r\n }\r\n }\r\n\r\n private updateSubSuccessHelper(res: any) {\r\n if (res == UpdateSaleSubReceiptResult.Success) {\r\n var msg = ' پرداخت با شماره ' + this.ReciptNo + ' اصلاح شد. ';\r\n this.paymentPriceSuccess.emit(this.saleInvoiceDetail);\r\n this.SaleReceiptObj.rcontractCode = this.newContractCode;\r\n this.SaleSubReceiptObj = new SaleSubReceipt();\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n this.rowsCache = [];\r\n this.rows = [];\r\n //this.AllPay = 0;\r\n this.AllBes = 0;\r\n this.AllBed = 0;\r\n\r\n this.showValidationErrors = false;\r\n this.isSaving = false;\r\n this.SaleSubReceiptObj.rsDes = \"\";\r\n\r\n this.SaleSubReceiptObj.rSerial = \"\";\r\n this.SaleSubReceiptObj.rsPrice = 0;\r\n\r\n this.isEdit = false;\r\n this.isEditComment = true;\r\n this.isEditSerial = true;\r\n this.isEditPrice = true;\r\n this.isEditDate = true;\r\n this.isEditContractCode = true;\r\n\r\n this.loadReceipt();\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', msg, MessageSeverity.success);\r\n }\r\n else {\r\n let msg = \"\";\r\n switch (res) {\r\n case UpdateSaleSubReceiptResult.Error:\r\n msg = ' متاسفانه پرداخت با شماره ' + this.ReciptNo + ' اصلاح نشد. ';\r\n break;\r\n case UpdateSaleSubReceiptResult.EmptyOldSerial:\r\n msg = ' سریال وارد شده نا معتبر است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.IsNotAcceptedAndNotIsVoidNewContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، قرارداد جدید باید ابطال و تایید نشده باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.IsNotAcceptedOrIsVoidOldContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، قرارداد فعلی باید ابطال شده یا تایید نشده باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotEqualCustomerContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، مشتری قرارداد جدید باید از همان فروشگاه مشتری قرارداد قبلی باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotEqualSubCustomerContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، مشتری قرارداد جدید باید همان مشتری قرارداد قبلی باشد.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistNewContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، شماره قرارداد جدید وارد شده در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistOldContract:\r\n msg = ' جهت تغییر شماره قرارداد پرداختی، شماره قرارداد قبلی در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistSaleReceipt:\r\n msg = ' شماره رسید پرداختی در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistSaleSubReceipt:\r\n msg = ' شماره پیگیری رسید پرداختی در سیستم ثبت نشده است.';\r\n break;\r\n case UpdateSaleSubReceiptResult.NotExistSerial:\r\n msg = ' سریال وارد شده در سیستم ثبت نشده است.';\r\n break;\r\n default:\r\n msg = ' متاسفانه پرداخت با شماره ' + this.ReciptNo + ' اصلاح نشد. ';\r\n break;\r\n }\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', msg, MessageSeverity.error);\r\n this.isSaving = false;\r\n\r\n }\r\n }\r\n\r\n showCheckoutConfirm(event: boolean) {\r\n this.checkoutConfirm = event;\r\n }\r\n\r\n getFormatDateShamsi(date: string) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n\r\n}\r\n\r\nenum UpdateSaleSubReceiptResult {\r\n Success,\r\n Error,\r\n EmptyOldSerial,\r\n NotExistSaleReceipt,\r\n NotExistSaleSubReceipt,\r\n NotExistSerial,\r\n NotExistOldContract,\r\n NotExistNewContract,\r\n IsNotAcceptedOrIsVoidOldContract,\r\n IsNotAcceptedAndNotIsVoidNewContract,\r\n NotEqualCustomerContract,\r\n NotEqualSubCustomerContract,\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
شماره پیش فاکتور : {{saleInvoiceDetail.spiCode}}
\r\n
\r\n
\r\n
\r\n
\r\n
شماره قرارداد : {{saleInvoiceDetail.contractCode}}
\r\n
\r\n
\r\n
\r\n
\r\n
نام مشتری : {{saleInvoiceDetail.cName}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{getFormatDateShamsi(value)}}\r\n \r\n \r\n \r\n \r\n {{value | 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 \r\n
\r\n \r\n
\r\n \r\n
\r\n \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\nimport { Directive, ElementRef, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\nimport { Observable, Subscription, fromEvent } from 'rxjs';\n\n\ndeclare var $: any;\n\n@Directive({\n selector: '[bootstrapDatepicker]',\n exportAs: 'bootstrap-datepicker'\n})\nexport class BootstrapDatepickerDirective implements OnInit, OnDestroy {\n\n private _isShown = false;\n private updateTimeout;\n private changedSubscription: Subscription;\n private shownSubscription: Subscription;\n private hiddenSubscription: Subscription;\n\n get isShown() {\n return this._isShown;\n }\n\n @Input()\n options = {};\n\n @Input()\n set ngModel(value) {\n this.tryUpdate(value);\n }\n\n\n @Output()\n ngModelChange = new EventEmitter();\n\n\n constructor(private el: ElementRef) {\n this.changedSubscription = fromEvent($(this.el.nativeElement), 'change').subscribe((e: any) => setTimeout(() => this.ngModelChange.emit(e.target.value)));\n this.shownSubscription = fromEvent($(this.el.nativeElement), 'show').subscribe((e: any) => this._isShown = true);\n this.hiddenSubscription = fromEvent($(this.el.nativeElement), 'hide').subscribe((e: any) => this._isShown = false);\n }\n\n\n\n ngOnInit() {\n this.initialize(this.options);\n }\n\n ngOnDestroy() {\n this.destroy();\n }\n\n\n\n\n initialize(options?: any) {\n $(this.el.nativeElement).datepicker(options);\n }\n\n destroy() {\n if (this.changedSubscription) {\n this.changedSubscription.unsubscribe();\n this.shownSubscription.unsubscribe();\n this.hiddenSubscription.unsubscribe();\n }\n\n $(this.el.nativeElement).datepicker('destroy');\n }\n\n\n\n show() {\n $(this.el.nativeElement).datepicker('show');\n }\n\n\n hide() {\n $(this.el.nativeElement).datepicker('hide');\n }\n\n\n toggle() {\n this.isShown ? this.hide() : this.show();\n }\n\n\n private tryUpdate(value) {\n\n clearTimeout(this.updateTimeout);\n\n if (!$(this.el.nativeElement).is(':focus')) {\n this.update(value);\n } else {\n this.updateTimeout = setTimeout(() => {\n this.updateTimeout = null;\n this.tryUpdate(value);\n }, 100);\n }\n }\n\n update(value) {\n setTimeout(() => $(this.el.nativeElement).datepicker('update', value));\n }\n\n\n setDate(value) {\n setTimeout(() => $(this.el.nativeElement).datepicker('setDate', value));\n }\n\n\n setUTCDate(value) {\n setTimeout(() => $(this.el.nativeElement).datepicker('setUTCDate', value));\n }\n\n\n clearDates() {\n setTimeout(() => $(this.el.nativeElement).datepicker('clearDates'));\n }\n\n\n getDate() {\n $(this.el.nativeElement).datepicker('getDate');\n }\n\n\n getUTCDate() {\n $(this.el.nativeElement).datepicker('getUTCDate');\n }\n}\n","import { Component, OnInit } from '@angular/core';\r\ndeclare var jquery: any;\r\ndeclare var $: any;\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\r\n constructor() { }\r\n\r\n ngOnInit(): void { }\r\n\r\n toggleSidebar() {\r\n // $(document).ready(function() {\r\n // if ($('.sidebar').toggleClass('fliph')) {\r\n // return \r\n // } else {\r\n // return $(\".sidebar\").css({\"width\":\"42px\"}),\r\n // $(\".content\").css({\"padding-right\":\"42px\"});\r\n // //$(\"#slidebtn\").css({\"padding-right\":\"0px\"});\r\n // }\r\n // });\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n","import {map} from 'rxjs/operators';\r\n// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport {Injectable} from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Observable} from 'rxjs';\r\nimport {catchError} from 'rxjs/operators';\r\n\r\nimport {AuthService} from './auth.service';\r\nimport {EndpointBase} from './endpoint-base.service';\r\nimport {ConfigurationService} from './configuration.service';\r\nimport {error} from 'protractor';\r\n\r\n@Injectable()\r\nexport class MyAccountEndpoint extends EndpointBase {\r\n\r\n private readonly _DeposListUrl: string = '/api/TakhsisDepoCustomers/Takhsis';\r\n private readonly _DeposListUrlDeposOwnerUrl: string = '/api/TakhsisDepoCustomers/DeposOwner';\r\n private readonly _DeposListUrlOwnerUrl: string = '/api/TakhsisDepoCustomers/Owner';\r\n private readonly _GetDepoTarazNewUrl: string = '/api/DepoCodes/GetDepoTarazNew';\r\n private readonly _GetBarcodesProductCodeSelectUrl: string = '/api/DepoCodes/GetBarcodesInDepoByProductCode';\r\n private readonly _GetKardexProductUrl: string = '/api/DepoCodes/GetKardexProduct';\r\n private readonly _GetSalePriceProductInfoForSalePerInvoiceUrl: string = '/api/DepoCodes/GetSalePriceProductInfoForSalePerInvoice';\r\n private readonly _GetSalePriceProductInfoForSaleInvoiceBackUrl: string = '/api/DepoCodes/GetSalePriceProductInfoForSaleInvoiceBack';\r\n private readonly _GetContractForCheckAcceptUrl: string = '/api/SaleNewContractProducts/GetContractForCheckAccept';\r\n private readonly _GetReportCustomerUrl: string = '/api/SaleCustomers/GetReportCustomer';\r\n private readonly _GetContractsDetailsForRemindMajaziKardexProductUrl: string = '/api/DepoCodes/GetContractsDetailsForRemindMajaziKardexProduct';\r\n private readonly _GetDealerSaleResultsMethodUrl: string = '/api/DepoCodes/GetReportSaleDealerResults';\r\n private readonly _GetDepoAssignmentProductForCheckVoidContractUrl: string = '/api/DepoAssignmentProducts/GetDepoAssignmentProductForCheckVoidContract';\r\n private readonly _NewDepoRevertToDepoCustomerUrl: string = '/api/DepoRevertToDepoCustomers/NewDepoRevertToDepoCustomer';\r\n private readonly _CheckDepoAssignmentIsRevertSerialUrl: string = '/api/DepoRevertToDepoCustomers/CheckDepoAssignmentIsRevertSerial';\r\n private readonly _GetAllReportCashierUrl: string = '/api/SaleReceipts/GetAllReportCashier';\r\n private readonly _GetCashUserUrl: string = '/api/CashDesks/GetCashUsers';\r\n private readonly _GetCashUserByIdUrl: string = '/api/CashDesks/GetCashUsersById';\r\n\r\n constructor(private configurations: ConfigurationService, http: HttpClient, authService: AuthService) {\r\n super(http, authService);\r\n }\r\n\r\n get DeposListUrl() {\r\n return this.configurations.baseUrl + this._DeposListUrl;\r\n }\r\n\r\n get DeposListUrlOwnerUrl() {\r\n return this.configurations.baseUrl + this._DeposListUrlOwnerUrl;\r\n }\r\n\r\n get DeposListUrlDeposOwnerUrl() {\r\n return this.configurations.baseUrl + this._DeposListUrlDeposOwnerUrl;\r\n }\r\n\r\n get GetDepoTarazNewUrl() {\r\n return this.configurations.baseUrl + this._GetDepoTarazNewUrl;\r\n }\r\n\r\n get GetBarcodesProductCodeSelectUrl() {\r\n return this.configurations.baseUrl + this._GetBarcodesProductCodeSelectUrl;\r\n }\r\n\r\n get GetKardexProductUrl() {\r\n return this.configurations.baseUrl + this._GetKardexProductUrl;\r\n }\r\n\r\n get GetSalePriceProductInfoForSalePerInvoiceUrl() {\r\n return this.configurations.baseUrl + this._GetSalePriceProductInfoForSalePerInvoiceUrl;\r\n }\r\n\r\n get GetSalePriceProductInfoForSaleInvoiceBackUrl() {\r\n return this.configurations.baseUrl + this._GetSalePriceProductInfoForSaleInvoiceBackUrl;\r\n }\r\n\r\n get GetContractForCheckAcceptUrl() {\r\n return this.configurations.baseUrl + this._GetContractForCheckAcceptUrl;\r\n }\r\n\r\n get GetReportCustomerUrl() {\r\n return this.configurations.baseUrl + this._GetReportCustomerUrl;\r\n }\r\n\r\n get GetContractsDetailsForRemindMajaziKardexProductUrl() {\r\n return this.configurations.baseUrl + this._GetContractsDetailsForRemindMajaziKardexProductUrl;\r\n }\r\n\r\n get GetDealerSaleResultsMethodUrl() {\r\n return this.configurations.baseUrl + this._GetDealerSaleResultsMethodUrl;\r\n }\r\n\r\n get GetDepoAssignmentProductForCheckVoidContractUrl() {\r\n return this.configurations.baseUrl + this._GetDepoAssignmentProductForCheckVoidContractUrl;\r\n }\r\n\r\n get NewDepoRevertToDepoCustomerUrl() {\r\n return this.configurations.baseUrl + this._NewDepoRevertToDepoCustomerUrl;\r\n }\r\n\r\n get CheckDepoAssignmentIsRevertSerialUrl() {\r\n return this.configurations.baseUrl + this._CheckDepoAssignmentIsRevertSerialUrl;\r\n }\r\n\r\n get GetAllReportCashierUrl() {\r\n return this.configurations.baseUrl + this._GetAllReportCashierUrl;\r\n }\r\n\r\n get GetCashUserUrl() {\r\n return this.configurations.baseUrl + this._GetCashUserUrl;\r\n }\r\n\r\n get GetCashUserByIdUrl() {\r\n return this.configurations.baseUrl + this._GetCashUserByIdUrl;\r\n }\r\n\r\n\r\n GetDepos(ID: string): Observable {\r\n const endpointUrl = `${this.DeposListUrl}/${ID}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepos(ID));\r\n }));\r\n }\r\n\r\n GetDeposOwner(ID: string): Observable {\r\n const endpointUrl = `${this.DeposListUrlDeposOwnerUrl}/${ID}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDeposOwner(ID));\r\n }));\r\n }\r\n\r\n GetDepoOwner(ID: string): Observable {\r\n const endpointUrl = `${this.DeposListUrlOwnerUrl}/${ID}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoOwner(ID));\r\n }));\r\n }\r\n\r\n GetDepoTarazNewEndPoint(year: number, depCode: string, PKind: number): Observable {\r\n const endpointUrl = `${this.GetDepoTarazNewUrl}/${year}/${depCode}/${PKind}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoTarazNewEndPoint(year, depCode, PKind));\r\n }));\r\n }\r\n\r\n GetBarcodesProductCodeSelectEndPoint(depoCode: string, ProductCode: string, activeYear: number): Observable {\r\n const endpointUrl = `${this.GetBarcodesProductCodeSelectUrl}/${depoCode}/${ProductCode}/${activeYear}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetBarcodesProductCodeSelectEndPoint(depoCode, ProductCode, activeYear));\r\n }));\r\n }\r\n\r\n GetKardexProductSelectEndPoint(year: number, depCode: string, productCode: string): Observable {\r\n const endpointUrl = `${this.GetKardexProductUrl}/${year}/${depCode}/${productCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetKardexProductSelectEndPoint(year, depCode, productCode));\r\n }));\r\n }\r\n\r\n getSalePriceProductInfoForSalePerInvoiceEndPoint(Year: number, CmainCode: number, Pkind: number, ProductCode: string, ProductCount: number, DiscountValuePrice: number, DiscountValuePercent: number): Observable {\r\n const endpointUrl = `${this.GetSalePriceProductInfoForSalePerInvoiceUrl}/${Year}/${CmainCode}/${Pkind}/${ProductCode}/${ProductCount}/${DiscountValuePrice}/${DiscountValuePercent}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getSalePriceProductInfoForSalePerInvoiceEndPoint(Year, CmainCode, Pkind, ProductCode, ProductCount, DiscountValuePrice, DiscountValuePercent));\r\n }));\r\n }\r\n\r\n getSalePriceProductInfoForSaleInvoiceBackEndPoint(Year: number, CmainCode: number, DiscountDocumentId: number, SPICode: number, PartCode: number, DepoCode: number, DRTDFromAssignment: number, ProductCode: string, ProductCount: number, DiscountValuePrice: number, DiscountValuePercent: number): Observable {\r\n const endpointUrl = `${this.GetSalePriceProductInfoForSaleInvoiceBackUrl}/${Year}/${CmainCode}/${DiscountDocumentId}/${SPICode}/${PartCode}/${DepoCode}/${DRTDFromAssignment}/${ProductCode}/${ProductCount}/${DiscountValuePrice}/${DiscountValuePercent}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getSalePriceProductInfoForSaleInvoiceBackEndPoint(Year, CmainCode, DiscountDocumentId, SPICode, PartCode, DepoCode, DRTDFromAssignment, ProductCode, ProductCount, DiscountValuePrice, DiscountValuePercent));\r\n }));\r\n }\r\n\r\n ContractForCheckAcceptEndPoint(Year: number, NCPartCode: number, NCCode: number): Observable {\r\n const endpointUrl = `${this.GetContractForCheckAcceptUrl}/${Year}/${NCPartCode}/${NCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.ContractForCheckAcceptEndPoint(Year, NCPartCode, NCCode));\r\n }));\r\n }\r\n\r\n GetReportCustomerSelectEndPoint(year: number, partCode: number, depCode: string, cmainCode: number, csubCode: number, customerID: number, spiCode: number, fromDate?: Date, toDate?: Date): Observable {\r\n const endpointUrl = `${this.GetReportCustomerUrl}/${year}/${partCode}/${depCode}/${cmainCode}/${csubCode}/${customerID}/${spiCode}/${fromDate}/${toDate}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetReportCustomerSelectEndPoint(year, partCode, depCode, cmainCode, csubCode, customerID, spiCode, fromDate, toDate));\r\n }));\r\n }\r\n\r\n\r\n GetContractsDetailsForRemindMajaziKardexProductSelectEndPoint(Year: number, PartCode: number, DepoCode: number, ProductCode: string, NCCode: number): Observable {\r\n const endpointUrl = `${this.GetContractsDetailsForRemindMajaziKardexProductUrl}/${Year}/${PartCode}/${DepoCode}/${ProductCode}/${NCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetContractsDetailsForRemindMajaziKardexProductSelectEndPoint(Year, PartCode, DepoCode, ProductCode, NCCode));\r\n }));\r\n }\r\n\r\n GetDealerSaleResultsMethodEndpoint(DCDealerCode?: string, fromDate?: string, toDate?: string): Observable {\r\n const endpointUrl = `${this.GetDealerSaleResultsMethodUrl}/${DCDealerCode}/${fromDate}/${toDate}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDealerSaleResultsMethodEndpoint(DCDealerCode, fromDate, toDate));\r\n }));\r\n }\r\n\r\n GetDepoAssignmentProductForCheckVoidContractEndPoint(Year: number, NCPartCode: number, NCCode: number): Observable {\r\n const endpointUrl = `${this.GetDepoAssignmentProductForCheckVoidContractUrl}/${Year}/${NCPartCode}/${NCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoAssignmentProductForCheckVoidContractEndPoint(Year, NCPartCode, NCCode));\r\n }));\r\n }\r\n\r\n NewDepoRevertToDepoCustomerEndPoint(rowsDepoRevertToDepoCustomer: any): Observable {\r\n const endpointUrl = this.NewDepoRevertToDepoCustomerUrl;\r\n return this.http.post(endpointUrl, JSON.stringify(rowsDepoRevertToDepoCustomer), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewDepoRevertToDepoCustomerEndPoint(rowsDepoRevertToDepoCustomer));\r\n }));\r\n }\r\n\r\n CheckDepoAssignmentIsRevertSerialEndpoint(Year: number, DepoCode: number, serial: string): Observable {\r\n const endpointUrl = `${this.CheckDepoAssignmentIsRevertSerialUrl}/${Year}/${DepoCode}/${serial}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.CheckDepoAssignmentIsRevertSerialEndpoint(Year, DepoCode, serial));\r\n }));\r\n }\r\n\r\n GetAllReportCashierEndpoint(year: number, partCode: number, CustomerCode: number, SubCustomerCode: number, fromDate?: string, toDate?: string, ncIsAccepted?: boolean, ncIsVoid?: boolean): Observable {\r\n const endpointUrl = `${this.GetAllReportCashierUrl}/${year}/${partCode}/${CustomerCode}/${SubCustomerCode}/${fromDate}/${toDate}/${ncIsAccepted}/${ncIsVoid}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAllReportCashierEndpoint(year, partCode, CustomerCode, SubCustomerCode, fromDate, toDate, ncIsAccepted, ncIsVoid));\r\n }));\r\n }\r\n\r\n GetCashUserEndpoint(CMainCode: number): Observable {\r\n const endpointUrl = `${this.GetCashUserUrl}/${CMainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCashUserEndpoint(CMainCode));\r\n }));\r\n }\r\n\r\n GetCashUserByIdEndpoint(id: string): Observable {\r\n const endpointUrl = `${this.GetCashUserByIdUrl}/${id}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCashUserByIdEndpoint(id));\r\n }));\r\n }\r\n\r\n\r\n}\r\n","import { Component, Input, OnChanges, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport * as moment from 'jalali-moment';\r\nimport { ReportCashierByDateModel } from '../../../models/CashDesk/report-cashier-by-date.model';\r\nimport { ReportSaleCashDeskModel } from '../../../models/CashDesk/report-sale-cash-desk.model';\r\nimport { CashUser } from '../../../models/CashUser.model';\r\nimport { VMReportReciptCashierResult } from '../../../models/VMReportReciptCashierResult.model';\r\nimport { AccountService } from '../../../services/account.service';\r\nimport { AlertService, MessageSeverity } from '../../../services/alert.service';\r\nimport { fadeInOut } from '../../../services/animations';\r\nimport { AuthService } from '../../../services/auth.service';\r\nimport { MyAccountService } from '../../../services/MyAccount.service';\r\nimport { MyCompanyService } from '../../../services/MyCompany.service';\r\n\r\n@Component({\r\n selector: 'report-recipt-cash-desk',\r\n templateUrl: './report-recipt-cash-desk.component.html',\r\n styleUrls: ['./report-recipt-cash-desk.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class ReportReciptCashDeskComponent implements OnInit {\r\n public cashDeskDetail: ReportCashierByDateModel = new ReportCashierByDateModel();\r\n public cashDeskDate = moment();\r\n public cashDate: string = '';\r\n public totalCredit: number = 0;\r\n public totalDebt: number = 0;\r\n public columns: any[] = [];\r\n\r\n @Input() reportSaleCashDesk: ReportSaleCashDeskModel = new ReportSaleCashDeskModel();\r\n\r\n constructor(private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.cashDate = this.route.snapshot.paramMap.get('cashDate');\r\n this.cashDate = moment(this.cashDate).locale('fa').format('YYYY/MM/DD').replace('-', '/');\r\n this.cashDeskDate = moment(this.cashDate, 'jYYYY,jMM,jDD');\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

\r\n \r\n گزارش پرداختی صندوق\r\n

\r\n
\r\n
\r\n \r\n تاریخ\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ردیفشماره پرداختتاریخ پرداختشماره قراردادمشتریمبلغ قراردادمبلغ پرداختی
{{ i + 1 }}{{item.rNum}}{{item.rDate}}{{item.rContractCode}}{{item.cName}}{{item.sumPriceContracted | number}}{{item.sumPayment | 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","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'record-personal-information',\n templateUrl: './record-personal-information.component.html',\n animations: [fadeInOut]\n})\nexport class RecordPersonalInformationComponent {\n}\n","
\r\n

\r\n \r\n ثبت اطلاعات فردی\r\n

\r\n\r\n
\r\n \r\n
\r\n
\r\n","\n \nimport { SaleOrders } from \"./SaleOrders.model\"; \nimport { VMSaleSubOrders_BarCode } from \"./VMSaleSubOrders_BarCode.model\";\n\nexport class VMSelectSaleSubOrder_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(saleOrder?: SaleOrders, rowsNewProduct?: VMSaleSubOrders_BarCode[], code?: number) {\n\n this.saleOrder = saleOrder;\n this.rowsNewProduct = rowsNewProduct;\n this.code = code;\n\n }\n\n public saleOrder: SaleOrders = new SaleOrders();\n public rowsNewProduct: VMSaleSubOrders_BarCode[] = [];\n public code: number;\n\n}\n","/* (ignored) */","import {Component, OnInit, Inject} from '@angular/core';\nimport {FormBuilder, FormGroup, Validators, FormControl} from '@angular/forms';\nimport {Router, ActivatedRoute} from '@angular/router';\nimport {City} from \"../../../../models/client/city\";\nimport {Province} from \"../../../../models/client/province\";\n\n\n@Component({\n selector: 'app-delegacy-add-edit',\n templateUrl: './delegacy-add-edit.component.html',\n styleUrls: ['./delegacy-add-edit.component.scss']\n})\nexport class DelegacyAddEditComponent implements OnInit {\n\n isSuccess = false;\n numericRegex = /^[a-zA-Z0-9]+$/;\n cities: City[] = [\n {id: 1, name: 'تهران', provinceId: 1, province: {id: 1, name: 'تهران'}},\n {id: 2, name: 'کرج', provinceId: 2, province: {id: 2, name: 'البرز'}},\n {id: 3, name: 'قزوین', provinceId: 3, province: {id: 3, name: 'قزوین'}},\n ];\n filterdCities: City[] = [];\n provincies: Province[] = [\n {id: 1, name: 'تهران'},\n {id: 2, name: 'البرز'},\n {id: 3, name: 'قزوین'}\n ];\n form: FormGroup;\n actionType: string;\n delegacyId: number;\n errorMessage: any;\n\n constructor(\n private formBuilder: FormBuilder,\n private avRoute: ActivatedRoute,\n private router: Router) {\n const idParam = 'id';\n this.actionType = 'Add';\n if (this.avRoute.snapshot.params[idParam]) {\n this.delegacyId = this.avRoute.snapshot.params[idParam];\n }\n\n this.form = this.formBuilder.group(\n {\n name: new FormControl('',\n [\n Validators.required,\n Validators.maxLength(200)\n ]),\n family: new FormControl('',\n [\n Validators.required,\n Validators.maxLength(200)\n ]),\n region: new FormControl('',\n [\n Validators.required,\n Validators.pattern(this.numericRegex)\n ]),\n provinceId: new FormControl('', [Validators.required]\n ),\n cityId: new FormControl('', [Validators.required]\n ),\n address: new FormControl('',\n [\n Validators.required\n ]),\n area: new FormControl('',\n [\n Validators.required,\n Validators.pattern(this.numericRegex)\n ]),\n areaper: new FormControl('',\n [\n Validators.required,\n Validators.pattern(this.numericRegex)\n ]),\n phoneNumber: new FormControl('',\n [\n Validators.required,\n Validators.minLength(11),\n Validators.maxLength(11),\n Validators.pattern(\"^((\\\\+91-?)|0)?[0-9]{10}$\")\n ]),\n }\n );\n }\n\n ngOnInit(): void {\n if (this.delegacyId > 0) {\n\n this.actionType = 'Edit';\n /* this.delegacyService.getDelegacy(this.delegacyId)\n .subscribe(data => (\n this.existingDelegacy = data,\n this.form.controls['name'].setValue(data.name),\n this.form.controls['family'].setValue(data.family),\n this.form.controls['region'].setValue(data.region),\n this.form.controls['provinceId'].setValue(data.provinceID),\n this.form.controls['cityId'].setValue(data.cityID),\n this.form.controls['address'].setValue(data.address),\n this.form.controls['area'].setValue(data.area),\n this.form.controls['areaper'].setValue(data.areaper),\n this.form.controls['phoneNumber'].setValue(data.phoneNumber)\n ));*/\n }\n }\n\n cancel() {\n this.router.navigate(['/']);\n }\n\n}\n","
\n
\n
\n
\n
\n

ثبت نام اولیه نماینده

\n
\n
\n
\n درخواست شما با شماره {{ delegacyId }}\n با موفقیت ثبت گردید.\n
\n
\n
\n
\n \n
\n
\n
\n لطفا نام را وارد کنید.\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n لطفا نام خانوادگی را وارد کنید.\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n لطفا منطقه شهرداری را وارد کنید.\n
\n
\n
\n
\n
\n\n
\n \n \n
\n \n لطفا استان را وارد کنید.\n \n
\n \n
\n\n
\n \n \n
\n \n لطفا شهر را وارد کنید.\n \n
\n \n
\n
\n \n \n
\n \n لطفا آدرس را وارد کنید.\n \n
\n \n
\n
\n \n \n
\n \n لطفا متراژ را وارد کنید.\n \n
\n \n
\n
\n \n \n
\n \n لطفا متراژ بر متر مربع وارد کنید.\n \n
\n \n
\n
\n \n \n
\n \n لطفا شماره همراه را با فرمت صحیح وارد کنید.\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'record-customer-checks',\n templateUrl: './record-customer-checks.component.html',\n animations: [fadeInOut]\n})\nexport class RecordCustomerChecksComponent {\n}\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, Input, TemplateRef } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { VMSaleNewContract } from '../../models/VMSaleNewContract.model';\r\nimport { VMSaleNewContractProduct_PrintInvoice, VMSaleNewContractProduct_PrintInvoice_String } from '../../models/VMSaleNewContractProduct_PrintInvoice.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { window } from 'rxjs/operators';\r\nimport { isWindow } from 'jquery';\r\nimport { SharedService } from '../../services/Shared.service';\r\n\r\n@Component({\r\n selector: 'bill-info',\r\n templateUrl: './bill-info.component.html',\r\n styleUrls: ['./bill-info.component.scss']\r\n})\r\nexport class billInfoComponent {\r\n billLogo = require('./../../assets/images/logo-bill.png').default;\r\n\r\n elementType = 'svg';\r\n format = 'CODE128';\r\n lineColor = '#000000';\r\n width = 2;\r\n height = 70;\r\n displayValue = true;\r\n fontOptions = '';\r\n font = 'monospace';\r\n textAlign = 'center';\r\n textPosition = 'bottom';\r\n textMargin = 2;\r\n fontSize = 20;\r\n background = '#ffffff';\r\n margin = 10;\r\n marginTop = 10;\r\n marginBottom = 10;\r\n marginLeft = 10;\r\n marginRight = 10;\r\n values: number; \r\n \r\n rowsVMSaleNewContract: VMSaleNewContract = new VMSaleNewContract();\r\n index: number = 0;\r\n public NCName: string;\r\n public NCYear: number = 0;\r\n public NCPartCode: number = 5;\r\n public NCCode: number = 0;\r\n\r\n public NCDate: string;\r\n public NCRegistUserCode: number;\r\n public Cashyer: string;\r\n public sumCount: string;\r\n public sumTotal: string;\r\n public sumDiscountStr: string;\r\n public sumDiscount: number;\r\n public sumTotalWithDiscount: string;\r\n public totalTax: string;\r\n public totalWithTax: string;\r\n public paymentType: string;\r\n\r\n loadingIndicator: boolean;\r\n\r\n rowsCachINV: VMSaleNewContractProduct_PrintInvoice[] = [];\r\n rowsINV: VMSaleNewContractProduct_PrintInvoice[] = [];\r\n rowsINV_String: VMSaleNewContractProduct_PrintInvoice_String[] = [];\r\n\r\n @ViewChild('actionsTemplateSerial', { static: true })\r\n actionsTemplateSerial: TemplateRef;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n columns: any[] = [];\r\n get CanManagemanageContract() {\r\n return this.accountService.userHasPermission(Permission.ContractManage);\r\n }\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private shareService: SharedService,\r\n private translationService: AppTranslationService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n { prop: 'index', name: 'ردیف', width: 60, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n //{ prop: 'ncpYear', name: gT('سال'), width: 100 },\r\n //{ prop: 'ncpPartCode', name: gT('کد'), width: 100 },\r\n { prop: 'ncpProductCode', name: gT('کد کالا'), width: 150 },\r\n { prop: 'dcDesc', name: gT('کالا'), width: 200 },\r\n { prop: 'ncpAmount', name: gT('تعداد'), width: 120 },\r\n { prop: 'ncpPrice', name: gT('قیمت کالا'), width: 150 },\r\n { prop: 'totalPrice', name: gT('مبلغ تخفیف'), width: 150 },\r\n { prop: 'ncpDiscountPercent', name: gT('درصد تخفیف'), width: 150 },\r\n { prop: 'totalPriceWithDiscount', name: gT('مبلغ پس از کسر تخفیف'), width: 200 }\r\n ];\r\n\r\n if (this.CanManagemanageContract) {\r\n this.columns.push({ name: '', width: 200, resizeable: true, canAutoResize: true, sortable: true, draggable: true });\r\n\r\n\r\n //this.columns = this.columns.filter(c => {\r\n // return c.name !== \"میلادی\";\r\n //});\r\n\r\n //this.columns = this.columns.filter(c => {\r\n // return c.name !== \"کد زیرگروه\";\r\n //});\r\n\r\n }\r\n }\r\n\r\n showbill(NCYear: number, NCPartCode: number, NCCode: number) {\r\n this.accountService.GetSaleNewContract_PrintInvoice(NCYear, NCPartCode, NCCode).subscribe(res => res != null ? this.MethodShowbillPrint(res, res.saleNewContractProducts) : this.alertService.showMessage('Error!', ' قرارداد شماره ' + this.NCCode + ' ثبت نشده است.', MessageSeverity.error), error => this.saveerror(error));\r\n }\r\n\r\n MethodShowbillPrint(row: VMSaleNewContract, SaleNewContractProducts: VMSaleNewContractProduct_PrintInvoice[]) {\r\n\r\n if (row != null) {\r\n this.NCName = row.ncName;\r\n this.NCYear = row.ncYear;\r\n this.NCPartCode = row.ncPartCode;\r\n this.NCCode = row.ncCode;\r\n this.values = (this.NCCode);\r\n this.NCDate = row.ncDate = new Date(row.ncDate).toLocaleDateString('fa-IR');\r\n this.Cashyer = row.cashyer = \"تهران- خیابان گلستان- شرکت آرسام تجارت نیکو\";\r\n //this.NCRegistUserCode = row.ncRegistUserCode;\r\n this.NCRegistUserCode = 1;\r\n this.rowsVMSaleNewContract = row;\r\n this.sumCount = this.shareService.toConvertCurrencyFormatter(row.sumCount);\r\n this.sumTotal = this.shareService.toConvertCurrencyFormatter(row.sumTotal);\r\n this.sumDiscountStr = this.shareService.toConvertCurrencyFormatter(row.sumDiscount);\r\n this.sumDiscount = Number(row.sumDiscount);\r\n this.sumTotalWithDiscount = this.shareService.toConvertCurrencyFormatter(row.sumTotalWithDiscount);\r\n this.paymentType = \"پارسیان\";\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = true;\r\n this.rowsINV_String = this.transform(SaleNewContractProducts);\r\n\r\n this.rowsCachINV = [...SaleNewContractProducts];\r\n this.rowsINV = SaleNewContractProducts;\r\n \r\n this.GetTaxPrice(this.NCYear, row.sumTotalWithDiscount);\r\n }\r\n else {\r\n this.loadingIndicator = false;\r\n this.alertService.showMessage('Error!', 'خطا در برقراری ارتباط، بعد از بررسی مجدد اقدام نمایید.', MessageSeverity.error);\r\n }\r\n }\r\n\r\n transform(SaleNewContractProducts: VMSaleNewContractProduct_PrintInvoice[]): any {\r\n let rowsINV_String: VMSaleNewContractProduct_PrintInvoice_String[] = [];\r\n SaleNewContractProducts.forEach((user, index, SaleNewContractProducts) => {\r\n (user as any).index = index + 1;\r\n let row = new VMSaleNewContractProduct_PrintInvoice_String();\r\n row.ncpYear = String(user.ncpYear);\r\n row.ncpPartCode = String(user.ncpPartCode);\r\n row.ncpCode = String(user.ncpCode);\r\n row.ncpProductCode = (user.ncpProductCode);\r\n row.barCode = (user.barCode);\r\n row.dcDesc = (user.dcDesc); \r\n row.ncpAmount = this.shareService.toConvertCurrencyFormatter(user.ncpAmount);\r\n row.ncpDiscountPercent = this.shareService.toConvertCurrencyFormatter(user.ncpDiscountPercent);\r\n row.ncpPrice = this.shareService.toConvertCurrencyFormatter(user.ncpPrice);\r\n row.totalPrice = this.shareService.toConvertCurrencyFormatter(user.totalPrice);\r\n row.totalPriceWithDiscount = this.shareService.toConvertCurrencyFormatter(user.totalPriceWithDiscount);\r\n row.totalPriceDiscount = this.shareService.toConvertCurrencyFormatter(user.totalPrice - user.totalPriceWithDiscount);\r\n rowsINV_String.push(row)\r\n\r\n });\r\n return rowsINV_String\r\n }\r\n private saveerror(error: any) {\r\n\r\n }\r\n private GetTaxPrice(year: number, PriceWithDiscount: number) {\r\n this.accountService.GetTaxPriceTotal(year, PriceWithDiscount).subscribe(res => this.SetTaxPrice(PriceWithDiscount,res), error => this.saveerror(error));\r\n }\r\n private SetTaxPrice(PriceWithDiscount: number, TaxPrice: number) {\r\n var totalTax = 0;\r\n PriceWithDiscount > 0 ? totalTax = TaxPrice : totalTax = 0;\r\n this.totalWithTax = this.shareService.toConvertCurrencyFormatter(PriceWithDiscount + totalTax);\r\n this.totalTax = this.shareService.toConvertCurrencyFormatter(totalTax);\r\n }\r\n}\r\n","
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

صورت حساب فروش کالا

\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \"Logo\r\n
\r\n
\r\n
\r\n
\r\n

فروشگاه های زنجیره ای لورچ

\r\n
تلفن فروشگاه : 021123456789
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

\r\n نام شعبه : {{NCName}}\r\n

\r\n
\r\n
\r\n شماره فاکتور :\r\n {{NCCode}}\r\n
\r\n
\r\n تاریخ :\r\n {{NCDate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n صندوقدار :\r\n - - - - \r\n
\r\n
\r\n\r\n
\r\n
\r\n کد صندوق :\r\n {{NCRegistUserCode}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n

شرح خرید

\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
ردیفکالاتعدادقیمت کالامبلغ قبل از کسر تخفیف
کد کالامبلغ تخفیفدرصد تخفیف
مبلغ پس از کسر تخفیف
{{ i + 1 }}{{item.dcDesc}}{{item.ncpAmount}}{{item.ncpPrice}}{{item.totalPrice}}
{{item.ncpProductCode}}{{item.totalPriceDiscount}}{{item.ncpDiscountPercent}}%
{{item.totalPriceWithDiscount}}
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n تعداد اقلام خرید شده در فاکتور :\r\n {{sumCount}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
جمع کل قبل از تخفیف (ریال): {{sumTotal}}
\r\n
0\">جمع کل تخفیف (ریال): {{sumDiscountStr}}
\r\n

\r\n مبلغ مالیات (ریال):\r\n {{totalTax}}\r\n

\r\n

مبلغ قابل پرداخت (ریال):{{totalWithTax}}

\r\n
\r\n
\r\n\r\n
0\">\r\n
\r\n

سود شما از این خرید: {{sumDiscountStr}} ریال

\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
شرکت آرسام تجارت نیکو
\r\n
\r\n
\r\n
کد اقتصادی : 411476319377
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n مرکز تماس با مشتریان : 021-75968\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n","\n\nimport { Injectable } from '@angular/core';\nimport { HttpResponseBase } from '@angular/common/http';\nimport { Observable, Subject } from 'rxjs';\n\nimport { Utilities } from '../services/utilities';\n\n\n\n@Injectable()\nexport class AlertService {\n private messages = new Subject();\n private dialogs = new Subject();\n\n private loadingMessageTimeoutId: any;\n\n\n\n showDialog(message: string);\n showDialog(message: string, type: DialogType, okCallback: (val?: any) => any);\n showDialog(message: string, type: DialogType, okCallback?: (val?: any) => any, cancelCallback?: () => any, okLabel?: string, cancelLabel?: string, defaultValue?: string);\n showDialog(message: string, type?: DialogType, okCallback?: (val?: any) => any, cancelCallback?: () => any, okLabel?: string, cancelLabel?: string, defaultValue?: string) {\n\n if (!type) {\n type = DialogType.alert;\n }\n\n this.dialogs.next({ message, type, okCallback, cancelCallback, okLabel, cancelLabel, defaultValue });\n }\n\n\n\n showMessage(summary: string);\n showMessage(summary: string, detail: string, severity: MessageSeverity);\n showMessage(summaryAndDetails: string[], summaryAndDetailsSeparator: string, severity: MessageSeverity);\n showMessage(response: HttpResponseBase, ignoreValue_useNull: string, severity: MessageSeverity);\n showMessage(data: any, separatorOrDetail?: string, severity?: MessageSeverity) {\n\n if (!severity) {\n severity = MessageSeverity.default;\n }\n\n if (data instanceof HttpResponseBase) {\n data = Utilities.getHttpResponseMessages(data);\n separatorOrDetail = Utilities.captionAndMessageSeparator;\n }\n\n if (data instanceof Array) {\n for (const message of data) {\n const msgObject = Utilities.splitInTwo(message, separatorOrDetail);\n\n this.showMessageHelper(msgObject.firstPart, msgObject.secondPart, severity, false);\n }\n } else {\n this.showMessageHelper(data, separatorOrDetail, severity, false);\n }\n }\n\n\n showStickyMessage(summary: string);\n showStickyMessage(summary: string, detail: string, severity: MessageSeverity, error?: any);\n showStickyMessage(summary: string, detail: string, severity: MessageSeverity, error?: any, onRemove?: () => any);\n showStickyMessage(summaryAndDetails: string[], summaryAndDetailsSeparator: string, severity: MessageSeverity);\n showStickyMessage(response: HttpResponseBase, ignoreValue_useNull: string, severity: MessageSeverity);\n showStickyMessage(data: string | string[] | HttpResponseBase, separatorOrDetail?: string, severity?: MessageSeverity, error?: any, onRemove?: () => any) {\n\n if (!severity) {\n severity = MessageSeverity.default;\n }\n\n if (data instanceof HttpResponseBase) {\n data = Utilities.getHttpResponseMessages(data);\n separatorOrDetail = Utilities.captionAndMessageSeparator;\n }\n\n\n if (data instanceof Array) {\n for (const message of data) {\n const msgObject = Utilities.splitInTwo(message, separatorOrDetail);\n\n this.showMessageHelper(msgObject.firstPart, msgObject.secondPart, severity, true);\n }\n } else {\n\n if (error) {\n\n const msg = `Severity: \"${MessageSeverity[severity]}\", Summary: \"${data}\", Detail: \"${separatorOrDetail}\", Error: \"${Utilities.safeStringify(error)}\"`;\n\n switch (severity) {\n case MessageSeverity.default:\n this.logInfo(msg);\n break;\n case MessageSeverity.info:\n this.logInfo(msg);\n break;\n case MessageSeverity.success:\n this.logMessage(msg);\n break;\n case MessageSeverity.error:\n this.logError(msg);\n break;\n case MessageSeverity.warn:\n this.logWarning(msg);\n break;\n case MessageSeverity.wait:\n this.logTrace(msg);\n break;\n }\n }\n\n this.showMessageHelper(data, separatorOrDetail, severity, true, onRemove);\n }\n }\n\n private showMessageHelper(summary: string, detail: string, severity: MessageSeverity, isSticky: boolean, onRemove?: () => any) {\n\n const alertCommand: AlertCommand = {\n operation: isSticky ? 'add_sticky' : 'add',\n message: { severity, summary, detail },\n onRemove\n };\n\n this.messages.next(alertCommand);\n }\n\n resetStickyMessage() {\n this.messages.next({ operation: 'clear' });\n }\n\n startLoadingMessage(message = 'بارگذاری...', caption = '') {\n clearTimeout(this.loadingMessageTimeoutId);\n\n this.loadingMessageTimeoutId = setTimeout(() => {\n this.showStickyMessage(caption, message, MessageSeverity.wait);\n }, 1000);\n }\n\n stopLoadingMessage() {\n clearTimeout(this.loadingMessageTimeoutId);\n this.resetStickyMessage();\n }\n\n\n\n logDebug(msg) {\n console.debug(msg);\n }\n\n logError(msg) {\n console.error(msg);\n }\n\n logInfo(msg) {\n console.info(msg);\n }\n\n logMessage(msg) {\n console.log(msg);\n }\n\n logTrace(msg) {\n console.trace(msg);\n }\n\n logWarning(msg) {\n console.warn(msg);\n }\n\n getDialogEvent(): Observable {\n return this.dialogs.asObservable();\n }\n\n getMessageEvent(): Observable {\n return this.messages.asObservable();\n }\n}\n\n\n// ******************** Dialog ********************//\nexport class AlertDialog {\n constructor(\n public message: string,\n public type: DialogType,\n public okCallback: (val?: any) => any,\n public cancelCallback: () => any,\n public defaultValue: string,\n public okLabel: string,\n public cancelLabel: string) {\n\n }\n}\n\nexport enum DialogType {\n alert,\n confirm,\n prompt\n}\n// ******************** End ********************//\n\n\n// ******************** Growls ********************//\nexport class AlertCommand {\n constructor(\n public operation: 'clear' | 'add' | 'add_sticky',\n public message?: AlertMessage,\n public onRemove?: () => any) { }\n}\n\nexport class AlertMessage {\n constructor(\n public severity: MessageSeverity,\n public summary: string,\n public detail: string) { }\n}\n\nexport enum MessageSeverity {\n default,\n info,\n success,\n error,\n warn,\n wait\n}\n// ******************** End ********************//\n","import { Component, ViewChild, OnInit, TemplateRef, ErrorHandler, Input } from '@angular/core';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { ReportAll } from '../../models/ReportAll.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { invpricecomponent } from './inv-price.component';\r\nimport { HesabKindBanks } from '../../models/HesabKindBanks.model';\r\nimport { SaleBankAccounts } from '../../models/SaleBankAccounts.model';\r\nimport { RequestInvoice } from '../../models/RequestInvoice.model';\r\nimport { RequestInvoiceByMoney } from '../../models/RequestInvoiceByMoney.model';\r\nimport { requestinvoiceproductComponent } from './request-invoice-product.component';\r\nimport { SupliesDealer } from '../../models/SupliesDealer.model';\r\nimport { SDCodeClass } from '../../models/SDCodeClass.model';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { RequestInvoiceEnum } from '../../enums/request-invoice.enum';\r\nimport { FormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'request-invoice-info',\r\n templateUrl: './request-invoice-info.component.html',\r\n styleUrls: ['./request-invoice-info.component.scss']\r\n})\r\nexport class requestinvoiceinfoComponent implements OnInit {\r\n\r\n rows: RequestInvoiceByMoney[] = [];\r\n rowsCache: RequestInvoiceByMoney[] = [];\r\n columns: any[] = [];\r\n loadingIndicator: boolean;\r\n public supplierList: SupliesDealer[] = [];\r\n public sdCode: string;\r\n supplierControl = new FormControl('', Validators.required);\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModalproduct', { static: true })\r\n editorModalproduct: ModalDirective;\r\n\r\n @ViewChild('requestinvoiceproduct', { static: true })\r\n requestinvoiceproduct: requestinvoiceproductComponent;\r\n\r\n constructor(private alertService: AlertService\r\n , private accountService: AccountService\r\n , private translationService: AppTranslationService\r\n , private authService: AuthService\r\n , private myCompanyService: MyCompanyService) { }\r\n\r\n ngOnInit() {\r\n this.accountService.SupliesDealerList().subscribe(res => this.methodLoadSuplies(res), error => this.myCompanyService.onCurrentUserDataLoadFailed(error));\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n { prop: 'index', name: gT('requestInvoice.Index'), width: 70, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { name: gT('requestInvoice.ShowRequest'), width: 80, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'reqCode', name: gT('requestInvoice.RequestCode'), width: 80 },\r\n { prop: 'reqDatetime', name: gT('requestInvoice.RequestDate'), width: 120 },\r\n { prop: 'moneySum', name: gT('requestInvoice.TotalAmountRequest'), width: 120 },\r\n { prop: 'amountSum', name: gT('requestInvoice.TotalNumberItems'), width: 120 },\r\n { prop: 'reqStatus', name: gT('requestInvoice.Status'), width: 120 },\r\n { prop: 'reqDiscount', name: gT('requestInvoice.TotalAmountDiscount'), width: 120 },\r\n { prop: 'reqDiscountMoney', name: gT('requestInvoice.AmountAfterDiscount'), width: 160 },\r\n { prop: 'reqTax', name: gT('requestInvoice.Taxation'), width: 120 },\r\n { prop: 'reqAllMoney', name: gT('requestInvoice.TotalAmountInvoice'), width: 120 },\r\n { prop: 'reqInvoiceNumber', name: gT('requestInvoice.InvoiceNumber'), width: 120 }\r\n ];\r\n }\r\n\r\n methodLoadSuplies(res: SupliesDealer[]): void {\r\n this.supplierList = res;\r\n this.supplierList.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.sdCode = user.sdCode;\r\n this.loadingIndicator = true;\r\n }\r\n });\r\n this.loaddata();\r\n }\r\n\r\n selectSuplies(event) {\r\n this.sdCode = event.value.toString();\r\n var ressdCode = new SDCodeClass();\r\n ressdCode.result = this.sdCode;\r\n this.MethodLoadDealerCode(ressdCode.result);\r\n\r\n }\r\n\r\n get Viewsupliesdealer() {\r\n return this.accountService.userHasPermission(Permission.ViewSupliesPermission);\r\n }\r\n\r\n loaddata() {\r\n if (this.Viewsupliesdealer) {\r\n if (this.supplierList.length > 0) {\r\n this.MethodLoadDealerCode(this.supplierList[0].sdCode);\r\n } else {\r\n this.alertService.showMessage('هیچ تامین کننده ای پیدا نشد')\r\n }\r\n }\r\n else {\r\n if (this.supplierList.length > 0) {\r\n this.accountService.getSDCode(this.authService.currentUser.id).subscribe(res => this.MethodLoadDealerCode(res.result), error => this.myCompanyService.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n this.alertService.showMessage('هیچ تامین کننده ای پیدا نشد')\r\n }\r\n }\r\n }\r\n\r\n MethodLoadDealerCode(sdCode): void {\r\n this.loadingIndicator = true;\r\n this.sdCode = sdCode;\r\n this.accountService.GetRequestInvoiceByGroupResult(sdCode, RequestInvoiceEnum.requestInvoice).subscribe(results => this.onDataLoadSuccessful(results), error => this.myCompanyService.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n onDataLoadSuccessful(res): void {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n res.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (user.reqDatetime != null) {\r\n user.reqDatetime = new Date(user.reqDatetime.toString()).toLocaleDateString('fa-IR');\r\n }\r\n if (user.amountSum) {\r\n user.amountSum = this.SumMoney([user.amountSum]);\r\n }\r\n if (user.moneySum) {\r\n user.moneySum = this.SumMoney([user.moneySum]);\r\n }\r\n if (user.reqAllMoney) {\r\n user.reqAllMoney = this.SumMoney([user.reqAllMoney]);\r\n }\r\n if (user.reqDiscountMoney) {\r\n user.reqDiscountMoney = this.SumMoney([user.reqDiscountMoney]);\r\n }\r\n if (user.reqDiscount) {\r\n user.reqDiscount = this.SumMoney([user.reqDiscount]);\r\n }\r\n if (user.reqTax) {\r\n user.reqTax = this.SumMoney([user.reqTax]);\r\n }\r\n if (user.reqStatus == \"0\") {\r\n user.reqStatus = \"عدم ارسال\";\r\n }\r\n else if (user.reqStatus == \"1\") {\r\n user.reqStatus = \"ارسال شده\";\r\n }\r\n });\r\n this.rowsCache = [...res];\r\n this.rows = res;\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n editCustomer(res: RequestInvoiceByMoney) {\r\n this.requestinvoiceproduct.resetData();\r\n var currencyFormatter = require('currency-formatter');\r\n this.requestinvoiceproduct.REQPCode = res.reqCode;\r\n this.requestinvoiceproduct.REQPDealercode = res.reqDealercode;\r\n this.requestinvoiceproduct.REQPYear = res.reqYear;\r\n this.requestinvoiceproduct.MoneySum = currencyFormatter.unformat(res.moneySum, { code: 'USD' });/* Number(res.moneySum.toString().replace(\",\", \"\"));*/\r\n this.requestinvoiceproduct.REQDiscount = currencyFormatter.unformat(res.reqDiscount, { code: 'USD' });// res.reqDiscount;\r\n this.requestinvoiceproduct.REQDiscountMoney = currencyFormatter.unformat(res.reqDiscountMoney, { code: 'USD' }); //Number( res.reqDiscountMoney.toString().replace(\",\",\"\"));\r\n if (res.reqTax != null) {\r\n this.requestinvoiceproduct.REQTax = currencyFormatter.unformat(res.reqTax, { code: 'USD' }); // Number(res.reqTax.toString().replace(\",\", \"\"));\r\n this.requestinvoiceproduct.REQAllMoney = currencyFormatter.unformat(res.reqAllMoney, { code: 'USD' }); //Number(res.reqAllMoney.toString().replace(\",\", \"\"));\r\n this.requestinvoiceproduct.REQInvoiceNumber = currencyFormatter.unformat(res.reqInvoiceNumber, { code: 'USD' }); //Number(res.reqInvoiceNumber.toString().replace(\",\", \"\"));\r\n }\r\n else {\r\n this.requestinvoiceproduct.REQTax = (9 / 100) * currencyFormatter.unformat(res.reqDiscountMoney, { code: 'USD' });\r\n this.requestinvoiceproduct.REQAllMoney = currencyFormatter.unformat(res.reqDiscountMoney, { code: 'USD' }) + currencyFormatter.unformat(this.requestinvoiceproduct.REQTax, { code: 'USD' });\r\n }\r\n this.requestinvoiceproduct.loaddata(RequestInvoiceEnum.requestInvoice);\r\n this.editorModalproduct.show();\r\n }\r\n\r\n onEditorModalHidden() {\r\n }\r\n\r\n editorModalproductClose() {\r\n this.editorModalproduct.hide();\r\n this.requestinvoiceproduct.rows = [];\r\n this.requestinvoiceproduct.MoneySum = 0;\r\n this.requestinvoiceproduct.REQDiscount = 0;\r\n this.requestinvoiceproduct.REQDiscountMoney = 0;\r\n this.requestinvoiceproduct.REQTax = 0;\r\n this.requestinvoiceproduct.REQInvoicePrice = 0;\r\n this.requestinvoiceproduct.REQInvoiceNumber = 0;\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.reqStatus, r.reqInvoiceNumber));\r\n }\r\n}\r\n\r\n\r\n","
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n تامین کننده\r\n \r\n \r\n {{Suplies.sdName}}\r\n \r\n \r\n لطفا تامین کننده را انتخاب کنید.\r\n {{supplierControl.value?.sdName}}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

نمایش فاکتور

\r\n \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, ViewChild, OnInit, TemplateRef, ElementRef } from '@angular/core';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ReportAll } from '../../models/ReportAll.model';\r\nimport { SettlementSaveinfocomponent } from './SettlementSave-info.component';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport * as moment from 'jalali-moment';\r\nimport { SaleReceiptService } from '../../services/receipt-services/sale-receipt.service';\r\nimport { SaleClosingManagementService } from '../../services/base-services/sale-closing-management.service';\r\n\r\n@Component({\r\n selector: 'settlement-info',\r\n templateUrl: './settlement-info.component.html',\r\n styleUrls: ['./settlement-info.component.scss']\r\n})\r\nexport class settlementinfocomponent implements OnInit {\r\n\r\n columns: any[] = [];\r\n public listSettlements: ReportAll;\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private accountService: AccountService,\r\n private myAccountService: MyAccountService,\r\n private myCompanyService: MyCompanyService,\r\n private translationService: AppTranslationService,\r\n private authService: AuthService,\r\n private saleClosingManagementService: SaleClosingManagementService,\r\n private saleReceiptService: SaleReceiptService\r\n ) { }\r\n\r\n rowsReportCache: ReportAll[] = [];\r\n rowsReport: ReportAll[] = [];\r\n public isError = false;\r\n\r\n\r\n loadingIndicator: boolean;\r\n selected = [];\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModalSettlementSave', { static: false })\r\n editorModalSettlementSave: ModalDirective;\r\n\r\n @ViewChild('SettlementSave', { static: false })\r\n SettlementSave: SettlementSaveinfocomponent;\r\n\r\n @ViewChild('myTable', { static: true }) table: any;\r\n\r\n CustomerCode: number = 0;\r\n\r\n public fromDate = \"\";\r\n public toDate = \"\";\r\n dateObjectFromDate = moment();\r\n dateObjectToDate = moment();\r\n\r\n datePickerConfig = {\r\n firstDayOfWeek: 'su',\r\n monthFormat: 'MMM, YYYY',\r\n disableKeypress: false,\r\n allowMultiSelect: false,\r\n closeOnSelect: undefined,\r\n closeOnSelectDelay: 100,\r\n onOpenDelay: 0,\r\n weekDayFormat: 'ddd',\r\n appendTo: document.body,\r\n drops: 'down',\r\n opens: 'right',\r\n showNearMonthDays: true,\r\n showWeekNumbers: false,\r\n enableMonthSelector: true,\r\n format: \"YYYY-MM-DD HH:mm\",\r\n yearFormat: 'YYYY',\r\n showGoToCurrent: true,\r\n dayBtnFormat: 'DD',\r\n monthBtnFormat: 'MMM',\r\n hours12Format: 'hh',\r\n hours24Format: 'HH',\r\n meridiemFormat: 'A',\r\n minutesFormat: 'mm',\r\n minutesInterval: 1,\r\n secondsFormat: 'ss',\r\n secondsInterval: 1,\r\n showSeconds: false,\r\n showTwentyFourHours: true,\r\n timeSeparator: ':',\r\n multipleYearsNavigateBy: 10,\r\n showMultipleYearsNavigation: false,\r\n locale: 'fa-IR',\r\n // min:'2017-08-29 15:50',\r\n // minTime:'2017-08-29 15:50'\r\n };\r\n @ViewChild('dayPickerFromDate') datePickerFromDate: ElementRef;\r\n @ViewChild('dayPickerToDate') datePickerToDate: ElementRef;\r\n\r\n ngOnInit() {\r\n\r\n let startDateJalali1 = moment().locale('fa').startOf('month').format('YYYY/M/D').replace('/', '-');\r\n let todayJalali1 = moment().locale('fa').format('YYYY/M/D').replace('/', '-');\r\n this.dateObjectFromDate = moment(startDateJalali1, 'jYYYY,jMM,jDD');\r\n this.dateObjectToDate = moment(todayJalali1, 'jYYYY,jMM,jDD');\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n\r\n this.columns = [\r\n { prop: 'index', name: gT('settlement.Index'), width: 60, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'ncYear', name: gT('settlement.Year'), width: 70 },\r\n { prop: 'ncCode', name: gT('Report.management.ncCode'), width: 100 },\r\n { prop: 'ncpDate', name: gT('Report.management.ncpDate'), width: 110 },\r\n { prop: 'customerCode', name: gT('settlement.CustomerCode'), width: 90 },\r\n { prop: 'subCustomerName', name: gT('settlement.SubgroupName'), width: 200 },\r\n { prop: 'customerName', name: gT('settlement.CustomerName'), width: 200 },\r\n { prop: 'sumPrice', name: gT('settlement.TotalAmountOfTheContract'), width: 110 },\r\n { prop: 'sumPriceWithKind2', name: gT('settlement.Payment'), width: 105 },\r\n { prop: 'remindWithVouchers', name: gT('settlement.RemainingWithDocuments'), width: 105 },\r\n { prop: 'subCustomerCode', name: gT('settlement.CustomerCodeBelow'), width: 110 },\r\n { prop: 'adjustmentContract', name: gT('settlement.SettlementOfContract'), width: 120 },\r\n ];\r\n\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.loaddata();\r\n }\r\n\r\n onEditorModalHidden() {\r\n }\r\n\r\n\r\n SettlementLoad(row: ReportAll) {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n var currencyFormatter = require('currency-formatter');\r\n this.SettlementSave.resetData();\r\n this.SettlementSave.NCCOdeopposing = row.ncCode;\r\n this.SettlementSave.AimContractYear = row.ncYear;\r\n this.SettlementSave.Cmain = this.CustomerCode;\r\n this.SettlementSave.Csub = row.subCustomerCode;\r\n this.SettlementSave.CustomerID = row.customerID;\r\n this.SettlementSave.CustomerName = row.customerName;\r\n this.SettlementSave.CustomerCodeName = row.cName;\r\n this.SettlementSave.Settlementbalance = { name: 0 };\r\n this.SettlementSave.Harvestamount = { name: 0 };\r\n this.SettlementSave.remindWithVouchers = { name: row.remindWithVouchers };\r\n this.SettlementSave.RemainVocher = currencyFormatter.unformat(row.remindWithVouchers, { code: 'USD' });\r\n this.SettlementSave.getData();\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n\r\n showEditorModalSettlement(status) {\r\n if (status) {\r\n this.editorModalSettlementSave.show();\r\n } else {\r\n this.alertService.showMessage('پیام', 'سندی برای تسویه وجود ندارد ', MessageSeverity.info);\r\n this.editorModalSettlementSave.hide();\r\n }\r\n }\r\n\r\n\r\n public isSaving = false;\r\n save() {\r\n this.isSaving = true;\r\n\r\n }\r\n\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(\r\n res => {\r\n this.CustomerCode = res;\r\n this.getData(res);\r\n }\r\n , error => this.onDataLoadFailed(error)\r\n );\r\n }\r\n getData(Cmain: number): void {\r\n this.loadingIndicator = true;\r\n this.saleReceiptService.getAllReportmethodsettlement(Number(this.authService.currentUser.phoneNumber), 5, 0, 0, Cmain, this.dateObjectFromDate.locale('en').format('YYYY_M_D').toString(), this.dateObjectToDate.locale('en').format('YYYY_M_D').toString()).subscribe(\r\n results => this.onDataLoadSuccessful(results),\r\n error => {\r\n this.myCompanyService.onCurrentUserDataLoadFailed(error)\r\n this.loadingIndicator = false\r\n });\r\n }\r\n onDataLoadFailed(error: any): void {\r\n this.alertService.showMessage('خطا', error, MessageSeverity.warn);\r\n this.loadingIndicator = false\r\n }\r\n onDataLoadSuccessful(results: ReportAll[]): void {\r\n if (results) {\r\n this.alertService.stopLoadingMessage();\r\n\r\n results.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n var currencyFormatter = require('currency-formatter');\r\n\r\n user.sumPrice = currencyFormatter.format(user.sumPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.SumPriceWithKindTotal = currencyFormatter.format(user.SumPriceWithKindTotal, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.remindWithVouchers = currencyFormatter.format(user.remindWithVouchers, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.AdjustmentContract = currencyFormatter.format(user.AdjustmentContract, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n });\r\n this.loadingIndicator = false;\r\n this.rowsReportCache = [...results];\r\n this.rowsReport = results;\r\n }\r\n else {\r\n this.loadingIndicator = false;\r\n }\r\n }\r\n saveerror(error: any): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n this.SettlementSave.changesSavedCallback = () => {\r\n this.editorModalSettlementSave.hide();\r\n this.loaddata();\r\n };\r\n\r\n }\r\n\r\n onSearch(): void {\r\n this.getData(this.CustomerCode);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n از تاریخ :\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n تا تاریخ :\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n {{'settlement.Index' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.Year' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.ContractNumber' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.Date' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.CustomerCode' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.SubgroupName' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.CustomerName' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.TotalAmountOfTheContract' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'settlement.Payment' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ value }} \r\n \r\n \r\n \r\n {{'settlement.RemainingWithDocuments' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n \r\n {{'settlement.SettlementOfContract' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{value}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

انتخاب تسویه

\r\n \r\n
\r\n
\r\n \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 } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'settlement',\r\n templateUrl: './settlement.component.html',\r\n animations: [fadeInOut]\r\n})\r\nexport class settlementComponent {\r\n\r\n}\r\n","
\r\n
\r\n

\r\n \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 default __webpack_public_path__ + \"banner3.png\";","import { Component, OnInit, OnDestroy, TemplateRef, ViewChild, Input } from '@angular/core';\n\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AppTranslationService } from '../../services/app-translation.service';\nimport { NotificationService } from '../../services/notification.service';\nimport { AccountService } from '../../services/account.service';\nimport { Permission } from '../../models/permission.model';\nimport { Utilities } from '../../services/utilities';\nimport { Notification } from '../../models/notification.model';\n\n\n@Component({\n selector: 'notifications-viewer',\n templateUrl: './notifications-viewer.component.html'\n})\nexport class NotificationsViewerComponent implements OnInit, OnDestroy {\n columns: any[] = [];\n rows: Notification[] = [];\n loadingIndicator: boolean;\n\n dataLoadingConsecutiveFailurs = 0;\n dataLoadingSubscription: any;\n\n\n @Input()\n isViewOnly: boolean;\n\n @Input()\n verticalScrollbar = false;\n\n\n @ViewChild('statusHeaderTemplate', { static: true })\n statusHeaderTemplate: TemplateRef;\n\n @ViewChild('statusTemplate', { static: true })\n statusTemplate: TemplateRef;\n\n @ViewChild('dateTemplate', { static: true })\n dateTemplate: TemplateRef;\n\n @ViewChild('contentHeaderTemplate', { static: true })\n contentHeaderTemplate: TemplateRef;\n\n @ViewChild('contenBodytTemplate', { static: true })\n contenBodytTemplate: TemplateRef;\n\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private accountService: AccountService, private notificationService: NotificationService) {\n }\n\n\n ngOnInit() {\n\n if (this.isViewOnly) {\n this.columns = [\n { prop: 'date', cellTemplate: this.dateTemplate, width: 100, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\n { prop: 'header', cellTemplate: this.contentHeaderTemplate, width: 200, resizeable: false, sortable: false, draggable: false },\n ];\n } else {\n const gT = (key: string) => this.translationService.getTranslation(key);\n\n this.columns = [\n { prop: '', name: '', width: 10, headerTemplate: this.statusHeaderTemplate, cellTemplate: this.statusTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\n { prop: 'date', name: gT('notifications.Date'), cellTemplate: this.dateTemplate, width: 30 },\n { prop: 'body', name: gT('notifications.Notification'), cellTemplate: this.contenBodytTemplate, width: 500 },\n { name: '', width: 80, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\n ];\n }\n\n\n this.initDataLoading();\n }\n\n\n ngOnDestroy() {\n if (this.dataLoadingSubscription) {\n this.dataLoadingSubscription.unsubscribe();\n }\n }\n\n\n\n initDataLoading() {\n\n if (this.isViewOnly && this.notificationService.recentNotifications) {\n this.rows = this.processResults(this.notificationService.recentNotifications);\n return;\n }\n\n this.loadingIndicator = true;\n\n const dataLoadTask = this.isViewOnly ? this.notificationService.getNewNotifications() : this.notificationService.getNewNotificationsPeriodically();\n\n this.dataLoadingSubscription = dataLoadTask\n .subscribe(notifications => {\n this.loadingIndicator = false;\n this.dataLoadingConsecutiveFailurs = 0;\n\n this.rows = this.processResults(notifications);\n },\n error => {\n this.loadingIndicator = false;\n\n this.alertService.showMessage('Load Error', 'Loading new notifications from the server failed!', MessageSeverity.warn);\n this.alertService.logError(error);\n\n if (this.dataLoadingConsecutiveFailurs++ < 5) {\n setTimeout(() => this.initDataLoading(), 5000);\n } else {\n this.alertService.showStickyMessage('Load Error', 'Loading new notifications from the server failed!', MessageSeverity.error);\n }\n\n });\n\n\n if (this.isViewOnly) {\n this.dataLoadingSubscription = null;\n }\n }\n\n\n private processResults(notifications: Notification[]) {\n\n if (this.isViewOnly) {\n notifications.sort((a, b) => {\n return b.date.valueOf() - a.date.valueOf();\n });\n }\n\n return notifications;\n }\n\n\n\n getPrintedDate(value: Date) {\n if (value) {\n return Utilities.printTimeOnly(value) + ' on ' + Utilities.printDateOnly(value);\n }\n }\n\n\n deleteNotification(row: Notification) {\n this.alertService.showDialog('Are you sure you want to delete the notification \\\"' + row.header + '\\\"?', DialogType.confirm, () => this.deleteNotificationHelper(row));\n }\n\n\n deleteNotificationHelper(row: Notification) {\n\n this.alertService.startLoadingMessage('Deleting...');\n this.loadingIndicator = true;\n\n this.notificationService.deleteNotification(row)\n .subscribe(results => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.rows = this.rows.filter(item => item.id != row.id);\n },\n error => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the notification.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n });\n }\n\n\n togglePin(row: Notification) {\n\n const pin = !row.isPinned;\n const opText = pin ? 'Pinning' : 'Unpinning';\n\n this.alertService.startLoadingMessage(opText + '...');\n this.loadingIndicator = true;\n\n this.notificationService.pinUnpinNotification(row, pin)\n .subscribe(results => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n row.isPinned = pin;\n },\n error => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage(opText + ' Error', `An error occured whilst ${opText} the notification.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n });\n }\n\n\n get canManageNotifications() {\n return this.accountService.userHasPermission(Permission.manageRolesPermission); \n }\n\n}\n","
\n \n \n\n \n \n \n\n \n \n \n\n \n \n {{getPrintedDate(value)}}\n \n \n\n \n \n {{value}}\n \n \n\n \n \n {{value}}\n \n \n\n\n \n \n \n \n \n \n \n
","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'website-guide',\n templateUrl: './website-guide.component.html',\n animations: [fadeInOut]\n})\nexport class WebsiteGuideComponent {\n}\n","
\r\n\r\n
\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 { ViewChild, OnInit, TemplateRef } from '@angular/core';\r\nimport { Component } from '@angular/core';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AppComponent } from '../../components/app.component';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { DepoTarazNewResult } from '../../models/DepoTarazNewResult.model';\r\nimport { depotarazComponent } from '../depotaraz/depotaraz.component';\r\nimport { Depos1 } from '../../models/Depos1.model';\r\nimport { SalePriceKind } from '../../models/SalePriceKind.model';\r\n\r\n@Component({\r\n selector: 'depotaraz-info',\r\n templateUrl: './depotaraz-info.component.html',\r\n styleUrls: ['./depotaraz-info.component.scss']\r\n})\r\nexport class depotarazinfocomponent implements OnInit {\r\n constructor(private alertService: AlertService, private AppRoute: AppComponent, private accountService: AccountService, private translationService: AppTranslationService, private authService: AuthService) {\r\n }\r\n rowsDepoRecieptTemporaryNewSelectForPermanent: depotarazComponent[] = [];\r\n rowsDepoRecieptTemporaryNewSelectForPermanentCash: depotarazComponent[] = [];\r\n columnsTemproryResid: any[] = [];\r\n loadingIndicator: boolean;\r\n public allDepos: Depos1[] = [];\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n isViewOnly = false;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n public Depocode: string;\r\n ngOnInit() {\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columnsTemproryResid = [\r\n { prop: 'index', name: 'ردیف', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false, summaryFunc: cells => this.DetailSummery(cells) },\r\n { prop: 'dcCode', name: gT('کد کالا'), width: 130 },\r\n { prop: 'dcDesc', name: gT('نام کالا'), width: 300 },\r\n { prop: 'dpuName', name: gT('واحد کالا'), width: 80 },\r\n { prop: 'sum_input', name: gT('ورود'), width: 60, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'sum_output', name: gT('خروج'), width: 60, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'remanid', name: gT('مانده'), width: 60, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'pPrice', name: gT('مبلغ فروش'), width: 110 },\r\n { prop: 'mojodiriyali', name: gT('موجودی ریالی'), width: 150, summaryFunc: cells => this.SumMoney(cells) },\r\n ];\r\n this.columnsTemproryResid.push({ name: '', width: 250, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.loaddata();\r\n }\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n select(event: number) {\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanent = [];\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanentCash = [];\r\n this.loadingIndicator = true;\r\n this.accountService.GetDepoTarazNewResult(Number(this.authService.currentUser.phoneNumber), event.toString(), this.pricekindid).subscribe(res => this.loadTemproryResidList(res), error => this.saveerror(error));\r\n };\r\n\r\n onChangegroup(idGroup) {\r\n this.pricekindid = idGroup;\r\n this.accountService.GetDepoTarazNewResult(Number(this.authService.currentUser.phoneNumber), this.Depocode, this.pricekindid).subscribe(res => this.loadTemproryResidList(res), error => this.saveerror(error));\r\n\r\n }\r\n loaddata() {\r\n this.accountService.getDepos(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n \r\n }\r\n MethodTest1(res: number): void {\r\n this.accountService.getgroupswithSaleCustomerItemPriceKind(res).subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n public allgroup: SalePriceKind[] = [];\r\n public pricekindid: number;\r\n private onCurrentUserDataLoadSuccessful(groups: SalePriceKind[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allgroup = groups;\r\n groups.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.pricekindid = user.pkcode; \r\n }\r\n });\r\n this.accountService.GetDepoTarazNewResult(Number(this.authService.currentUser.phoneNumber), this.Depocode, this.pricekindid).subscribe(res => this.loadTemproryResidList(res), error => this.saveerror(error));\r\n\r\n }\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n \r\n }\r\n methodLoaddepos(res: Depos1[]): void {\r\n this.allDepos = res;\r\n this.allDepos.forEach((user, index) => {\r\n if (index == 0) {\r\n this.Depocode = user.value;\r\n this.loadingIndicator = true;\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res));\r\n\r\n }\r\n });\r\n }\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n saveerror(error: any): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n loadTemproryResidList(res: DepoTarazNewResult[]): void {\r\n\r\n if (res) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n res.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n var currencyFormatter = require('currency-formatter');\r\n\r\n user.mojodiriyali = currencyFormatter.format((user.pPrice * user.remanid), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.pPrice = currencyFormatter.format(user.pPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n });\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanentCash = [...res];\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanent = res;\r\n }\r\n\r\n }\r\n ngAfterViewInit() {\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n","\n\nimport { User } from './user.model';\n\n\nexport class UserEdit extends User {\n constructor(currentPassword?: string, newPassword?: string, confirmPassword?: string) {\n super();\n\n this.currentPassword = currentPassword;\n this.newPassword = newPassword;\n this.confirmPassword = confirmPassword;\n }\n\n public currentPassword: string;\n public newPassword: string;\n public confirmPassword: string;\n\n}\n","\n\nexport class ContractProduct {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(NCPYear?: number, NCPPartCode?: number, NCPCode?: number, NCPRevesion?: number, ncpProductCode?: string, ncpAmount?: number, NCPFromDeliveryDate?: string, NCPToDeliveryDate?: string, NCPTolerancePercent?: number, NCPPrice?: number, NCPDiscountPercent?: number, PFromDeliveryDate?: string, PToDeliveryDate?: string, ProductName?: string, ProductUnit?: string, NCPFromDeliveryPDate?: string, NCPToDeliveryPDate?: string, NCPSumPrice?: number, NCPDiscountPrice?: number, NCPSumDiscountPrice?: number, NCPPay?: number, Tax?: number, Pay?: number, CreatorCompany?: string, JustTax?: number, JustDuties?: number, Remind?: number, NCPMiddleMaturity?: number, count?: number, ncpComissionStore?: number, ncpTaxStore?: number, ncpBasePrice?: number, ncpOverHead?: number, ncpPriceArsam?: number, BarCode?: string) {\n this.nCPYear = NCPYear;\n this.nCPPartCode = NCPPartCode;\n this.nCPCode = NCPCode;\n this.nCPRevesion = NCPRevesion;\n this.ncpProductCode = ncpProductCode;\n this.ncpAmount = ncpAmount;\n this.nCPFromDeliveryDate = NCPFromDeliveryDate;\n this.nCPToDeliveryDate = NCPToDeliveryDate;\n this.nCPTolerancePercent = NCPTolerancePercent;\n this.nCPPrice = NCPPrice;\n this.nCPDiscountPercent = NCPDiscountPercent;\n this.pFromDeliveryDate = PFromDeliveryDate;\n this.pToDeliveryDate = PToDeliveryDate;\n this.productName = ProductName;\n this.productUnit = ProductUnit;\n this.nCPFromDeliveryPDate = NCPFromDeliveryPDate;\n this.nCPToDeliveryPDate = NCPToDeliveryPDate;\n this.nCPSumPrice = NCPSumPrice;\n this.nCPDiscountPrice = NCPDiscountPrice;\n this.nCPSumDiscountPrice = NCPSumDiscountPrice;\n this.nCPPay = NCPPay;\n this.tax = Tax;\n this.pay = Pay;\n this.creatorCompany = CreatorCompany;\n this.justTax = JustTax;\n this.justDuties = JustDuties;\n this.remind = Remind;\n this.nCPMiddleMaturity = NCPMiddleMaturity;\n this.count = count;\n this.ncpComissionStore = ncpComissionStore;\n this.ncpTaxStore = ncpTaxStore;\n\n this.ncpBasePrice = ncpBasePrice;\n this.ncpOverHead = ncpOverHead;\n this.ncpPriceArsam = ncpPriceArsam;\n\n\n this.barCode = BarCode;\n\n\n }\n public nCPYear: number;\n public nCPPartCode: number;\n public nCPCode: number;\n public nCPRevesion: number;\n public ncpProductCode: string;\n public ncpAmount: number;\n public nCPFromDeliveryDate: string;\n public nCPToDeliveryDate: string;\n public nCPTolerancePercent: number;\n public nCPPrice: number;\n public nCPDiscountPercent: number;\n public nCPPerPay: number;\n public nCPDelayDeliveryPay: number;\n public pFromDeliveryDate: string;\n public pToDeliveryDate: string;\n public productName: string;\n public productUnit: string;\n public nCPFromDeliveryPDate: string;\n public nCPMiddleMaturity: number;\n public nCPToDeliveryPDate: string;\n public nCPSumPrice: number;\n public nCPDiscountPrice: number;\n public nCPSumDiscountPrice: number;\n public nCPPay: number;\n public tax: number;\n public pay: number;\n public creatorCompany: string;\n public justTax: number;\n public justDuties: number;\n public remind: number;\n public count: number;\n public ncpComissionStore: number;\n public ncpTaxStore: number;\n public ncpBasePrice: number;\n public ncpOverHead: number;\n public ncpPriceArsam: number;\n\n public barCode: string;\n\n\n}\n","import { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'resid',\r\n templateUrl: './resid.component.html',\r\n animations: [fadeInOut]\r\n})\r\nexport class residComponent {\r\n}\r\n","
\r\n
\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 {\r\n HttpResponse,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpInterceptor\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { LoadingService } from './loading-spinner.service';\r\n\r\n@Injectable()\r\nexport class LoaderInterceptor implements HttpInterceptor {\r\n private requests: HttpRequest[] = [];\r\n\r\n constructor(private loaderService: LoadingService) { }\r\n\r\n removeRequest(req: HttpRequest) {\r\n const i = this.requests.indexOf(req);\r\n if (i >= 0) {\r\n this.requests.splice(i, 1);\r\n }\r\n this.loaderService.isLoading.next(this.requests.length > 0);\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n this.requests.push(req);\r\n\r\n /* console.log(\"No of requests--->\" + this.requests.length);*/\r\n\r\n this.loaderService.isLoading.next(true);\r\n return Observable.create(observer => {\r\n const subscription = next.handle(req)\r\n .subscribe(\r\n event => {\r\n if (event instanceof HttpResponse) {\r\n this.removeRequest(req);\r\n observer.next(event);\r\n }\r\n },\r\n err => {\r\n // alert('error' + err);\r\n this.removeRequest(req);\r\n observer.error(err);\r\n },\r\n () => {\r\n this.removeRequest(req);\r\n observer.complete();\r\n });\r\n // remove request from queue when cancelled\r\n return () => {\r\n this.removeRequest(req);\r\n subscription.unsubscribe();\r\n };\r\n });\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild} from '@angular/core';\nimport {PreInvoice} from \"../../../models/PreInvoice.model\";\nimport {InputPricePaymentFormInvoiceSaleModel} from \"../../../models/InputPricePaymentFormInvoiceSale.model\";\nimport * as moment from \"jalali-moment\";\nimport {SaleSubReceiptSelect} from \"../../../models/SaleSubReceiptSelect.model\";\nimport {SalePreInvoiceForContractCheckInfoModel} from \"../../../models/SalePreInvoiceForContractCheckInfo.model\";\nimport {SaleBankAccounts} from \"../../../models/SaleBankAccounts.model\";\nimport {HesabKindBanks} from \"../../../models/HesabKindBanks.model\";\nimport {ConfirmMessageModel} from \"../../../models/utilities/confirm-message.model\";\nimport {Utilities} from \"../../../services/utilities\";\nimport {ViewModelUser} from \"../../../models/CMainCode.model\";\nimport {SaleReceipt} from \"../../../models/SaleReceipts/SaleReceipt.model\";\nimport {SaleSubReceipt} from \"../../../models/SaleReceipts/SaleSubReceipt.model\";\nimport {AlertService, MessageSeverity} from \"../../../services/alert.service\";\nimport {AccountService} from \"../../../services/account.service\";\nimport {AuthService} from \"../../../services/auth.service\";\nimport {MyCompanyService} from \"../../../services/MyCompany.service\";\nimport {SharedService} from \"../../../services/Shared.service\";\nimport {SaleReceiptService} from \"../../../services/receipt-services/sale-receipt.service\";\nimport {ConfirmMessageEnum} from \"../../../enums/confirm-message.enum\";\nimport * as _ from 'lodash';\n\n@Component({\n selector: 'app-sale-recipt-cash',\n templateUrl: './sale-recipt-cash.component.html',\n styleUrls: ['./sale-recipt-cash.component.scss']\n})\nexport class SaleReciptCashComponent implements OnInit {\n\n public uploadCashFiles: File;\n public listUploadFileName = '';\n public showImageFiles: File;\n\n public sumPriceInvoice = 0;\n public remindPaymentInvoice = 0;\n public paymentInvoice = 0;\n public installmentInterest = 0;\n public dateObject: string;\n public dateObjectRSDate = moment();\n public loadingIndicator: boolean;\n public rowsCache: SaleSubReceiptSelect[] = [];\n public rows: SaleSubReceiptSelect[] = [];\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\n public checkDetailList: SalePreInvoiceForContractCheckInfoModel[] = [];\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\n public checkoutConfirm = false;\n public isSelect = false;\n public AllPay = 0;\n public AllBed = 0;\n public AllBes = 0;\n public summaryPosition = 'bottom';\n public enableSummary = true;\n public isEditMode = true;\n public isNewCustomer = false;\n public isEditingSelf = false;\n public isSaving = false;\n public isEditSelf = false;\n public showValidationErrors = false;\n public uniqueId: string = Utilities.uniqueId();\n public CMainCodeVirtual: ViewModelUser;\n public isreal = true;\n public formResetToggle = true;\n public changesSavedCallback: () => void;\n public changesFailedCallback: () => void;\n public spiCode: number;\n columns: any[] = [];\n group = '';\n public sPIPartCode: number;\n public sPIYear: number;\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\n public Cmain: number;\n public Csub: number;\n public isEdit = false;\n public isEditContractCode = true;\n serverDate: Date;\n public IsReload = false;\n public AcceptContract = true;\n ReciptNo = 0;\n public loadDate: SaleSubReceiptSelect[] = [];\n\n @Input() isViewOnly: boolean;\n @Input() isGeneralEditor = false;\n @ViewChild('f', {static: false})\n public form;\n @ViewChild('indexTemplate', {static: true}) indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', {static: true}) actionsTemplate: TemplateRef;\n @Input() oldcheckDetailList: SalePreInvoiceForContractCheckInfoModel[];\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\n\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;\n @Output() saveCheckDetailStatus = new EventEmitter();\n\n constructor(private alertService: AlertService,\n private accountService: AccountService,\n private authService: AuthService,\n private myCompanyService: MyCompanyService,\n private sharedService: SharedService,\n private saleReceiptService: SaleReceiptService) {\n this.serverDate = this.accountService.getServerDateTime();\n }\n\n getLoadGrid() {\n return this.inputPricePaymentFormInvoiceSale.saleReceiptList.filter(x => x.rsKind === 1);\n }\n\n ngOnInit() {\n this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\n this.dateObjectRSDate = this.sharedService.getDateToMoment(this.dateObject);\n }\n\n DetailSummery(cells: any) {\n const filteredCells = \"جمع\";\n return filteredCells;\n }\n\n save() {\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\n this.onCurrentCheck();\n } else {\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات مربوط به پرداخت را وارد نمایید.', MessageSeverity.warn);\n }\n } else {\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\n this.confirmMessageObj.title = 'عدم پرداخت';\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به پرداخت نمی باشید.';\n this.checkoutConfirm = true;\n }\n }\n\n onCurrentCheck(): void {\n let checkComplet = true;\n if (this.dateObjectRSDate == null ||\n this.dateObjectRSDate.toLocaleString() == \"undefined\" ||\n this.dateObjectRSDate.toString() == undefined ||\n this.dateObjectRSDate.toLocaleString() === \"\") {\n checkComplet = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\n }\n if (this.SaleSubReceiptObj.rsPrice === 0 || this.SaleSubReceiptObj.rsPrice == null) {\n checkComplet = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\n }\n if (this.SaleSubReceiptObj.rSerial === \"\" || this.SaleSubReceiptObj.rSerial == null) {\n checkComplet = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\n }\n const date = this.sharedService.checkDate(this.dateObjectRSDate);\n if (date > 0) {\n checkComplet = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\n }\n if (checkComplet) {\n this.isSaving = true;\n if (this.SaleSubReceiptObj.rsPrice > 0) {\n if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice === 0) {\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\n this.isSaving = false;\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice < this.SaleSubReceiptObj.rsPrice) {\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\n this.isSaving = false;\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice >= this.SaleSubReceiptObj.rsPrice) {\n\n const formData = new FormData;\n formData.append((1).toString(), this.uploadCashFiles);\n this.saleReceiptService.insertUploadCustomerImage(\n this.saleInvoiceDetail.spiCustomerCode.toString(),\n this.saleInvoiceDetail.spiSubCustomerCode.toString(),\n this.saleInvoiceDetail.contractCode.toString(),\n this.SaleSubReceiptObj.rSerial.toString(),\n formData)\n .subscribe(\n (res) => {\n this.ReciptNo = 0;\n this.isSaving = true;\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\n this.SaleReceiptObj.rnum = 0;\n this.SaleReceiptObj.ryear = this.saleInvoiceDetail.spiYear;\n this.SaleReceiptObj.rmainCustomerCode = this.saleInvoiceDetail.spiCustomerCode;\n this.SaleReceiptObj.rsubCustomerCode = this.saleInvoiceDetail.spiSubCustomerCode;\n this.SaleReceiptObj.rpartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleReceiptObj.rkind = 1;\n this.SaleReceiptObj.rreceivedFor = -1;\n this.SaleReceiptObj.rreceivedNumber = this.saleInvoiceDetail.spiCode;\n this.SaleReceiptObj.rreceivedYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.risNotInCycle = false;\n this.SaleReceiptObj.rcontractYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\n this.SaleReceiptObj.sanavat = false;\n this.SaleReceiptObj.UserId = 0;\n this.SaleSubReceiptObj.rsKind = 1;\n // تجارت جاری شعبه آفریقا\n this.SaleSubReceiptObj.rsBankAccountCode = 197;\n this.SaleSubReceiptObj.rsPartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleSubReceiptObj.rsYear = this.saleInvoiceDetail.spiYear;\n this.SaleSubReceiptObj.rsReceiptKind = 1;\n this.SaleSubReceiptObj.rsNum = 0;\n this.SaleSubReceiptObj.rsDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\n this.SaleSubReceiptObj.saleReceiptsId = 0;\n this.SaleReceiptObj.SaleSubReceipt = [];\n this.SaleReceiptObj.SaleSubReceipt.push(this.SaleSubReceiptObj);\n this.saleReceiptService.InsertSaleReceipt(this.SaleReceiptObj).subscribe(result => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' ثبت شد. ', MessageSeverity.success);\n this.SaleSubReceiptObj = new SaleSubReceipt();\n this.SaleSubReceiptObj.rsDes = \"\";\n this.rowsCache = [];\n this.rows = [];\n this.AllBes = 0;\n this.AllBed = 0;\n this.showValidationErrors = false;\n this.isSaving = false;\n this.SaleSubReceiptObj.rsDes = \"\";\n this.SaleSubReceiptObj.rSerial = \"\";\n this.SaleSubReceiptObj.rsPrice = 0;\n this.alertService.stopLoadingMessage();\n this.saveCheckDetailStatus.emit(true);\n\n } else if (result.actionStatus === 1) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n } else if (result.actionStatus === 2) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n }\n this.alertService.stopLoadingMessage();\n }, error => {\n });\n\n },\n (err) => {\n this.alertService.showMessage('عدم تایید', \"خطا در آپلود تصویر صورت گرفته است لطفا مجددا اقدام نمایید\", MessageSeverity.error);\n });\n } else {\n this.alertService.showMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\n this.isSaving = false;\n }\n } else {\n this.alertService.showMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\n this.isSaving = false;\n }\n }\n }\n\n cancel() {\n this.showValidationErrors = false;\n this.resetData();\n this.alertService.resetStickyMessage();\n if (this.IsReload) {\n this.myCompanyService.Refresh();\n }\n }\n\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n\n resetForm(replace = false) {\n if (!replace) {\n this.form.reset();\n } else {\n this.formResetToggle = false;\n\n setTimeout(() => {\n this.formResetToggle = true;\n });\n }\n }\n\n resetData() {\n this.SaleSubReceiptObj = new SaleSubReceipt();\n this.SaleSubReceiptObj.rsDes = \"\";\n this.rowsCache = [];\n this.rows = [];\n this.AllPay = 0;\n this.AllBes = 0;\n this.AllBed = 0;\n }\n\n print() {\n window.print();\n }\n\n private saveerror(error: any) {\n this.alertService.showMessage('error', error, MessageSeverity.error);\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n }\n\n showCheckoutConfirm(event: boolean) {\n this.checkoutConfirm = event;\n }\n\n getFormatDateShamsi(date: string) {\n return new Date(date).toLocaleDateString(\"fa-IR\");\n }\n\n SerialNumber() {\n }\n\n fileChangeEvent(event: FileList) {\n this.listUploadFileName = (event.item(0).name);\n if (event.item(0).size <= 1000000 && event.item(0).type === \"image/jpeg\") {\n this.uploadCashFiles = event.item(0);\n if (this.uploadCashFiles && event.length !== 0) {\n const reader = new FileReader();\n reader.onload = (event2: any) => {\n this.showImageFiles = event2.target.result;\n };\n reader.readAsDataURL(this.uploadCashFiles);\n }\n } else {\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\n }\n }\n\n deleteCash(row: SaleSubReceiptSelect) {\n this.saleReceiptService.deleteSaleReceipt(row).subscribe((result) => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' حذف گردید. ', MessageSeverity.success);\n this.saveCheckDetailStatus.emit(true);\n } else {\n this.alertService.showMessage('هشدار', result.actionDescription, MessageSeverity.error);\n }\n }, (error) => {\n this.alertService.showMessage('هشدار', error.message, MessageSeverity.warn);\n });\n }\n\n showCheckDetail(row: SaleSubReceiptSelect) {\n // this.inputPricePaymentFormInvoiceSale.checkDetailList.forEach((val, index) => {\n // if (val == row) {\n // if (this.showImageFiles[index] != null) {\n // this.checkImageStatus = true;\n // this.checkImage = this.showImageFiles[index];\n // } else {\n // this.checkImageStatus = false;\n // this.checkImageServer = this.domainName + val.imageAddress;\n // }\n // $('.check-image').modal('show');\n // return;\n // }\n // });\n }\n}\n","
\n
\n
\n
\n \n پیش فاکتور\n \n \n
\n
\n
\n
\n \n قرارداد\n \n \n
\n
\n
\n
\n
خریدار : {{ saleInvoiceDetail.cName }}
\n
\n
\n
\n\n\n
\n
\n
\n
\n \n مبلغ واریز\n \n \n
\n
\n \n شماره پیگیری\n \n \n
\n\n
\n \n تاریخ سررسید*\n \n \n \n \n
\n
\n
\n \n \n نام عکس : {{ uploadCashFiles.name }}\n
\n
\n
\n \n توضیحات\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n \n {{ rowIndex + 1 }}\n \n \n \n \n
\n \n \n
\n
\n
\n \n \n \n \n {{ getFormatDateShamsi(value) }}\n \n \n \n \n {{ value | number }} ریال\n \n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n\n","import { Component, ViewChild, OnInit, TemplateRef, ElementRef, Input, Output, EventEmitter } from '@angular/core';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ReportAll } from '../../models/ReportAll.model';\r\nimport { Adjustments } from '../../models/Adjustments.model';\r\nimport * as moment from 'jalali-moment';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { SharedService } from '../../services/Shared.service';\r\nimport { SaleReceipt } from '../../models/SaleReceipts/SaleReceipt.model';\r\nimport { SaleReceiptService } from '../../services/receipt-services/sale-receipt.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\n\r\n@Component({\r\n selector: 'SettlementSave-info',\r\n templateUrl: './SettlementSave-info.component.html',\r\n styleUrls: ['./SettlementSave-info.component.scss']\r\n})\r\nexport class SettlementSaveinfocomponent implements OnInit {\r\n NCCOdeopposing: number;\r\n AimContractYear: number;\r\n Cmain: number;\r\n Csub: number;\r\n CustomerID: number;\r\n CustomerCodeName: string;\r\n CustomerName: string;\r\n serverDate: Date;\r\n yearnc: number;\r\n partcodenc: number;\r\n ncccode: number;\r\n RemainVocher: number;\r\n remindWithVouchers: { name: number; };\r\n Harvestamount: { name: number; };\r\n Settlementbalance: { name: number; };\r\n rowsReportCache: ReportAll[] = [];\r\n rowsReport: ReportAll[] = [];\r\n public changesSavedCallback: () => void;\r\n isSaving: boolean;\r\n columnssettlement: any[] = [];\r\n columnOffsetContract: any[] = [];\r\n columnAimsetContract: any[] = [];\r\n isShow = false;\r\n public AdjustmentsObj: Adjustments = new Adjustments();\r\n rowsAimReportCache: Adjustments[];\r\n rowsoffReport: Adjustments[];\r\n rowsAimReport: Adjustments[];\r\n rowsoffReportCache: Adjustments[];\r\n @Output() showEditorModalSettlement = new EventEmitter();\r\n public displayedOrderColumns: string[] = ['index', 'ncCode', 'ncYear', 'sumPrice', 'remind', 'count'];\r\n public settlementContractList: MatTableDataSource;\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private myAccountService: MyAccountService,\r\n private myCompanyService: MyCompanyService,\r\n private mySharedService: SharedService,\r\n private translationService: AppTranslationService,\r\n private authService: AuthService,\r\n private saleReceiptService: SaleReceiptService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n loadingIndicator: boolean;\r\n selected = [];\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('myTable', { static: true }) table: any;\r\n\r\n\r\n public fromDate = \"\";\r\n public toDate = \"\";\r\n dateObjectFromDate = moment();\r\n dateObjectToDate = moment();\r\n\r\n datePickerConfig = {\r\n firstDayOfWeek: 'su',\r\n monthFormat: 'MMM, YYYY',\r\n disableKeypress: false,\r\n allowMultiSelect: false,\r\n closeOnSelect: undefined,\r\n closeOnSelectDelay: 100,\r\n onOpenDelay: 0,\r\n weekDayFormat: 'ddd',\r\n appendTo: document.body,\r\n drops: 'down',\r\n opens: 'right',\r\n showNearMonthDays: true,\r\n showWeekNumbers: false,\r\n enableMonthSelector: true,\r\n format: \"YYYY-MM-DD HH:mm\",\r\n yearFormat: 'YYYY',\r\n showGoToCurrent: true,\r\n dayBtnFormat: 'DD',\r\n monthBtnFormat: 'MMM',\r\n hours12Format: 'hh',\r\n hours24Format: 'HH',\r\n meridiemFormat: 'A',\r\n minutesFormat: 'mm',\r\n minutesInterval: 1,\r\n secondsFormat: 'ss',\r\n secondsInterval: 1,\r\n showSeconds: false,\r\n showTwentyFourHours: true,\r\n timeSeparator: ':',\r\n multipleYearsNavigateBy: 10,\r\n showMultipleYearsNavigation: false,\r\n locale: 'fa-IR',\r\n // min:'2017-08-29 15:50',\r\n // minTime:'2017-08-29 15:50'\r\n };\r\n @ViewChild('dayPickerFromDate') datePickerFromDate: ElementRef;\r\n @ViewChild('dayPickerToDate') datePickerToDate: ElementRef;\r\n\r\n ngOnInit() {\r\n\r\n let startDateJalali1 = moment().locale('fa').startOf('month').format('YYYY/M/D').replace('/', '-');\r\n let todayJalali1 = moment().locale('fa').format('YYYY/M/D').replace('/', '-');\r\n this.dateObjectFromDate = moment(startDateJalali1, 'jYYYY,jMM,jDD');\r\n this.dateObjectToDate = moment(todayJalali1, 'jYYYY,jMM,jDD');\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n\r\n this.columnssettlement = [\r\n { prop: 'index', name: gT('settlementSave.Index'), width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'ncCode', name: gT('Report.management.ncCode'), width: 100 },\r\n { prop: 'ncpDate', name: gT('Report.management.ncpDate'), width: 110 },\r\n { prop: 'sumPrice', name: gT('settlementSave.TotalAmountOfTheContract'), width: 120 },\r\n { prop: 'remind', name: gT('settlementSave.RemainingWithDocuments'), width: 120 },\r\n { prop: 'adjustment', name: gT('settlementSave.SettlementPrice'), width: 120 },\r\n\r\n ];\r\n\r\n this.columnAimsetContract = [\r\n { prop: 'index', name: gT('settlementSave.Index'), width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'aimContractCode', name: gT('settlementSave.TransferToContract'), width: 100 },\r\n { prop: 'amount', name: gT('settlementSave.TransferAmount'), width: 100 },\r\n { prop: 'date', name: gT('settlementSave.Date'), width: 100 }\r\n ];\r\n\r\n this.columnOffsetContract = [\r\n { prop: 'index', name: gT('settlementSave.Index'), width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'offsetContractCode', name: gT('settlementSave.SettlementWithTheContract'), width: 100 },\r\n { prop: 'amount', name: gT('settlementSave.TransferAmount'), width: 100 },\r\n { prop: 'date', name: gT('settlementSave.Date'), width: 100 }\r\n ];\r\n\r\n this.columnssettlement.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnAimsetContract.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnOffsetContract.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n this.Settlementbalance = { name: 0 }\r\n this.Harvestamount = { name: 0 }\r\n\r\n }\r\n isRemaind = false;\r\n getIsRemind(): boolean {\r\n return this.isRemaind;\r\n }\r\n checkRemind(value, rowIndex, num): boolean {\r\n if (value == \"\") {\r\n return false;\r\n }\r\n else {\r\n var remind = Math.abs(this.mySharedService.CurrencyFormatterConvertToNumber(num));\r\n if (value > remind) {\r\n this.alertService.showMessage('Warning', 'مبلغ تسویه ردیف ' + (rowIndex + 1).toString() + ' از مانده قرارداد بیشتر است ...', MessageSeverity.warn);\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n }\r\n updateValue(event, rowIndex) {\r\n this.isRemaind = this.checkRemind(event.target.value, rowIndex, this.rowsReport[rowIndex][\"remind\"]);\r\n if (this.isRemaind) {\r\n this.rowsReport[rowIndex].Count = 0\r\n }\r\n else {\r\n this.rowsReport[rowIndex].Count = event.target.value;\r\n }\r\n\r\n var SumCount = 0;\r\n this.rowsReport.forEach((User) => {\r\n if (User.Count != undefined && User.Count != NaN && User.Count != 0) {\r\n SumCount = SumCount + Number(User.Count);\r\n }\r\n });\r\n this.Harvestamount = { name: SumCount };\r\n var SetBalance = this.RemainVocher + SumCount;\r\n this.Settlementbalance = { name: SetBalance };\r\n\r\n this.rowsReport = [...this.rowsReport];\r\n this.rowsReport = this.rowsReport;\r\n }\r\n\r\n LoadAimOff() {\r\n this.accountService.GetAimsetContract(this.ncccode, this.partcodenc, this.yearnc).subscribe(results => this.onDataLoadSuccessfulAim(results), error => this.onDataLoadFailed(error));\r\n this.accountService.GetOffsetContract(this.ncccode, this.partcodenc, this.yearnc).subscribe(results => this.onDataLoadSuccessfuloff(results), error => this.onDataLoadFailed(error));\r\n }\r\n onDataLoadSuccessfulAim(res: Adjustments[]): void {\r\n\r\n this.rowsAimReportCache = [];\r\n this.rowsAimReport = [];\r\n if (res) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n res.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n user.date = new Date(user.date).toLocaleDateString('fa-IR');\r\n var currencyFormatter = require('currency-formatter');\r\n user.amount = currencyFormatter.format(user.amount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n\r\n\r\n });\r\n\r\n this.loadingIndicator = false;\r\n this.rowsAimReportCache = [...res];\r\n this.rowsAimReport = res;\r\n }\r\n\r\n\r\n\r\n }\r\n onDataLoadSuccessfuloff(results: Adjustments[]): void {\r\n\r\n if (results) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n results.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n user.date = new Date(user.date).toLocaleDateString('fa-IR');\r\n var currencyFormatter = require('currency-formatter');\r\n user.amount = currencyFormatter.format(user.amount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n });\r\n this.loadingIndicator = false;\r\n this.rowsoffReportCache = [...results];\r\n this.rowsoffReport = results;\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n //getData(): void {\r\n // //this.Cmain = res;\r\n // //this.accountService.GetAllReportmethodsettlementSimilar(Number(this.authService.currentUser.phoneNumber), 5, 0, 0, 0, this.Cmain, this.Csub, this.NCCOdeopposing).subscribe(results => this.onDataLoadSuccessful(results), error => this.onDataLoadFailed(error));\r\n // this.loadingIndicator = true;\r\n // this.saleReceiptService.getAllReportmethodsettlementSimilar(Number(this.authService.currentUser.phoneNumber), 5, 0, 0, 0, this.Cmain, this.Csub, this.CustomerID, this.NCCOdeopposing, this.dateObjectFromDate.locale('en').format('YYYY_M_D').toString(), this.dateObjectToDate.locale('en').format('YYYY_M_D').toString()).subscribe(\r\n // results => this.onDataLoadSuccessful(results),\r\n // error => {\r\n // this.myCompanyService.onCurrentUserDataLoadFailed(error)\r\n // this.loadingIndicator = false\r\n // });\r\n //}\r\n\r\n\r\n getData(): void {\r\n this.loadingIndicator = true;\r\n this.saleReceiptService.getAllReportmethodsettlementSimilar(Number(this.authService.currentUser.phoneNumber), 5, 0, 0, 0, this.Cmain, this.Csub, this.CustomerID, this.NCCOdeopposing, this.dateObjectFromDate.locale('en').format('YYYY_M_D').toString(), this.dateObjectToDate.locale('en').format('YYYY_M_D').toString()).subscribe(\r\n results => {\r\n if (results.length > 0) {\r\n this.onDataLoadSuccessful(results);\r\n this.showEditorModalSettlement.emit(true);\r\n }\r\n else {\r\n this.showEditorModalSettlement.emit(false);\r\n }\r\n },\r\n error => {\r\n this.myCompanyService.onCurrentUserDataLoadFailed(error)\r\n this.loadingIndicator = false\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n save() {\r\n var isCan = true;\r\n\r\n var SumCount = 0;\r\n this.rowsReport.forEach((user, index) => {\r\n if (user.Count != undefined && user.Count != NaN && user.Count != 0) {\r\n this.isRemaind = this.checkRemind(user.Count, index, user.remind);\r\n if (this.isRemaind) {\r\n isCan = false;\r\n }\r\n else {\r\n SumCount = SumCount + Number(user.Count);\r\n }\r\n }\r\n });\r\n\r\n var remind = (this.mySharedService.CurrencyFormatterConvertToNumber(this.remindWithVouchers.name));\r\n if (SumCount > remind) {\r\n isCan = false;\r\n this.alertService.showMessage('Warning', 'جمع مبلغ تسویه از مانده با اسناد بیشتر است ...', MessageSeverity.warn);\r\n }\r\n\r\n if (isCan) {\r\n this.rowsReport.forEach((User) => {\r\n if (User.Count == 0 || User.Count == undefined || User.Count == NaN) {\r\n\r\n }\r\n else {\r\n this.AdjustmentsObj.amount = User.Count;\r\n this.AdjustmentsObj.OffsetContractCode = this.NCCOdeopposing;\r\n this.AdjustmentsObj.OffsetContractYear = this.AimContractYear;\r\n this.AdjustmentsObj.OffsetPartCode = User.ncPartCode;\r\n this.AdjustmentsObj.AimContractCode = User.ncCode;\r\n this.AdjustmentsObj.AimContractYear = User.ncYear;\r\n this.AdjustmentsObj.AimPartCode = User.ncPartCode;\r\n //this.AdjustmentsObj.date = new Date().toLocaleDateString('en-US');\r\n this.AdjustmentsObj.date = this.serverDate.toLocaleDateString('en-US');\r\n this.AdjustmentsObj.UserCode = 1;\r\n this.AdjustmentsObj.Description = \"تسویه از طریق سایت\";\r\n this.accountService.saveAdjustmentsUrl(this.AdjustmentsObj).subscribe(a => this.SaveAdjustment(User.ncCode), error => this.saveerror(error));\r\n\r\n }\r\n });\r\n }\r\n else {\r\n\r\n }\r\n }\r\n SaveAdjustment(ncCode: number): void {\r\n this.alertService.showMessage('Success', 'تسویه قرارداد شماره: ' + ncCode + ' با موفقیت انجام شد. ', MessageSeverity.success);\r\n this.isSaving = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n onDataLoadFailed(error: any): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n\r\n onDataLoadSuccessful(results: import(\"../../models/ReportAll.model\").ReportAll[]): void {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n results.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n\r\n var currencyFormatter = require('currency-formatter');\r\n\r\n user.remind = currencyFormatter.format(user.remind, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.sumPrice = currencyFormatter.format(user.sumPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n });\r\n this.rowsReportCache = [...results];\r\n this.rowsReport = results;\r\n this.settlementContractList = new MatTableDataSource(results);\r\n this.isShow = false;\r\n }\r\n onDetailToggle(event) {\r\n\r\n }\r\n\r\n saveerror(error: any): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n }\r\n\r\n resetData() {\r\n this.NCCOdeopposing = 0;\r\n this.AimContractYear = 0;\r\n this.Cmain = 0;\r\n this.CustomerID = 0;\r\n this.CustomerName = \"-\";\r\n this.Csub = 0;\r\n this.Settlementbalance = { name: 0 };\r\n this.Harvestamount = { name: 0 };\r\n this.remindWithVouchers = { name: 0 };\r\n this.RemainVocher = 0;\r\n this.rowsReportCache = [];\r\n this.rowsReport = this.rowsReportCache;\r\n }\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n\r\n کد مشتری: {{ Cmain }} \r\n\r\n شماره قرارداد: {{ NCCOdeopposing }} \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
طرف حساب: {{ CustomerCodeName + ' - ' + CustomerName }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ردیف {{ i + 1}}
شماره قرارداد {{row.ncCode}}
سال {{row.ncYear}}
جمع مبلغ {{row.sumPrice}}
مانده {{row.remind}}
تعداد \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

{{'InvoiceSale.editor.remindWithVouchers' | translate:remindWithVouchers}}

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

{{'InvoiceSale.editor.Harvestamount' | translate:Harvestamount}}

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

{{'InvoiceSale.editor.Settlementbalance' | translate:Settlementbalance}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n
\r\n","export class addressModel {\r\n constructor(id?: number,\r\n name?: string,\r\n phoneNumber?: string,\r\n address?: string,\r\n location?: string,\r\n openCloseTime?: string) {\r\n this.id = id;\r\n this.phoneNumber = phoneNumber;\r\n this.name = name;\r\n this.openCloseTime = openCloseTime;\r\n this.location = location;\r\n this.address = address;\r\n }\r\n\r\n id?: number;\r\n name: string;\r\n phoneNumber: string;\r\n address: string;\r\n location: string;\r\n openCloseTime: string;\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { IInstallments } from \"./installments.model\";\r\nimport { SalePreInvoiceForContracts } from \"./SalePreInvoiceForContracts.model\";\r\nimport { VMSalePreInvoiceForContractProduct_BarCode } from \"./VMSalePreInvoiceForContractProduct_BarCode.model\";\r\nimport { VMSalePriceProductInfoForSalePerInvoice } from './VMSalePriceProductInfoForSalePerInvoice.model';\r\n\r\nexport class VMSelectSalePreInvoiceForContractProduct_BarCode {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(salePreInvoiceForContracts?: SalePreInvoiceForContracts, rowsNewProduct?: VMSalePreInvoiceForContractProduct_BarCode[], code?: number, csubName?: string,\r\n vmSalePriceProductInfoForSalePerInvoice?: VMSalePriceProductInfoForSalePerInvoice[], iInstallments?: IInstallments\r\n ) {\r\n\r\n this.salePreInvoiceForContracts = salePreInvoiceForContracts;\r\n this.rowsNewProduct = rowsNewProduct;\r\n this.code = code;\r\n this.csubName = csubName;\r\n this.vmSalePriceProductInfoForSalePerInvoice = vmSalePriceProductInfoForSalePerInvoice;\r\n this.iInstallments = iInstallments;\r\n }\r\n\r\n public salePreInvoiceForContracts: SalePreInvoiceForContracts = new SalePreInvoiceForContracts();\r\n public rowsNewProduct: VMSalePreInvoiceForContractProduct_BarCode[] = [];\r\n public code: number;\r\n public csubName: string;\r\n public vmSalePriceProductInfoForSalePerInvoice: VMSalePriceProductInfoForSalePerInvoice[] = [];\r\n public iInstallments: IInstallments;\r\n public resultAction: number;\r\n}\r\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\n\r\n@Component({\r\n selector: 'inv-check',\r\n templateUrl: './inv-check.component.html'\r\n})\r\nexport class invcheckcomponent {\r\n\r\n public isEditMode = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId(); \r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n \r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.isGeneralEditor) {\r\n \r\n }\r\n }\r\n\r\n changereal() {\r\n this.isreal = true;\r\n }\r\n\r\n changeLegal() {\r\n this.isreal = false;\r\n }\r\n\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n if (this.isNewCustomer) {\r\n\r\n \r\n }\r\n else {\r\n\r\n \r\n\r\n }\r\n }\r\n\r\n \r\n\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n \r\n } else {\r\n \r\n }\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n newCustomer() {\r\n \r\n }\r\n\r\n edit() {\r\n \r\n }\r\n\r\n \r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\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 } from '@angular/core';\n\n@Component({\n selector: 'banner-demo',\n templateUrl: './banner-demo.component.html'\n})\nexport class BannerDemoComponent {\n banner1 = require('../../assets/images/demo/banner1.png');\n banner2 = require('../../assets/images/demo/banner2.png');\n banner3 = require('../../assets/images/demo/banner3.png');\n banner4 = require('../../assets/images/demo/banner4.png');\n}\n","
\r\n
\r\n \r\n \r\n \"ASP.NET\"\r\n
\r\n

\r\n تولید با کیفیت در یک کلام به معنای \"آرامش روانی مصرف کننده پس از خرید \" می باشد\r\n \r\n توضیحات بیشتر\r\n \r\n

\r\n
\r\n
\r\n \r\n \"Visual\r\n
\r\n

\r\n لورچ نشانه آرمش\r\n \r\n توضیحات بیشتر\r\n \r\n

\r\n
\r\n
\r\n \r\n \"Package\r\n
\r\n

\r\n گروه کارخانجات صنعتی شرکت لورچ\r\n \r\n توضیحات بیشتر\r\n \r\n

\r\n
\r\n
\r\n \r\n \"Eben\r\n
\r\n

\r\n خدمات پس از فروش\r\n \r\n توضیحات بیشتر\r\n \r\n

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

لینک های پرکاربرد

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

دسترسی سریع

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

خبرنامه

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

لورچ

\r\n \r\n
\r\n
\r\n
\r\n","var map = {\n\t\"./af\": \"2/yN\",\n\t\"./af.js\": \"2/yN\",\n\t\"./ar\": \"2fY4\",\n\t\"./ar-dz\": \"hpot\",\n\t\"./ar-dz.js\": \"hpot\",\n\t\"./ar-kw\": \"FxCd\",\n\t\"./ar-kw.js\": \"FxCd\",\n\t\"./ar-ly\": \"UWQ+\",\n\t\"./ar-ly.js\": \"UWQ+\",\n\t\"./ar-ma\": \"d81T\",\n\t\"./ar-ma.js\": \"d81T\",\n\t\"./ar-sa\": \"hlNI\",\n\t\"./ar-sa.js\": \"hlNI\",\n\t\"./ar-tn\": \"1gfi\",\n\t\"./ar-tn.js\": \"1gfi\",\n\t\"./ar.js\": \"2fY4\",\n\t\"./az\": \"1IL0\",\n\t\"./az.js\": \"1IL0\",\n\t\"./be\": \"qnCN\",\n\t\"./be.js\": \"qnCN\",\n\t\"./bg\": \"Ov6M\",\n\t\"./bg.js\": \"Ov6M\",\n\t\"./bm\": \"+Obh\",\n\t\"./bm.js\": \"+Obh\",\n\t\"./bn\": \"LULx\",\n\t\"./bn-bd\": \"lv6T\",\n\t\"./bn-bd.js\": \"lv6T\",\n\t\"./bn.js\": \"LULx\",\n\t\"./bo\": \"p9+f\",\n\t\"./bo.js\": \"p9+f\",\n\t\"./br\": \"eypF\",\n\t\"./br.js\": \"eypF\",\n\t\"./bs\": \"ShUO\",\n\t\"./bs.js\": \"ShUO\",\n\t\"./ca\": \"FYvP\",\n\t\"./ca.js\": \"FYvP\",\n\t\"./cs\": \"jkyO\",\n\t\"./cs.js\": \"jkyO\",\n\t\"./cv\": \"2R46\",\n\t\"./cv.js\": \"2R46\",\n\t\"./cy\": \"jWkq\",\n\t\"./cy.js\": \"jWkq\",\n\t\"./da\": \"wynC\",\n\t\"./da.js\": \"wynC\",\n\t\"./de\": \"9RZR\",\n\t\"./de-at\": \"4EKq\",\n\t\"./de-at.js\": \"4EKq\",\n\t\"./de-ch\": \"G2yM\",\n\t\"./de-ch.js\": \"G2yM\",\n\t\"./de.js\": \"9RZR\",\n\t\"./dv\": \"eaO8\",\n\t\"./dv.js\": \"eaO8\",\n\t\"./el\": \"YrNT\",\n\t\"./el.js\": \"YrNT\",\n\t\"./en-au\": \"slHb\",\n\t\"./en-au.js\": \"slHb\",\n\t\"./en-ca\": \"Nts3\",\n\t\"./en-ca.js\": \"Nts3\",\n\t\"./en-gb\": \"mjMm\",\n\t\"./en-gb.js\": \"mjMm\",\n\t\"./en-ie\": \"dpul\",\n\t\"./en-ie.js\": \"dpul\",\n\t\"./en-il\": \"FMBq\",\n\t\"./en-il.js\": \"FMBq\",\n\t\"./en-in\": \"bl2D\",\n\t\"./en-in.js\": \"bl2D\",\n\t\"./en-nz\": \"YVOy\",\n\t\"./en-nz.js\": \"YVOy\",\n\t\"./en-sg\": \"swtn\",\n\t\"./en-sg.js\": \"swtn\",\n\t\"./eo\": \"uFaB\",\n\t\"./eo.js\": \"uFaB\",\n\t\"./es\": \"11GN\",\n\t\"./es-do\": \"SVl/\",\n\t\"./es-do.js\": \"SVl/\",\n\t\"./es-mx\": \"G488\",\n\t\"./es-mx.js\": \"G488\",\n\t\"./es-us\": \"Ye35\",\n\t\"./es-us.js\": \"Ye35\",\n\t\"./es.js\": \"11GN\",\n\t\"./et\": \"DVdz\",\n\t\"./et.js\": \"DVdz\",\n\t\"./eu\": \"vprZ\",\n\t\"./eu.js\": \"vprZ\",\n\t\"./fa\": \"0nVr\",\n\t\"./fa.js\": \"0nVr\",\n\t\"./fi\": \"X3iN\",\n\t\"./fi.js\": \"X3iN\",\n\t\"./fil\": \"Y7av\",\n\t\"./fil.js\": \"Y7av\",\n\t\"./fo\": \"juws\",\n\t\"./fo.js\": \"juws\",\n\t\"./fr\": \"hk0p\",\n\t\"./fr-ca\": \"wm2J\",\n\t\"./fr-ca.js\": \"wm2J\",\n\t\"./fr-ch\": \"NKgo\",\n\t\"./fr-ch.js\": \"NKgo\",\n\t\"./fr.js\": \"hk0p\",\n\t\"./fy\": \"KcN/\",\n\t\"./fy.js\": \"KcN/\",\n\t\"./ga\": \"2N9e\",\n\t\"./ga.js\": \"2N9e\",\n\t\"./gd\": \"CGzN\",\n\t\"./gd.js\": \"CGzN\",\n\t\"./gl\": \"unPK\",\n\t\"./gl.js\": \"unPK\",\n\t\"./gom-deva\": \"1MmZ\",\n\t\"./gom-deva.js\": \"1MmZ\",\n\t\"./gom-latn\": \"ErMy\",\n\t\"./gom-latn.js\": \"ErMy\",\n\t\"./gu\": \"60e4\",\n\t\"./gu.js\": \"60e4\",\n\t\"./he\": \"EvPf\",\n\t\"./he.js\": \"EvPf\",\n\t\"./hi\": \"Tg0B\",\n\t\"./hi.js\": \"Tg0B\",\n\t\"./hr\": \"cBSw\",\n\t\"./hr.js\": \"cBSw\",\n\t\"./hu\": \"FCA5\",\n\t\"./hu.js\": \"FCA5\",\n\t\"./hy-am\": \"uigC\",\n\t\"./hy-am.js\": \"uigC\",\n\t\"./id\": \"QQUQ\",\n\t\"./id.js\": \"QQUQ\",\n\t\"./is\": \"crRU\",\n\t\"./is.js\": \"crRU\",\n\t\"./it\": \"zBzr\",\n\t\"./it-ch\": \"teQT\",\n\t\"./it-ch.js\": \"teQT\",\n\t\"./it.js\": \"zBzr\",\n\t\"./ja\": \"kYIn\",\n\t\"./ja.js\": \"kYIn\",\n\t\"./jv\": \"JYad\",\n\t\"./jv.js\": \"JYad\",\n\t\"./ka\": \"PB6v\",\n\t\"./ka.js\": \"PB6v\",\n\t\"./kk\": \"OUrd\",\n\t\"./kk.js\": \"OUrd\",\n\t\"./km\": \"/JfV\",\n\t\"./km.js\": \"/JfV\",\n\t\"./kn\": \"HY9m\",\n\t\"./kn.js\": \"HY9m\",\n\t\"./ko\": \"ltmD\",\n\t\"./ko.js\": \"ltmD\",\n\t\"./ku\": \"N7b1\",\n\t\"./ku.js\": \"N7b1\",\n\t\"./ky\": \"1mn8\",\n\t\"./ky.js\": \"1mn8\",\n\t\"./lb\": \"Mpmn\",\n\t\"./lb.js\": \"Mpmn\",\n\t\"./lo\": \"GN8d\",\n\t\"./lo.js\": \"GN8d\",\n\t\"./lt\": \"9+C/\",\n\t\"./lt.js\": \"9+C/\",\n\t\"./lv\": \"plLn\",\n\t\"./lv.js\": \"plLn\",\n\t\"./me\": \"Q4im\",\n\t\"./me.js\": \"Q4im\",\n\t\"./mi\": \"vDz9\",\n\t\"./mi.js\": \"vDz9\",\n\t\"./mk\": \"LSGO\",\n\t\"./mk.js\": \"LSGO\",\n\t\"./ml\": \"CBy8\",\n\t\"./ml.js\": \"CBy8\",\n\t\"./mn\": \"zWnF\",\n\t\"./mn.js\": \"zWnF\",\n\t\"./mr\": \"MxZ2\",\n\t\"./mr.js\": \"MxZ2\",\n\t\"./ms\": \"pjKT\",\n\t\"./ms-my\": \"LUdl\",\n\t\"./ms-my.js\": \"LUdl\",\n\t\"./ms.js\": \"pjKT\",\n\t\"./mt\": \"lW3Z\",\n\t\"./mt.js\": \"lW3Z\",\n\t\"./my\": \"9wEo\",\n\t\"./my.js\": \"9wEo\",\n\t\"./nb\": \"iJfK\",\n\t\"./nb.js\": \"iJfK\",\n\t\"./ne\": \"UPht\",\n\t\"./ne.js\": \"UPht\",\n\t\"./nl\": \"buk/\",\n\t\"./nl-be\": \"mjsj\",\n\t\"./nl-be.js\": \"mjsj\",\n\t\"./nl.js\": \"buk/\",\n\t\"./nn\": \"L1ak\",\n\t\"./nn.js\": \"L1ak\",\n\t\"./oc-lnc\": \"u6EH\",\n\t\"./oc-lnc.js\": \"u6EH\",\n\t\"./pa-in\": \"cc5u\",\n\t\"./pa-in.js\": \"cc5u\",\n\t\"./pl\": \"qCVo\",\n\t\"./pl.js\": \"qCVo\",\n\t\"./pt\": \"mn/O\",\n\t\"./pt-br\": \"C5on\",\n\t\"./pt-br.js\": \"C5on\",\n\t\"./pt.js\": \"mn/O\",\n\t\"./ro\": \"V19m\",\n\t\"./ro.js\": \"V19m\",\n\t\"./ru\": \"yTtZ\",\n\t\"./ru.js\": \"yTtZ\",\n\t\"./sd\": \"acM4\",\n\t\"./sd.js\": \"acM4\",\n\t\"./se\": \"lSMZ\",\n\t\"./se.js\": \"lSMZ\",\n\t\"./si\": \"O+he\",\n\t\"./si.js\": \"O+he\",\n\t\"./sk\": \"8cr0\",\n\t\"./sk.js\": \"8cr0\",\n\t\"./sl\": \"5obH\",\n\t\"./sl.js\": \"5obH\",\n\t\"./sq\": \"xXjV\",\n\t\"./sq.js\": \"xXjV\",\n\t\"./sr\": \"S1eU\",\n\t\"./sr-cyrl\": \"YYnf\",\n\t\"./sr-cyrl.js\": \"YYnf\",\n\t\"./sr.js\": \"S1eU\",\n\t\"./ss\": \"GfYJ\",\n\t\"./ss.js\": \"GfYJ\",\n\t\"./sv\": \"Fo9I\",\n\t\"./sv.js\": \"Fo9I\",\n\t\"./sw\": \"EGKT\",\n\t\"./sw.js\": \"EGKT\",\n\t\"./ta\": \"uLqe\",\n\t\"./ta.js\": \"uLqe\",\n\t\"./te\": \"xwL8\",\n\t\"./te.js\": \"xwL8\",\n\t\"./tet\": \"d9+z\",\n\t\"./tet.js\": \"d9+z\",\n\t\"./tg\": \"Z0eb\",\n\t\"./tg.js\": \"Z0eb\",\n\t\"./th\": \"+gKs\",\n\t\"./th.js\": \"+gKs\",\n\t\"./tk\": \"qGf2\",\n\t\"./tk.js\": \"qGf2\",\n\t\"./tl-ph\": \"XDfA\",\n\t\"./tl-ph.js\": \"XDfA\",\n\t\"./tlh\": \"7L2X\",\n\t\"./tlh.js\": \"7L2X\",\n\t\"./tr\": \"Sd9I\",\n\t\"./tr.js\": \"Sd9I\",\n\t\"./tzl\": \"h2pr\",\n\t\"./tzl.js\": \"h2pr\",\n\t\"./tzm\": \"+P0v\",\n\t\"./tzm-latn\": \"XG2G\",\n\t\"./tzm-latn.js\": \"XG2G\",\n\t\"./tzm.js\": \"+P0v\",\n\t\"./ug-cn\": \"kZRC\",\n\t\"./ug-cn.js\": \"kZRC\",\n\t\"./uk\": \"ObCk\",\n\t\"./uk.js\": \"ObCk\",\n\t\"./ur\": \"b7Vg\",\n\t\"./ur.js\": \"b7Vg\",\n\t\"./uz\": \"deEg\",\n\t\"./uz-latn\": \"U6gn\",\n\t\"./uz-latn.js\": \"U6gn\",\n\t\"./uz.js\": \"deEg\",\n\t\"./vi\": \"ryXU\",\n\t\"./vi.js\": \"ryXU\",\n\t\"./x-pseudo\": \"ZOIo\",\n\t\"./x-pseudo.js\": \"ZOIo\",\n\t\"./yo\": \"mOPG\",\n\t\"./yo.js\": \"mOPG\",\n\t\"./zh-cn\": \"phPW\",\n\t\"./zh-cn.js\": \"phPW\",\n\t\"./zh-hk\": \"NqX4\",\n\t\"./zh-hk.js\": \"NqX4\",\n\t\"./zh-mo\": \"tw3I\",\n\t\"./zh-mo.js\": \"tw3I\",\n\t\"./zh-tw\": \"HJah\",\n\t\"./zh-tw.js\": \"HJah\"\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 = \"7jyQ\";","\n\nexport class View_BarcodeInDepo {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(productCode?:string,barCode?:string,depCode?:string) {\n this.productCode = productCode;\n this.barCode = barCode;\n this.depCode = depCode;\n }\n public productCode: string;\n public barCode: string;\n public depCode: string;\n\n}\n","\n\nexport class SaleLoadingCommandBarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(Lcbyear?: number, Lcbnum?: number, Lcbbarcode?: string, LcbproductCode?: string, LCBDepoCode?: number) {\n this.Lcbyear = Lcbyear;\n this.Lcbnum = Lcbnum;\n this.Lcbbarcode = Lcbbarcode;\n this.LcbproductCode = LcbproductCode;\n this.LCBDepoCode = LCBDepoCode; \n }\n public Lcbyear: number;\n public Lcbnum: number;\n public Lcbbarcode: string;\n public LcbproductCode: string;\n public LCBDepoCode: number;\n\n\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class SalePreInvoiceForContractProduct {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(spipYear?: number, spipPartCode?: number, spipCode?: number, spipRevesion?: number, spipProductCode?: string, spipAmount?: number, spipFromDeliveryDate?: string, spipToDeliveryDate?: string, spipPrice?: number, spipDiscountPercent?: number, spipTaxStore?: number, spipComissionStore?: number, spipBasePrice?: number, spipOverHead?: number, spipPriceArsam?: number, MoneyCode?: number, BarCode?: string) {\r\n this.spipYear = spipYear;\r\n this.spipPartCode = spipPartCode;\r\n this.spipCode = spipCode;\r\n this.spipRevesion = spipRevesion;\r\n this.spipProductCode = spipProductCode;\r\n this.spipAmount = spipAmount;\r\n this.spipFromDeliveryDate = spipFromDeliveryDate;\r\n this.spipToDeliveryDate = spipToDeliveryDate;\r\n this.spipPrice = spipPrice;\r\n this.spipDiscountPercent = spipDiscountPercent;\r\n this.spipComissionStore = spipComissionStore;\r\n this.spipTaxStore = spipTaxStore;\r\n this.spipBasePrice = spipBasePrice;\r\n this.spipOverHead = spipOverHead;\r\n this.spipPriceArsam = spipPriceArsam;\r\n this.moneyCode = MoneyCode;\r\n this.barCode = BarCode;\r\n }\r\n public spipYear: number;\r\n public spipPartCode: number;\r\n public spipCode: number;\r\n public spipRevesion: number;\r\n public spipProductCode: string;\r\n public spipAmount: number;\r\n public spipFromDeliveryDate: string;\r\n public spipToDeliveryDate: string;\r\n public spipPrice: number;\r\n public spipDiscountPercent: number;\r\n public spipComissionStore: number;\r\n public spipTaxStore: number;\r\n public spipBasePrice: number;\r\n public spipOverHead: number;\r\n public spipPriceArsam: number;\r\n public moneyCode: number; \r\n public barCode: string;\r\n}\r\n","\n\nimport { Injectable } from '@angular/core';\nimport { TranslateService, TranslateLoader } from '@ngx-translate/core';\nimport { Observable, Subject, of } from 'rxjs';\n\n\n\n@Injectable()\nexport class AppTranslationService {\n\n private onLanguageChanged = new Subject();\n languageChanged$ = this.onLanguageChanged.asObservable();\n\n constructor(private translate: TranslateService) {\n this.addLanguages(['en', 'fr', 'de', 'pt', 'ar', 'ko','fa']);\n this.setDefaultLanguage('fa');\n }\n\n addLanguages(lang: string[]) {\n this.translate.addLangs(lang);\n }\n\n setDefaultLanguage(lang: string) {\n this.translate.setDefaultLang(lang);\n }\n\n getDefaultLanguage() {\n return this.translate.defaultLang;\n }\n\n getBrowserLanguage() {\n return this.translate.getBrowserLang();\n }\n\n getCurrentLanguage() {\n return this.translate.currentLang;\n }\n\n getLoadedLanguages() {\n return this.translate.langs;\n }\n\n useBrowserLanguage(): string | void {\n const browserLang = this.getBrowserLanguage();\n\n if (browserLang.match(/fa|en|fr|de|pt|ar|ko/)) {\n this.changeLanguage(browserLang);\n return browserLang;\n }\n }\n\n useDefaultLangage() {\n return this.changeLanguage(null);\n }\n\n changeLanguage(language: string) {\n if (!language) {\n language = this.getDefaultLanguage();\n }\n\n if (language != this.translate.currentLang) {\n setTimeout(() => {\n this.translate.use(language);\n this.onLanguageChanged.next(language);\n });\n }\n\n return language;\n }\n\n\n getTranslation(key: string | Array, interpolateParams?: Object): string | any {\n return this.translate.instant(key, interpolateParams);\n }\n\n\n getTranslationAsync(key: string | Array, interpolateParams?: Object): Observable {\n return this.translate.get(key, interpolateParams);\n }\n\n}\n\n\nexport class TranslateLanguageLoader implements TranslateLoader {\n\n public getTranslation(lang: string): any {\n\n // Note Dynamic require(variable) will not work. Require is always at compile time\n lang = 'fa';\n switch (lang) {\n case 'en':\n return of(require('../assets/locale/en.json'));\n case 'fr':\n return of(require('../assets/locale/fr.json'));\n case 'de':\n return of(require('../assets/locale/de.json'));\n case 'pt':\n return of(require('../assets/locale/pt.json'));\n case 'ar':\n return of(require('../assets/locale/ar.json'));\n case 'ko':\n return of(require('../assets/locale/ko.json'));\n case 'fa':\n return of(require('../assets/locale/fa.json'));\n default:\n }\n }\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { SaleSendProduct } from \"./SaleSendProduct.model\";\r\nimport { VMSelectSubOrder } from \"./VMSelectSubOrder.model\";\r\n\r\nexport class VMSelectSubOrder_Order {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(saleSendProduct?: SaleSendProduct, rowsNewProduct?: VMSelectSubOrder[], contractCode?: number) {\r\n\r\n this.rowsNewProduct = rowsNewProduct;\r\n this.saleSendProduct = saleSendProduct;\r\n this.contractCode = contractCode;\r\n\r\n }\r\n\r\n public rowsNewProduct: VMSelectSubOrder[] = [];\r\n public saleSendProduct: SaleSendProduct = new SaleSendProduct();\r\n public contractCode: number;\r\n\r\n}\r\n","export enum ConfirmMessageEnum {\r\n yesOrNo = 1,\r\n ok = 2,\r\n info = 3,\r\n question = 4\r\n}\r\n","import {Component, ViewEncapsulation, OnInit, OnDestroy, ViewChildren, AfterViewInit, QueryList, ElementRef, ErrorHandler, ViewChild} from '@angular/core';\r\nimport {\r\n Router, Event as RouterEvent,\r\n NavigationStart,\r\n NavigationEnd,\r\n NavigationCancel,\r\n NavigationError\r\n} from '@angular/router';\r\nimport {ToastaService, ToastaConfig, ToastOptions, ToastData} from 'ngx-toasta';\r\nimport {ModalDirective} from 'ngx-bootstrap/modal';\r\n\r\nimport {AlertService, AlertDialog, DialogType, AlertCommand, AlertMessage, MessageSeverity} from '../services/alert.service';\r\nimport {NotificationService} from '../services/notification.service';\r\nimport {AppTranslationService} from '../services/app-translation.service';\r\nimport {AccountService} from '../services/account.service';\r\nimport {LocalStoreManager} from '../services/local-store-manager.service';\r\nimport {AppTitleService} from '../services/app-title.service';\r\nimport {GlobalConstantsservice} from '../services/GlobalConstants.service';\r\nimport {AuthService} from '../services/auth.service';\r\nimport {ConfigurationService} from '../services/configuration.service';\r\nimport {Permission} from '../models/permission.model';\r\nimport {LoginComponent} from '../components/login/login.component';\r\nimport {parse} from 'ts-node';\r\nimport {isNumber} from 'util';\r\nimport {User} from '../models/user.model';\r\nimport {OAuthService} from 'angular-oauth2-oidc';\r\nimport {SaleCustomer} from '../models/SaleCustomer.model';\r\nimport {MyCompanyService} from '../services/MyCompany.service';\r\nimport {SharedService} from '../services/Shared.service';\r\nimport {Subscription} from 'rxjs';\r\n\r\ndeclare var $: any;\r\n\r\nconst alertify: any = require('../assets/scripts/alertify.js');\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 implements OnInit, AfterViewInit, ErrorHandler, OnDestroy {\r\n\r\n get notificationsTitle() {\r\n if (this.newNotificationCount) {\r\n return `${this.gT('app.Notifications')} (${this.newNotificationCount} ${this.gT('app.New')})`;\r\n } else {\r\n return this.gT('app.Notifications');\r\n }\r\n }\r\n\r\n constructor(\r\n storageManager: LocalStoreManager,\r\n private toastaService: ToastaService,\r\n private toastaConfig: ToastaConfig,\r\n private accountService: AccountService,\r\n private alertService: AlertService,\r\n private notificationService: NotificationService,\r\n private appTitleService: AppTitleService,\r\n private authService: AuthService,\r\n private translationService: AppTranslationService,\r\n public configurations: ConfigurationService,\r\n public router: Router,\r\n public oauthService: OAuthService,\r\n public GlobalConstantsservice: GlobalConstantsservice,\r\n ) {\r\n storageManager.initialiseStorageSyncListener();\r\n\r\n this.toastaConfig.theme = 'bootstrap';\r\n this.toastaConfig.position = 'bottom-left';\r\n this.toastaConfig.limit = 100;\r\n this.toastaConfig.showClose = true;\r\n this.toastaConfig.showDuration = true;\r\n this.appTitleService.appName = this.appTitle;\r\n }\r\n\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n\r\n get fullName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.fullName : '';\r\n }\r\n\r\n public isError: false;\r\n isAppLoaded: boolean;\r\n isUserLoggedIn: boolean;\r\n shouldShowLoginModal: boolean;\r\n removePrebootScreen: boolean;\r\n newNotificationCount = 0;\r\n appTitle = 'پنل فروشگاهی آرسام';\r\n appLogo = require('../assets/images/logo-header.png').default;\r\n stickyToasties: number[] = [];\r\n message: string;\r\n subscription: Subscription;\r\n accountName: string;\r\n loading = true;\r\n subscriptionRouter: Subscription = null;\r\n\r\n dataLoadingConsecutiveFailures = 0;\r\n notificationsLoadingSubscription: any;\r\n\r\n @ViewChildren('loginModal,loginControl')\r\n modalLoginControls: QueryList;\r\n\r\n @ViewChild('spinnerElement')\r\n spinnerElement!: ElementRef;\r\n\r\n loginModal: ModalDirective;\r\n loginControl: LoginComponent;\r\n UserNew: User[];\r\n public editingCUser = \"\";\r\n public editingVersion = \"\";\r\n\r\n messages: any[] =\r\n [\r\n {\r\n id: 1,\r\n title: 'آپدیت1',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n },\r\n {\r\n id: 2,\r\n title: '2آپدیت',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n },\r\n {\r\n id: 3,\r\n title: '3آپدیت',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n },\r\n {\r\n id: 4,\r\n title: '4آپدیت',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n },\r\n {\r\n id: 5,\r\n title: '5آپدیت',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n },\r\n {\r\n id: 6,\r\n title: '6آپدیت',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n },\r\n {\r\n id: 7,\r\n title: '7آپدیت',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n },\r\n {\r\n id: 8,\r\n title: '8آپدیت',\r\n description: 'آپدیت قسمت های لاگین و قرارداد'\r\n }\r\n ];\r\n handleError(error: any): void {\r\n this.isError = false;\r\n }\r\n\r\n gT = (key: string | Array, interpolateParams?: Object) => this.translationService.getTranslation(key, interpolateParams);\r\n\r\n\r\n ngAfterViewInit() {\r\n\r\n this.modalLoginControls.changes.subscribe((controls: QueryList) => {\r\n controls.forEach(control => {\r\n if (control) {\r\n if (control instanceof LoginComponent) {\r\n this.loginControl = control;\r\n this.loginControl.modalClosedCallback = () => this.loginModal.hide();\r\n } else {\r\n this.loginModal = control;\r\n this.loginModal.show();\r\n }\r\n }\r\n });\r\n });\r\n }\r\n\r\n\r\n onLoginModalShown() {\r\n this.alertService.showStickyMessage('Session Expired', 'Your Session has expired. Please log in again', MessageSeverity.info);\r\n }\r\n\r\n\r\n onLoginModalHidden() {\r\n this.alertService.resetStickyMessage();\r\n this.loginControl.reset();\r\n this.shouldShowLoginModal = false;\r\n\r\n if (this.authService.isSessionExpired) {\r\n this.alertService.showStickyMessage('Session Expired', 'Your Session has expired. Please log in again to renew your session', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n\r\n onLoginModalHide() {\r\n this.alertService.resetStickyMessage();\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.isUserLoggedIn = this.authService.isLoggedIn;\r\n // setTimeout(() => this.isAppLoaded = true);\r\n // setTimeout(() => this.removePrebootScreen = true);\r\n if (this.isUserLoggedIn) {\r\n this.alertService.resetStickyMessage();\r\n this.alertService.showMessage('ورود', `خوش برگشتی ${this.userName}!`, MessageSeverity.success);\r\n }\r\n this.alertService.getDialogEvent().subscribe(alert => this.showDialog(alert));\r\n this.alertService.getMessageEvent().subscribe(message => this.showToast(message));\r\n\r\n this.authService.reLoginDelegate = () => this.shouldShowLoginModal = true;\r\n\r\n this.authService.getLoginStatusEvent().subscribe(isLoggedIn => {\r\n this.isUserLoggedIn = isLoggedIn;\r\n if (this.isUserLoggedIn) {\r\n this.initNotificationsLoading();\r\n } else {\r\n this.unsubscribeNotifications();\r\n }\r\n setTimeout(() => {\r\n if (!this.isUserLoggedIn) {\r\n this.alertService.showMessage('خروج', 'خروج از حساب کاربری', MessageSeverity.warn);\r\n this.logout();\r\n }\r\n }, 500);\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unsubscribeNotifications();\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n private unsubscribeNotifications() {\r\n if (this.notificationsLoadingSubscription) {\r\n this.notificationsLoadingSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n initNotificationsLoading() {\r\n\r\n this.notificationsLoadingSubscription = this.notificationService.getNewNotificationsPeriodically()\r\n .subscribe(notifications => {\r\n this.dataLoadingConsecutiveFailures = 0;\r\n this.newNotificationCount = notifications.filter(n => !n.isRead).length;\r\n },\r\n error => {\r\n this.alertService.logError(error);\r\n\r\n if (this.dataLoadingConsecutiveFailures++ < 20) {\r\n setTimeout(() => this.initNotificationsLoading(), 5000);\r\n } else {\r\n this.alertService.showStickyMessage('Load Error', 'Loading new notifications from the server failed!', MessageSeverity.error);\r\n }\r\n });\r\n }\r\n\r\n\r\n markNotificationsAsRead() {\r\n const recentNotifications = this.notificationService.recentNotifications;\r\n\r\n if (recentNotifications.length) {\r\n this.notificationService.readUnreadNotification(recentNotifications.map(n => n.id), true)\r\n .subscribe(response => {\r\n for (const n of recentNotifications) {\r\n n.isRead = true;\r\n }\r\n\r\n this.newNotificationCount = recentNotifications.filter(n => !n.isRead).length;\r\n },\r\n error => {\r\n this.alertService.logError(error);\r\n this.alertService.showMessage('Notification Error', 'Marking read notifications failed', MessageSeverity.error);\r\n\r\n });\r\n }\r\n }\r\n\r\n showDialog(dialog: AlertDialog) {\r\n\r\n alertify.set({\r\n labels: {\r\n ok: dialog.okLabel || 'OK',\r\n cancel: dialog.cancelLabel || 'Cancel'\r\n }\r\n });\r\n\r\n switch (dialog.type) {\r\n case DialogType.alert:\r\n alertify.alert(dialog.message);\r\n\r\n break;\r\n case DialogType.confirm:\r\n alertify\r\n .confirm(dialog.message, (e) => {\r\n if (e) {\r\n dialog.okCallback();\r\n } else {\r\n if (dialog.cancelCallback) {\r\n dialog.cancelCallback();\r\n }\r\n }\r\n });\r\n\r\n break;\r\n case DialogType.prompt:\r\n alertify\r\n .prompt(dialog.message, (e, val) => {\r\n if (e) {\r\n dialog.okCallback(val);\r\n } else {\r\n if (dialog.cancelCallback) {\r\n dialog.cancelCallback();\r\n }\r\n }\r\n }, dialog.defaultValue);\r\n\r\n break;\r\n }\r\n }\r\n\r\n showToast(alert: AlertCommand) {\r\n if (alert.operation == 'clear') {\r\n for (const id of this.stickyToasties.slice(0)) {\r\n this.toastaService.clear(id);\r\n }\r\n return;\r\n }\r\n const toastOptions: ToastOptions = {\r\n title: alert.message.summary,\r\n msg: alert.message.detail,\r\n };\r\n\r\n if (alert.operation == 'add_sticky') {\r\n toastOptions.timeout = 0;\r\n\r\n toastOptions.onAdd = (toast: ToastData) => {\r\n this.stickyToasties.push(toast.id);\r\n };\r\n\r\n toastOptions.onRemove = (toast: ToastData) => {\r\n const index = this.stickyToasties.indexOf(toast.id, 0);\r\n\r\n if (index > -1) {\r\n this.stickyToasties.splice(index, 1);\r\n }\r\n\r\n if (alert.onRemove) {\r\n alert.onRemove();\r\n }\r\n\r\n toast.onAdd = null;\r\n toast.onRemove = null;\r\n };\r\n } else {\r\n toastOptions.timeout = 4000;\r\n }\r\n\r\n switch (alert.message.severity) {\r\n case MessageSeverity.default:\r\n this.toastaService.default(toastOptions);\r\n break;\r\n case MessageSeverity.info:\r\n this.toastaService.info(toastOptions);\r\n break;\r\n case MessageSeverity.success:\r\n this.toastaService.success(toastOptions);\r\n break;\r\n case MessageSeverity.error:\r\n this.toastaService.error(toastOptions);\r\n break;\r\n case MessageSeverity.warn:\r\n this.toastaService.warning(toastOptions);\r\n break;\r\n case MessageSeverity.wait:\r\n this.toastaService.wait(toastOptions);\r\n break;\r\n }\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n this.authService.redirectLogoutUser();\r\n }\r\n\r\n sidebarEvent() {\r\n $(document).ready(function() {\r\n if ($('.sidebar').toggleClass('fliph')) {\r\n return $('.sidebar').css({display: 'block'});\r\n } else {\r\n return $(\".sidebar\").css({width: \"42px\"}),\r\n $(\".content\").css({\"padding-right\": \"42px\"});\r\n }\r\n });\r\n }\r\n\r\n public showMessage(i: any) {\r\n let index = this.messages.findIndex(i => i == i.id);\r\n this.messages.splice(index, 1);\r\n }\r\n\r\n getYear() {\r\n return new Date().getUTCFullYear();\r\n }\r\n}\r\n","
\r\n \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 } from '@angular/core';\n\n@Component({\n selector: 'upload-documents-info',\n templateUrl: './upload-documents-info.component.html'\n})\nexport class UploadDocumentsInfoComponent {\n\n \n\n}\n","
\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\n/**\n * alertify\n * An unobtrusive customizable JavaScript notification system\n *\n * @author Fabien Doiron \n * @copyright Fabien Doiron 2013\n * @license MIT \n * @link http://fabien-d.github.com/alertify.js/\n * @module alertify\n * @version 0.3.11\n */\n(function (global, undefined) {\n\t\"use strict\";\n\n\tvar document = global.document,\n\t Alertify;\n\n\tAlertify = function () {\n\n\t\tvar _alertify = {},\n\t\t dialogs = {},\n\t\t isopen = false,\n\t\t keys = { ENTER: 13, ESC: 27, SPACE: 32 },\n\t\t queue = [],\n\t\t $, btnCancel, btnOK, btnReset, btnResetBack, btnFocus, elCallee, elCover, elDialog, elLog, form, input, getTransitionEvent;\n\n\t\t/**\n\t\t * Markup pieces\n\t\t * @type {Object}\n\t\t */\n\t\tdialogs = {\n\t\t\tbuttons : {\n\t\t\t\tholder : \"\",\n\t\t\t\tsubmit : \"\",\n\t\t\t\tok : \"\",\n\t\t\t\tcancel : \"\"\n\t\t\t},\n\t\t\tinput : \"
\",\n\t\t\tmessage : \"

{{message}}

\",\n\t\t\tlog : \"
{{message}}
\"\n\t\t};\n\n\t\t/**\n\t\t * Return the proper transitionend event\n\t\t * @return {String} Transition type string\n\t\t */\n\t\tgetTransitionEvent = function () {\n\t\t\tvar t,\n\t\t\t type,\n\t\t\t supported = false,\n\t\t\t el = document.createElement(\"fakeelement\"),\n\t\t\t transitions = {\n\t\t\t\t \"WebkitTransition\" : \"webkitTransitionEnd\",\n\t\t\t\t \"MozTransition\" : \"transitionend\",\n\t\t\t\t \"OTransition\" : \"otransitionend\",\n\t\t\t\t \"transition\" : \"transitionend\"\n\t\t\t };\n\n\t\t\tfor (t in transitions) {\n\t\t\t\tif (el.style[t] !== undefined) {\n\t\t\t\t\ttype = transitions[t];\n\t\t\t\t\tsupported = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\ttype : type,\n\t\t\t\tsupported : supported\n\t\t\t};\n\t\t};\n\n\t\t/**\n\t\t * Shorthand for document.getElementById()\n\t\t *\n\t\t * @param {String} id A specific element ID\n\t\t * @return {Object} HTML element\n\t\t */\n\t\t$ = function (id) {\n\t\t\treturn document.getElementById(id);\n\t\t};\n\n\t\t/**\n\t\t * Alertify private object\n\t\t * @type {Object}\n\t\t */\n\t\t_alertify = {\n\n\t\t\t/**\n\t\t\t * Labels object\n\t\t\t * @type {Object}\n\t\t\t */\n\t\t\tlabels : {\n\t\t\t\tok : \"OK\",\n\t\t\t\tcancel : \"Cancel\"\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Delay number\n\t\t\t * @type {Number}\n\t\t\t */\n\t\t\tdelay : 5000,\n\n\t\t\t/**\n\t\t\t * Whether buttons are reversed (default is secondary/primary)\n\t\t\t * @type {Boolean}\n\t\t\t */\n\t\t\tbuttonReverse : false,\n\n\t\t\t/**\n\t\t\t * Which button should be focused by default\n\t\t\t * @type {String}\t\"ok\" (default), \"cancel\", or \"none\"\n\t\t\t */\n\t\t\tbuttonFocus : \"ok\",\n\n\t\t\t/**\n\t\t\t * Set the transition event on load\n\t\t\t * @type {[type]}\n\t\t\t */\n\t\t\ttransition : undefined,\n\n\t\t\t/**\n\t\t\t * Set the proper button click events\n\t\t\t *\n\t\t\t * @param {Function} fn [Optional] Callback function\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\taddListeners : function (fn) {\n\t\t\t\tvar hasOK = (typeof btnOK !== \"undefined\"),\n\t\t\t\t hasCancel = (typeof btnCancel !== \"undefined\"),\n\t\t\t\t hasInput = (typeof input !== \"undefined\"),\n\t\t\t\t val = \"\",\n\t\t\t\t self = this,\n\t\t\t\t ok, cancel, common, key, reset;\n\n\t\t\t\t// ok event handler\n\t\t\t\tok = function (event) {\n\t\t\t\t\tif (typeof event.preventDefault !== \"undefined\") event.preventDefault();\n\t\t\t\t\tcommon(event);\n\t\t\t\t\tif (typeof input !== \"undefined\") val = input.value;\n\t\t\t\t\tif (typeof fn === \"function\") {\n\t\t\t\t\t\tif (typeof input !== \"undefined\") {\n\t\t\t\t\t\t\tfn(true, val);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse fn(true);\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\n\t\t\t\t// cancel event handler\n\t\t\t\tcancel = function (event) {\n\t\t\t\t\tif (typeof event.preventDefault !== \"undefined\") event.preventDefault();\n\t\t\t\t\tcommon(event);\n\t\t\t\t\tif (typeof fn === \"function\") fn(false);\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\n\t\t\t\t// common event handler (keyup, ok and cancel)\n\t\t\t\tcommon = function (event) {\n\t\t\t\t\tself.hide();\n\t\t\t\t\tself.unbind(document.body, \"keyup\", key);\n\t\t\t\t\tself.unbind(btnReset, \"focus\", reset);\n\t\t\t\t\tif (hasOK) self.unbind(btnOK, \"click\", ok);\n\t\t\t\t\tif (hasCancel) self.unbind(btnCancel, \"click\", cancel);\n\t\t\t\t};\n\n\t\t\t\t// keyup handler\n\t\t\t\tkey = function (event) {\n\t\t\t\t\tvar keyCode = event.keyCode;\n\t\t\t\t\tif ((keyCode === keys.SPACE && !hasInput) || (hasInput && keyCode === keys.ENTER)) ok(event);\n\t\t\t\t\tif (keyCode === keys.ESC && hasCancel) cancel(event);\n\t\t\t\t};\n\n\t\t\t\t// reset focus to first item in the dialog\n\t\t\t\treset = function (event) {\n\t\t\t\t\tif (hasInput) input.focus();\n\t\t\t\t\telse if (!hasCancel || self.buttonReverse) btnOK.focus();\n\t\t\t\t\telse btnCancel.focus();\n\t\t\t\t};\n\n\t\t\t\t// handle reset focus link\n\t\t\t\t// this ensures that the keyboard focus does not\n\t\t\t\t// ever leave the dialog box until an action has\n\t\t\t\t// been taken\n\t\t\t\tthis.bind(btnReset, \"focus\", reset);\n\t\t\t\tthis.bind(btnResetBack, \"focus\", reset);\n\t\t\t\t// handle OK click\n\t\t\t\tif (hasOK) this.bind(btnOK, \"click\", ok);\n\t\t\t\t// handle Cancel click\n\t\t\t\tif (hasCancel) this.bind(btnCancel, \"click\", cancel);\n\t\t\t\t// listen for keys, Cancel => ESC\n\t\t\t\tthis.bind(document.body, \"keyup\", key);\n\t\t\t\tif (!this.transition.supported) {\n\t\t\t\t\tthis.setFocus();\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Bind events to elements\n\t\t\t *\n\t\t\t * @param {Object} el HTML Object\n\t\t\t * @param {Event} event Event to attach to element\n\t\t\t * @param {Function} fn Callback function\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tbind : function (el, event, fn) {\n\t\t\t\tif (typeof el.addEventListener === \"function\") {\n\t\t\t\t\tel.addEventListener(event, fn, false);\n\t\t\t\t} else if (el.attachEvent) {\n\t\t\t\t\tel.attachEvent(\"on\" + event, fn);\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Use alertify as the global error handler (using window.onerror)\n\t\t\t *\n\t\t\t * @return {boolean} success\n\t\t\t */\n\t\t\thandleErrors : function () {\n\t\t\t\tif (typeof global.onerror !== \"undefined\") {\n\t\t\t\t\tvar self = this;\n\t\t\t\t\tglobal.onerror = function (msg, url, line) {\n\t\t\t\t\t\tself.error(\"[\" + msg + \" on line \" + line + \" of \" + url + \"]\", 0);\n\t\t\t\t\t};\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Append button HTML strings\n\t\t\t *\n\t\t\t * @param {String} secondary The secondary button HTML string\n\t\t\t * @param {String} primary The primary button HTML string\n\t\t\t *\n\t\t\t * @return {String} The appended button HTML strings\n\t\t\t */\n\t\t\tappendButtons : function (secondary, primary) {\n\t\t\t\treturn this.buttonReverse ? primary + secondary : secondary + primary;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Build the proper message box\n\t\t\t *\n\t\t\t * @param {Object} item Current object in the queue\n\t\t\t *\n\t\t\t * @return {String} An HTML string of the message box\n\t\t\t */\n\t\t\tbuild : function (item) {\n\t\t\t\tvar html = \"\",\n\t\t\t\t type = item.type,\n\t\t\t\t message = item.message,\n\t\t\t\t css = item.cssClass || \"\";\n\n\t\t\t\thtml += \"
\";\n\t\t\t\thtml += \"Reset Focus\";\n\n\t\t\t\tif (_alertify.buttonFocus === \"none\") html += \"\";\n\n\t\t\t\t// doens't require an actual form\n\t\t\t\tif (type === \"prompt\") html += \"
\";\n\n\t\t\t\thtml += \"
\";\n\t\t\t\thtml += dialogs.message.replace(\"{{message}}\", message);\n\n\t\t\t\tif (type === \"prompt\") html += dialogs.input;\n\n\t\t\t\thtml += dialogs.buttons.holder;\n\t\t\t\thtml += \"
\";\n\n\t\t\t\tif (type === \"prompt\") html += \"
\";\n\n\t\t\t\thtml += \"Reset Focus\";\n\t\t\t\thtml += \"
\";\n\n\t\t\t\tswitch (type) {\n\t\t\t\tcase \"confirm\":\n\t\t\t\t\thtml = html.replace(\"{{buttons}}\", this.appendButtons(dialogs.buttons.cancel, dialogs.buttons.ok));\n\t\t\t\t\thtml = html.replace(\"{{ok}}\", this.labels.ok).replace(\"{{cancel}}\", this.labels.cancel);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"prompt\":\n\t\t\t\t\thtml = html.replace(\"{{buttons}}\", this.appendButtons(dialogs.buttons.cancel, dialogs.buttons.submit));\n\t\t\t\t\thtml = html.replace(\"{{ok}}\", this.labels.ok).replace(\"{{cancel}}\", this.labels.cancel);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"alert\":\n\t\t\t\t\thtml = html.replace(\"{{buttons}}\", dialogs.buttons.ok);\n\t\t\t\t\thtml = html.replace(\"{{ok}}\", this.labels.ok);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\telDialog.className = \"alertify alertify-\" + type + \" \" + css;\n\t\t\t\telCover.className = \"alertify-cover\";\n\t\t\t\treturn html;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Close the log messages\n\t\t\t *\n\t\t\t * @param {Object} elem HTML Element of log message to close\n\t\t\t * @param {Number} wait [optional] Time (in ms) to wait before automatically hiding the message, if 0 never hide\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tclose : function (elem, wait) {\n\t\t\t\t// Unary Plus: +\"2\" === 2\n\t\t\t\tvar timer = (wait && !isNaN(wait)) ? +wait : this.delay,\n\t\t\t\t self = this,\n\t\t\t\t hideElement, transitionDone;\n\n\t\t\t\t// set click event on log messages\n\t\t\t\tthis.bind(elem, \"click\", function () {\n\t\t\t\t\thideElement(elem);\n\t\t\t\t});\n\t\t\t\t// Hide the dialog box after transition\n\t\t\t\t// This ensure it doens't block any element from being clicked\n\t\t\t\ttransitionDone = function (event) {\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t// unbind event so function only gets called once\n\t\t\t\t\tself.unbind(this, self.transition.type, transitionDone);\n\t\t\t\t\t// remove log message\n\t\t\t\t\telLog.removeChild(this);\n\t\t\t\t\tif (!elLog.hasChildNodes()) elLog.className += \" alertify-logs-hidden\";\n\t\t\t\t};\n\t\t\t\t// this sets the hide class to transition out\n\t\t\t\t// or removes the child if css transitions aren't supported\n\t\t\t\thideElement = function (el) {\n\t\t\t\t\t// ensure element exists\n\t\t\t\t\tif (typeof el !== \"undefined\" && el.parentNode === elLog) {\n\t\t\t\t\t\t// whether CSS transition exists\n\t\t\t\t\t\tif (self.transition.supported) {\n\t\t\t\t\t\t\tself.bind(el, self.transition.type, transitionDone);\n\t\t\t\t\t\t\tel.className += \" alertify-log-hide\";\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\telLog.removeChild(el);\n\t\t\t\t\t\t\tif (!elLog.hasChildNodes()) elLog.className += \" alertify-logs-hidden\";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\t// never close (until click) if wait is set to 0\n\t\t\t\tif (wait === 0) return;\n\t\t\t\t// set timeout to auto close the log message\n\t\t\t\tsetTimeout(function () { hideElement(elem); }, timer);\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Create a dialog box\n\t\t\t *\n\t\t\t * @param {String} message The message passed from the callee\n\t\t\t * @param {String} type Type of dialog to create\n\t\t\t * @param {Function} fn [Optional] Callback function\n\t\t\t * @param {String} placeholder [Optional] Default value for prompt input field\n\t\t\t * @param {String} cssClass [Optional] Class(es) to append to dialog box\n\t\t\t *\n\t\t\t * @return {Object}\n\t\t\t */\n\t\t\tdialog : function (message, type, fn, placeholder, cssClass) {\n\t\t\t\t// set the current active element\n\t\t\t\t// this allows the keyboard focus to be resetted\n\t\t\t\t// after the dialog box is closed\n\t\t\t\telCallee = document.activeElement;\n\t\t\t\t// check to ensure the alertify dialog element\n\t\t\t\t// has been successfully created\n\t\t\t\tvar check = function () {\n\t\t\t\t\tif ((elLog && elLog.scrollTop !== null) && (elCover && elCover.scrollTop !== null)) return;\n\t\t\t\t\telse check();\n\t\t\t\t};\n\t\t\t\t// error catching\n\t\t\t\tif (typeof message !== \"string\") throw new Error(\"message must be a string\");\n\t\t\t\tif (typeof type !== \"string\") throw new Error(\"type must be a string\");\n\t\t\t\tif (typeof fn !== \"undefined\" && typeof fn !== \"function\") throw new Error(\"fn must be a function\");\n\t\t\t\t// initialize alertify if it hasn't already been done\n\t\t\t\tthis.init();\n\t\t\t\tcheck();\n\n\t\t\t\tqueue.push({ type: type, message: message, callback: fn, placeholder: placeholder, cssClass: cssClass });\n\t\t\t\tif (!isopen) this.setup();\n\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Extend the log method to create custom methods\n\t\t\t *\n\t\t\t * @param {String} type Custom method name\n\t\t\t *\n\t\t\t * @return {Function}\n\t\t\t */\n\t\t\textend : function (type) {\n\t\t\t\tif (typeof type !== \"string\") throw new Error(\"extend method must have exactly one paramter\");\n\t\t\t\treturn function (message, wait) {\n\t\t\t\t\tthis.log(message, type, wait);\n\t\t\t\t\treturn this;\n\t\t\t\t};\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Hide the dialog and rest to defaults\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\thide : function () {\n\t\t\t\tvar transitionDone,\n\t\t\t\t self = this;\n\t\t\t\t// remove reference from queue\n\t\t\t\tqueue.splice(0,1);\n\t\t\t\t// if items remaining in the queue\n\t\t\t\tif (queue.length > 0) this.setup(true);\n\t\t\t\telse {\n\t\t\t\t\tisopen = false;\n\t\t\t\t\t// Hide the dialog box after transition\n\t\t\t\t\t// This ensure it doens't block any element from being clicked\n\t\t\t\t\ttransitionDone = function (event) {\n\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t// unbind event so function only gets called once\n\t\t\t\t\t\tself.unbind(elDialog, self.transition.type, transitionDone);\n\t\t\t\t\t};\n\t\t\t\t\t// whether CSS transition exists\n\t\t\t\t\tif (this.transition.supported) {\n\t\t\t\t\t\tthis.bind(elDialog, this.transition.type, transitionDone);\n\t\t\t\t\t\telDialog.className = \"alertify alertify-hide alertify-hidden\";\n\t\t\t\t\t} else {\n\t\t\t\t\t\telDialog.className = \"alertify alertify-hide alertify-hidden alertify-isHidden\";\n\t\t\t\t\t}\n\t\t\t\t\telCover.className = \"alertify-cover alertify-cover-hidden\";\n\t\t\t\t\t// set focus to the last element or body\n\t\t\t\t\t// after the dialog is closed\n\t\t\t\t\telCallee.focus();\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Initialize Alertify\n\t\t\t * Create the 2 main elements\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tinit : function () {\n\t\t\t\t// ensure legacy browsers support html5 tags\n\t\t\t\tdocument.createElement(\"nav\");\n\t\t\t\tdocument.createElement(\"article\");\n\t\t\t\tdocument.createElement(\"section\");\n\t\t\t\t// cover\n\t\t\t\tif ($(\"alertify-cover\") == null) {\n\t\t\t\t\telCover = document.createElement(\"div\");\n\t\t\t\t\telCover.setAttribute(\"id\", \"alertify-cover\");\n\t\t\t\t\telCover.className = \"alertify-cover alertify-cover-hidden\";\n\t\t\t\t\tdocument.body.appendChild(elCover);\n\t\t\t\t}\n\t\t\t\t// main element\n\t\t\t\tif ($(\"alertify\") == null) {\n\t\t\t\t\tisopen = false;\n\t\t\t\t\tqueue = [];\n\t\t\t\t\telDialog = document.createElement(\"section\");\n\t\t\t\t\telDialog.setAttribute(\"id\", \"alertify\");\n\t\t\t\t\telDialog.className = \"alertify alertify-hidden\";\n\t\t\t\t\tdocument.body.appendChild(elDialog);\n\t\t\t\t}\n\t\t\t\t// log element\n\t\t\t\tif ($(\"alertify-logs\") == null) {\n\t\t\t\t\telLog = document.createElement(\"section\");\n\t\t\t\t\telLog.setAttribute(\"id\", \"alertify-logs\");\n\t\t\t\t\telLog.className = \"alertify-logs alertify-logs-hidden\";\n\t\t\t\t\tdocument.body.appendChild(elLog);\n\t\t\t\t}\n\t\t\t\t// set tabindex attribute on body element\n\t\t\t\t// this allows script to give it focus\n\t\t\t\t// after the dialog is closed\n\t\t\t\tdocument.body.setAttribute(\"tabindex\", \"0\");\n\t\t\t\t// set transition type\n\t\t\t\tthis.transition = getTransitionEvent();\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Show a new log message box\n\t\t\t *\n\t\t\t * @param {String} message The message passed from the callee\n\t\t\t * @param {String} type [Optional] Optional type of log message\n\t\t\t * @param {Number} wait [Optional] Time (in ms) to wait before auto-hiding the log\n\t\t\t *\n\t\t\t * @return {Object}\n\t\t\t */\n\t\t\tlog : function (message, type, wait) {\n\t\t\t\t// check to ensure the alertify dialog element\n\t\t\t\t// has been successfully created\n\t\t\t\tvar check = function () {\n\t\t\t\t\tif (elLog && elLog.scrollTop !== null) return;\n\t\t\t\t\telse check();\n\t\t\t\t};\n\t\t\t\t// initialize alertify if it hasn't already been done\n\t\t\t\tthis.init();\n\t\t\t\tcheck();\n\n\t\t\t\telLog.className = \"alertify-logs\";\n\t\t\t\tthis.notify(message, type, wait);\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Add new log message\n\t\t\t * If a type is passed, a class name \"alertify-log-{type}\" will get added.\n\t\t\t * This allows for custom look and feel for various types of notifications.\n\t\t\t *\n\t\t\t * @param {String} message The message passed from the callee\n\t\t\t * @param {String} type [Optional] Type of log message\n\t\t\t * @param {Number} wait [Optional] Time (in ms) to wait before auto-hiding\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tnotify : function (message, type, wait) {\n\t\t\t\tvar log = document.createElement(\"article\");\n\t\t\t\tlog.className = \"alertify-log\" + ((typeof type === \"string\" && type !== \"\") ? \" alertify-log-\" + type : \"\");\n\t\t\t\tlog.innerHTML = message;\n\t\t\t\t// append child\n\t\t\t\telLog.appendChild(log);\n\t\t\t\t// triggers the CSS animation\n\t\t\t\tsetTimeout(function() { log.className = log.className + \" alertify-log-show\"; }, 50);\n\t\t\t\tthis.close(log, wait);\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Set properties\n\t\t\t *\n\t\t\t * @param {Object} args Passing parameters\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tset : function (args) {\n\t\t\t\tvar k;\n\t\t\t\t// error catching\n\t\t\t\tif (typeof args !== \"object\" && args instanceof Array) throw new Error(\"args must be an object\");\n\t\t\t\t// set parameters\n\t\t\t\tfor (k in args) {\n\t\t\t\t\tif (args.hasOwnProperty(k)) {\n\t\t\t\t\t\tthis[k] = args[k];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Common place to set focus to proper element\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tsetFocus : function () {\n\t\t\t\tif (input) {\n\t\t\t\t\tinput.focus();\n\t\t\t\t\tinput.select();\n\t\t\t\t}\n\t\t\t\telse btnFocus.focus();\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Initiate all the required pieces for the dialog box\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tsetup : function (fromQueue) {\n\t\t\t\tvar item = queue[0],\n\t\t\t\t self = this,\n\t\t\t\t transitionDone;\n\n\t\t\t\t// dialog is open\n\t\t\t\tisopen = true;\n\t\t\t\t// Set button focus after transition\n\t\t\t\ttransitionDone = function (event) {\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\tself.setFocus();\n\t\t\t\t\t// unbind event so function only gets called once\n\t\t\t\t\tself.unbind(elDialog, self.transition.type, transitionDone);\n\t\t\t\t};\n\t\t\t\t// whether CSS transition exists\n\t\t\t\tif (this.transition.supported && !fromQueue) {\n\t\t\t\t\tthis.bind(elDialog, this.transition.type, transitionDone);\n\t\t\t\t}\n\t\t\t\t// build the proper dialog HTML\n\t\t\t\telDialog.innerHTML = this.build(item);\n\t\t\t\t// assign all the common elements\n\t\t\t\tbtnReset = $(\"alertify-resetFocus\");\n\t\t\t\tbtnResetBack = $(\"alertify-resetFocusBack\");\n\t\t\t\tbtnOK = $(\"alertify-ok\") || undefined;\n\t\t\t\tbtnCancel = $(\"alertify-cancel\") || undefined;\n\t\t\t\tbtnFocus = (_alertify.buttonFocus === \"cancel\") ? btnCancel : ((_alertify.buttonFocus === \"none\") ? $(\"alertify-noneFocus\") : btnOK),\n\t\t\t\tinput = $(\"alertify-text\") || undefined;\n\t\t\t\tform = $(\"alertify-form\") || undefined;\n\t\t\t\t// add placeholder value to the input field\n\t\t\t\tif (typeof item.placeholder === \"string\" && item.placeholder !== \"\") input.value = item.placeholder;\n\t\t\t\tif (fromQueue) this.setFocus();\n\t\t\t\tthis.addListeners(item.callback);\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Unbind events to elements\n\t\t\t *\n\t\t\t * @param {Object} el HTML Object\n\t\t\t * @param {Event} event Event to detach to element\n\t\t\t * @param {Function} fn Callback function\n\t\t\t *\n\t\t\t * @return {undefined}\n\t\t\t */\n\t\t\tunbind : function (el, event, fn) {\n\t\t\t\tif (typeof el.removeEventListener === \"function\") {\n\t\t\t\t\tel.removeEventListener(event, fn, false);\n\t\t\t\t} else if (el.detachEvent) {\n\t\t\t\t\tel.detachEvent(\"on\" + event, fn);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\treturn {\n\t\t\talert : function (message, fn, cssClass) { _alertify.dialog(message, \"alert\", fn, \"\", cssClass); return this; },\n\t\t\tconfirm : function (message, fn, cssClass) { _alertify.dialog(message, \"confirm\", fn, \"\", cssClass); return this; },\n\t\t\textend : _alertify.extend,\n\t\t\tinit : _alertify.init,\n\t\t\tlog : function (message, type, wait) { _alertify.log(message, type, wait); return this; },\n\t\t\tprompt : function (message, fn, placeholder, cssClass) { _alertify.dialog(message, \"prompt\", fn, placeholder, cssClass); return this; },\n\t\t\tsuccess : function (message, wait) { _alertify.log(message, \"success\", wait); return this; },\n\t\t\terror : function (message, wait) { _alertify.log(message, \"error\", wait); return this; },\n\t\t\tset : function (args) { _alertify.set(args); },\n\t\t\tlabels : _alertify.labels,\n\t\t\tdebug : _alertify.handleErrors\n\t\t};\n\t};\n\n\t// AMD and window support\n\tif (typeof define === \"function\") {\n\t\tdefine([], function () { return new Alertify(); });\n\t} else if (typeof global.alertify === \"undefined\") {\n\t\tglobal.alertify = new Alertify();\n\t}\n\n}(window));\n","\n\nimport { Directive, forwardRef, Attribute } from '@angular/core';\nimport { Validator, AbstractControl, NG_VALIDATORS } from '@angular/forms';\n\n\n\n@Directive({\n selector: '[validateEqual][formControlName],[validateEqual][formControl],[validateEqual][ngModel]',\n providers: [\n { provide: NG_VALIDATORS, useExisting: forwardRef(() => EqualValidator), multi: true }\n ]\n})\nexport class EqualValidator implements Validator {\n constructor( @Attribute('validateEqual') public validateEqual: string,\n @Attribute('reverse') public reverse: string) {\n }\n\n validate(c: AbstractControl): { [key: string]: any } {\n const other = c.root.get(this.validateEqual);\n\n if (!other) {\n return null;\n }\n\n return this.reverse === 'true' ? this.validateReverse(c, other) : this.validateNoReverse(c, other);\n }\n\n private validateNoReverse(c: AbstractControl, other: AbstractControl): { [key: string]: any } {\n return other.value === c.value ? null : { validateEqual: true };\n }\n\n private validateReverse(c: AbstractControl, other: AbstractControl): { [key: string]: any } {\n if (c.value === other.value) {\n if (other.errors) {\n delete other.errors.validateEqual;\n\n if (Object.keys(other.errors).length == 0) {\n other.setErrors(null);\n }\n }\n } else {\n other.setErrors({ validateEqual: true });\n }\n\n return null;\n }\n}\n","export class SalePreInvoiceForContractCheckInfoModel {\r\n id: number;\r\n currentYear: number;\r\n invoiceCode: number;\r\n contractCode: number;\r\n amount: number;\r\n bankAccountNumber: string;\r\n shabaNumber: string;\r\n sayadiNumber: string;\r\n checkNumber: string;\r\n bankName: number;\r\n receiptDate: Date;\r\n imageAddress: string;\r\n checkDescription: string;\r\n cMainCode: number;\r\n cSubCode: number;\r\n saleCustomerImageStatusId: number;\r\n customerName: string;\r\n depoName: string;\r\n notAcceptDescription: string;\r\n}\r\n\r\nexport class SalePreInvoiceForContractCheckInfoUpdateStatusModel {\r\n id: number;\r\n saleCustomerImageStatusId: number;\r\n notAcceptDescription: string;\r\n invoiceCode: number;\r\n}\r\n\r\nexport class FinalSalePreInvoiceForContractCheckInfoUpdateStatusModel {\r\n id: number;\r\n saleCustomerImageStatusId: number;\r\n notAcceptDescription: string;\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false,\n baseUrl: \"https://core.arsamtn.com:8070\", // Change this to the address of your backend API if different from frontend address\n // baseUrl: \"https://localhost:44352\",\n tokenUrl: null, // For IdentityServer/Authorization Server API. You can set to null if same as baseUrl\n loginUrl: '/login'\n};\n\n//export const environment = {\n// production: false,\n// baseUrl: null, // Change this to the address of your backend API if different from frontend address\n// tokenUrl: null, // For IdentityServer/Authorization Server API. You can set to null if same as baseUrl\n// loginUrl: '/login'\n//};\n\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'bill',\n templateUrl: './bill.component.html',\n styleUrls: ['./bill.component.scss'],\n animations: [fadeInOut]\n})\nexport class bill {\n}\n","
\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 { ImageFile } from './../models/ImageFile';\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, Subject, forkJoin, from } from 'rxjs';\r\nimport { mergeMap, tap } from 'rxjs/operators';\r\nimport { AuthService } from './auth.service';\r\nimport { User } from '../models/user.model';\r\nimport { Role } from '../models/role.model';\r\nimport { Permission, PermissionNames, PermissionValues } from '../models/permission.model';\r\nimport { MyAccountEndpoint } from './MyAccount-Endpoint.service';\r\nimport { WareHouseResult } from '../models/WareHouseResult.model';\r\nimport { Depos1 } from '../models/Depos1.model';\r\nimport { View_BarcodeInDepo } from '../models/View_BarcodeInDepo.model';\r\nimport { WareHouseKardexResult } from '../models/WareHouseKardexResult.model';\r\nimport { VMSalePriceProductInfoForSalePerInvoice } from '../models/VMSalePriceProductInfoForSalePerInvoice.model';\r\nimport { VMUpdateSaleSubReceipt } from '../models/VMUpdateSaleSubReceipt.model';\r\nimport { SaleReceipt } from '../models/SaleReceipts/SaleReceipt.model';\r\nimport { SaleNewContract } from '../models/SaleNewContract.model';\r\nimport { VMReportCustomerResult } from '../models/VMReportCustomerResult.model';\r\nimport { WareHouseKardexRemaindMajaziResult } from '../models/WareHouseKardexRemaindMajaziResult.model';\r\nimport { GetDealerSaleResult } from '../models/GetDealerSaleResult.model';\r\nimport { DepoAssignmentProduct } from '../models/DepoAssignmentProduct.model';\r\nimport { VMDepoRevertToDepoCustomers } from '../models/VMDepoRevertToDepoCustomers.model';\r\nimport { ReportAll } from '../models/ReportAll.model';\r\nimport { VMSalePriceProductInfoForSalePerInvoiceBack } from '../models/VMSalePriceProductInfoForSalePerInvoiceBack.model';\r\nimport { ReportCashier } from '../models/ReportCashier.model';\r\nimport { VMReportCashierResult } from '../models/VMReportCashierResult.model';\r\nimport { VMReportReciptCashierResult } from '../models/VMReportReciptCashierResult.model';\r\nimport { CashUser } from '../models/CashUser.model';\r\n\r\nexport type RolesChangedOperation = 'add' | 'delete' | 'modify';\r\nexport interface RolesChangedEventArg { roles: Role[] | string[]; operation: RolesChangedOperation; }\r\n\r\n@Injectable()\r\nexport class MyAccountService {\r\n public static readonly roleAddedOperation: RolesChangedOperation = 'add';\r\n public static readonly roleDeletedOperation: RolesChangedOperation = 'delete';\r\n public static readonly roleModifiedOperation: RolesChangedOperation = 'modify';\r\n public CMainCode: number;\r\n private _rolesChanged = new Subject();\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private myaccountEndpoint: MyAccountEndpoint) {\r\n\r\n }\r\n\r\n getDepos(ID: string) {\r\n return this.myaccountEndpoint.GetDepos(ID);\r\n }\r\n getDeposOwner(ID: string) {\r\n return this.myaccountEndpoint.GetDeposOwner(ID);\r\n }\r\n getDepoOwner(ID: string) {\r\n return this.myaccountEndpoint.GetDepoOwner(ID);\r\n }\r\n\r\n GetDepoTarazNew(year: number, depCode: string, PKind: number) {\r\n return this.myaccountEndpoint.GetDepoTarazNewEndPoint(year, depCode, PKind);\r\n }\r\n\r\n GetBarcodesProductCodeSelect(depoCode: string, ProductCode: string, activeYear: number) {\r\n return this.myaccountEndpoint.GetBarcodesProductCodeSelectEndPoint(depoCode, ProductCode, activeYear);\r\n }\r\n\r\n GetKardexProductSelect(year: number, depoCode: string, productCode: string) {\r\n return this.myaccountEndpoint.GetKardexProductSelectEndPoint(year, depoCode, productCode);\r\n }\r\n\r\n getSalePriceProductInfoForSalePerInvoice(Year: number, CmainCode: number, Pkind: number, ProductCode: string, ProductCount: number, DiscountValuePrice: number, DiscountValuePercent: number) {\r\n return this.myaccountEndpoint.getSalePriceProductInfoForSalePerInvoiceEndPoint(Year, CmainCode, Pkind, ProductCode, ProductCount, DiscountValuePrice, DiscountValuePercent);\r\n }\r\n getSalePriceProductInfoForSaleInvoiceBack(Year: number, CmainCode: number, DiscountDocumentId: number, SPICode: number, PartCode: number, DepoCode: number, DRTDFromAssignment: number, ProductCode: string, ProductCount: number, DiscountValuePrice: number, DiscountValuePercent: number) {\r\n return this.myaccountEndpoint.getSalePriceProductInfoForSaleInvoiceBackEndPoint(Year, CmainCode, DiscountDocumentId, SPICode, PartCode, DepoCode, DRTDFromAssignment, ProductCode, ProductCount, DiscountValuePrice, DiscountValuePercent);\r\n }\r\n\r\n GetContractForCheckAccept(Year: number, NCPartCode: number, NCCode: number) {\r\n return this.myaccountEndpoint.ContractForCheckAcceptEndPoint(Year, NCPartCode, NCCode);\r\n }\r\n\r\n GetReportCustomerSelect(year: number, partCode: number, depCode: string, cmainCode: number, csubCode: number, customerID: number, spiCode: number, fromDate?: Date, toDate?: Date) {\r\n return this.myaccountEndpoint.GetReportCustomerSelectEndPoint(year, partCode, depCode, cmainCode, csubCode, customerID, spiCode, fromDate, toDate);\r\n }\r\n\r\n GetContractsDetailsForRemindMajaziKardexProductSelect(Year: number, PartCode: number, DepoCode: number, ProductCode: string, NCCode: number) {\r\n return this.myaccountEndpoint.GetContractsDetailsForRemindMajaziKardexProductSelectEndPoint(Year, PartCode, DepoCode, ProductCode, NCCode);\r\n }\r\n\r\n GetDealerSaleResultsMethod(DCDealerCode?: string, fromDate?: string, toDate?: string) {\r\n return this.myaccountEndpoint.GetDealerSaleResultsMethodEndpoint(DCDealerCode, fromDate, toDate);\r\n }\r\n\r\n GetDepoAssignmentProductForCheckVoidContract(Year: number, NCPartCode: number, NCCode: number) {\r\n return this.myaccountEndpoint.GetDepoAssignmentProductForCheckVoidContractEndPoint(Year, NCPartCode, NCCode);\r\n }\r\n\r\n NewDepoRevertToDepoCustomer(rowsDepoRevertToDepoCustomer: VMDepoRevertToDepoCustomers) {\r\n return this.myaccountEndpoint.NewDepoRevertToDepoCustomerEndPoint(rowsDepoRevertToDepoCustomer);\r\n }\r\n\r\n CheckDepoAssignmentIsRevertSerial(Year: number, DepoCode: number, serial: string) {\r\n return this.myaccountEndpoint.CheckDepoAssignmentIsRevertSerialEndpoint(Year, DepoCode, serial);\r\n }\r\n\r\n GetAllReportCashier(year: number, partCode: number, CustomerCode: number, SubCustomerCode: number, fromDate?: string, toDate?: string, ncIsAccepted?: boolean, ncIsVoid?: boolean) {\r\n return this.myaccountEndpoint.GetAllReportCashierEndpoint(year, partCode, CustomerCode, SubCustomerCode, fromDate, toDate, ncIsAccepted, ncIsVoid);\r\n }\r\n\r\n GetCashUser(CMainCode: number) {\r\n return this.myaccountEndpoint.GetCashUserEndpoint(CMainCode);\r\n }\r\n\r\n GetCashUserById(id: string) {\r\n return this.myaccountEndpoint.GetCashUserByIdEndpoint(id);\r\n }\r\n\r\n\r\n}\r\n","\n\nexport class WareHouseResult {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(dcCode?: string, dcDesc?: string, dpuName?: string, sumInput?: number, sumOutput?: number, remanid?: number, RemPrice?: number, UnitPrice?: number, pPrice?: number, mojodiriyali?: number) {\n this.dcCode = dcCode;\n this.dcDesc = dcDesc;\n this.dpuName = dpuName;\n this.sumInput = sumInput;\n this.sumOutput = sumOutput;\n this.remanid = remanid;\n this.RemPrice = RemPrice;\n this.UnitPrice = UnitPrice;\n this.pPrice = pPrice;\n this.mojodiriyali = mojodiriyali;\n\n }\n public dcCode: string;\n public dcDesc: string;\n public dpuName: string;\n public sumInput: number;\n public sumOutput: number;\n public remanid: number;\n public RemPrice: number;\n public UnitPrice: number;\n public pPrice: number;\n public mojodiriyali: number;\n\n\n\n\n}\n","import { Injectable, ErrorHandler } from '@angular/core';\nimport { AlertService, MessageSeverity } from './services/alert.service';\n\n\n@Injectable()\nexport class AppErrorHandler extends ErrorHandler {\n\n // private alertService: AlertService;\n\n constructor() {\n super();\n }\n\n\n handleError(error: any) {\n // if (this.alertService == null) {\n // this.alertService = this.injector.get(AlertService);\n // }\n\n // this.alertService.showStickyMessage(\"Fatal Error!\", \"An unresolved error has occured. Please reload the page to correct this error\", MessageSeverity.warn);\n // this.alertService.showStickyMessage(\"Unhandled Error\", error.message || error, MessageSeverity.error, error);\n\n if (confirm('Fatal Error!\\nAn unresolved error has occured. Do you want to reload the page to correct this?\\n\\nError: ' + error.message)) {\n window.location.reload(true);\n }\n\n super.handleError(error);\n }\n}\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n\n@Component({\n selector: 'home',\n templateUrl: './home.component.html',\n styleUrls: ['./home.component.scss'],\n animations: [fadeInOut]\n})\nexport class HomeComponent {\n\n}\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 { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ConfigurationService } from '../configuration.service';\r\nimport { CustomerGradeModel } from '../../models/customer-grade.model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CustomerGradeService {\r\n baseUrl: string = \"/api/TblCustomerGrades/\";\r\n get CustomerGradeUrl() { return this.configurations.baseUrl + this.baseUrl }\r\n\r\n constructor(\r\n private configurations: ConfigurationService,\r\n private http: HttpClient) { }\r\n\r\n addCustomerGrade(customerGrade): Observable {\r\n return this.http.post(this.CustomerGradeUrl + \"add-customer-grade\", customerGrade);\r\n }\r\n}\r\n","
\r\n \r\n
\r\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'check-information-info',\n templateUrl: './check-information-info.component.html'\n})\nexport class CheckInformationInfoComponent {\n public loadingIndicator = true;\n public rows: any[] = [];\n public columns = [];\n}\n","import {VMSalePriceProductInfoForSalePerInvoice} from './VMSalePriceProductInfoForSalePerInvoice.model';\r\nimport {SerialProduct} from './SerialProduct.model';\r\n\r\nexport class DepoCode {\r\n public depCode: string;\r\n public dcDesc: string;\r\n public pPrice: number;\r\n public priceStore: number;\r\n public priceArsam: number;\r\n public overhead: number;\r\n public remanid: number;\r\n public idGroup: number;\r\n public count: number;\r\n public priceDiscount: number;\r\n public totalAmount: number;\r\n public priceStoreAll: number;\r\n public priceArsamAll: number;\r\n public overheadAll: number;\r\n public pPriceAll: number;\r\n public dcBrand: string;\r\n public dcSupliesCode: string;\r\n public depBarCode: string;\r\n public pPriceCode: number;\r\n public moneyCode: number;\r\n public comdStore: number;\r\n public comdArsam: number;\r\n public comdTStore: number;\r\n public comdTArsam: number;\r\n public percentageoCom: number;\r\n public percentDiscount: number;\r\n public dcIntegratedSerial: string;\r\n public vmSalePriceProductInfoForSalePerInvoice: VMSalePriceProductInfoForSalePerInvoice;\r\n public totaltax: number;\r\n public scanSerial: SerialProduct[] = [];\r\n\r\n\r\n public selected: string;\r\n\r\n}\r\n","export class SaleSubReceipt {\n rSID: number;\n rsPartCode: number;\n rsReceiptKind: number;\n rsYear: number;\n rsNum: number;\n rsKind: number;\n rsPrice: number;\n rsDate: string;\n rsDes: string;\n rSerial: string;\n rsBankAccountCode: number;\n rsBankType: number;\n rsShobeCode: number;\n rSBankTrader: number;\n salePriceKindCode: number;\n CertificateInspection: boolean;\n saleReceiptsId: number;\n dueDate: string;\n sayadiNumber: number;\n}\n","export class ConfirmMessageModel {\r\n statusId: number;\r\n confirmType: number;\r\n title: string;\r\n text: string;\r\n btnAccept: string;\r\n btnNotAccept: string;\r\n}\r\n","export class SaleLoadingCommandBarCodeObject {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(Lcbyear?: number, Lcbnum?: number, Lcbbarcode?: string, LcbproductCode?: string) {\n this.Lcbyear = Lcbyear;\n this.Lcbnum = Lcbnum;\n this.Lcbbarcode = Lcbbarcode;\n this.LcbproductCode = LcbproductCode;\n\n }\n public Lcbyear: number;\n public Lcbnum: number;\n public Lcbbarcode: string;\n public LcbproductCode: string;\n}\n","import { Injectable } from '@angular/core';\r\nimport { forkJoin, Observable } from 'rxjs';\r\nimport { AccountEndpoint } from './account-endpoint.service';\r\nimport { SalecustomerEndpoint } from './salecustomer-endpoint.service';\r\nimport { SaleCustomer } from '../models/SaleCustomer.model';\r\nimport { group } from '../models/group.model';\r\n\r\n@Injectable()\r\nexport class SaleCustomerService {\r\n\r\n\r\n\r\n constructor(\r\n private SaleCustomer: SalecustomerEndpoint,\r\n private accountEndpoint: AccountEndpoint) { }\r\n\r\n getSaleCustomer(CMainCode?: number) {\r\n return forkJoin(\r\n this.SaleCustomer.getSaleCustomerProfileEndpoint(CMainCode),\r\n this.accountEndpoint.getGroupsEndpoint());\r\n }\r\n\r\n getAllSaleCustomer(CMainCode?: number) {\r\n return forkJoin(\r\n this.SaleCustomer.getAllSaleCustomerProfileEndpoint(CMainCode),\r\n this.accountEndpoint.getGroupsEndpoint());\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Component, OnInit, OnDestroy, Input, TemplateRef, ViewChild } from '@angular/core';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\n\nimport { AuthService } from '../../services/auth.service';\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\nimport { AppTranslationService } from '../../services/app-translation.service';\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\nimport { Utilities } from '../../services/utilities';\n\n\n\n@Component({\n selector: 'todo-demo',\n templateUrl: './todo-demo.component.html',\n styleUrls: ['./todo-demo.component.scss']\n})\nexport class TodoDemoComponent implements OnInit, OnDestroy {\n public static readonly DBKeyTodoDemo = 'todo-demo.todo_list';\n\n rows = [];\n rowsCache = [];\n columns = [];\n editing = {};\n taskEdit: any = {};\n isDataLoaded = false;\n loadingIndicator = true;\n formResetToggle = true;\n _currentUserId: string;\n _hideCompletedTasks = false;\n\n\n get currentUserId() {\n if (this.authService.currentUser) {\n this._currentUserId = this.authService.currentUser.id;\n }\n\n return this._currentUserId;\n }\n\n\n set hideCompletedTasks(value: boolean) {\n\n if (value) {\n this.rows = this.rowsCache.filter(r => !r.completed);\n } else {\n this.rows = [...this.rowsCache];\n }\n\n\n this._hideCompletedTasks = value;\n }\n\n get hideCompletedTasks() {\n return this._hideCompletedTasks;\n }\n\n\n @Input()\n verticalScrollbar = false;\n\n\n @ViewChild('statusHeaderTemplate', { static: true })\n statusHeaderTemplate: TemplateRef;\n\n @ViewChild('statusTemplate', { static: true })\n statusTemplate: TemplateRef;\n\n @ViewChild('nameTemplate', { static: true })\n nameTemplate: TemplateRef;\n\n @ViewChild('descriptionTemplate', { static: true })\n descriptionTemplate: TemplateRef;\n\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n\n @ViewChild('editorModal', { static: true })\n editorModal: ModalDirective;\n\n\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private localStorage: LocalStoreManager, private authService: AuthService) {\n }\n\n\n\n ngOnInit() {\n this.loadingIndicator = true;\n\n this.fetch((data) => {\n this.refreshDataIndexes(data);\n this.rows = data;\n this.rowsCache = [...data];\n this.isDataLoaded = true;\n\n setTimeout(() => { this.loadingIndicator = false; }, 1500);\n });\n\n\n const gT = (key: string) => this.translationService.getTranslation(key);\n\n this.columns = [\n { prop: 'completed', name: '', width: 30, headerTemplate: this.statusHeaderTemplate, cellTemplate: this.statusTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\n { prop: 'name', name: gT('todoDemo.management.Task'), cellTemplate: this.nameTemplate, width: 200 },\n { prop: 'description', name: gT('todoDemo.management.Description'), cellTemplate: this.descriptionTemplate, width: 500 },\n { name: '', width: 80, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\n ];\n }\n\n ngOnDestroy() {\n this.saveToDisk();\n }\n\n\n\n fetch(cb) {\n let data = this.getFromDisk();\n\n if (data == null) {\n setTimeout(() => {\n\n data = this.getFromDisk();\n\n if (data == null) {\n data = [\n { completed: true, important: true, name: 'Create visual studio extension', description: 'Create a visual studio VSIX extension package that will add this project as an aspnet-core project template' },\n { completed: false, important: true, name: 'Do a quick how-to writeup', description: '' },\n {\n completed: false, important: false, name: 'Create aspnet-core/Angular8 tutorials based on this project', description: 'Create tutorials (blog/video/youtube) on how to build applications (full stack)' +\n ' using aspnet-core/Angular8. The tutorial will focus on getting productive with the technology right away rather than the details on how and why they work so audience can get onboard quickly.'\n },\n ];\n }\n\n cb(data);\n }, 1000);\n } else {\n cb(data);\n }\n }\n\n\n refreshDataIndexes(data) {\n let index = 0;\n\n for (const i of data) {\n i.$$index = index++;\n }\n }\n\n\n onSearchChanged(value: string) {\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.name, r.description) || value == 'important' && r.important || value == 'not important' && !r.important);\n }\n\n\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n\n\n addTask() {\n this.formResetToggle = false;\n\n setTimeout(() => {\n this.formResetToggle = true;\n\n this.taskEdit = {};\n this.editorModal.show();\n });\n }\n\n save() {\n this.rowsCache.splice(0, 0, this.taskEdit);\n this.rows.splice(0, 0, this.taskEdit);\n this.refreshDataIndexes(this.rowsCache);\n this.rows = [...this.rows];\n\n this.saveToDisk();\n this.editorModal.hide();\n }\n\n\n updateValue(event, cell, cellValue, row) {\n this.editing[row.$$index + '-' + cell] = false;\n this.rows[row.$$index][cell] = event.target.value;\n this.rows = [...this.rows];\n\n this.saveToDisk();\n }\n\n\n delete(row) {\n this.alertService.showDialog('Are you sure you want to delete the task?', DialogType.confirm, () => this.deleteHelper(row));\n }\n\n\n deleteHelper(row) {\n this.rowsCache = this.rowsCache.filter(item => item !== row);\n this.rows = this.rows.filter(item => item !== row);\n\n this.saveToDisk();\n }\n\n getFromDisk() {\n return this.localStorage.getDataObject(`${TodoDemoComponent.DBKeyTodoDemo}:${this.currentUserId}`);\n }\n\n saveToDisk() {\n if (this.isDataLoaded) {\n this.localStorage.saveSyncedSessionData(this.rowsCache, `${TodoDemoComponent.DBKeyTodoDemo}:${this.currentUserId}`);\n }\n }\n}\n","
\n \n \n \n\n \n \n \n\n \n
\n \n \n
\n
\n\n \n \n {{value}}\n \n \n \n\n \n \n {{value}}\n \n \n \n\n\n \n \n \n \n \n \n \n\n\n\n\n\n
\n
\n
\n
\n

{{'todoDemo.editor.NewTask' | translate}}

\n \n
\n
\n
\n\n\n
\n \n
\n \n \n \n {{'todoDemo.editor.TaskNameRequired' | translate}}\n \n
\n
\n\n
\n \n
\n \n
\n
\n\n
\n \n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n
\n
\n\n\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n","\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n جستجو\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
قرارداد {{row.nccode}}
عملیات \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
تاریخ {{row.ncpdate}}
مشتری {{row.cName}}
تایید \r\n {{row.statusString}}\r\n
وضعیت جدید \r\n {{row.statusName}}\r\n
مبلغ قرارداد {{row.sumPrice | number}}
تعداد قرارداد {{row.sumContract}}
مبلغ حواله {{row.sumAssPrice | number}}
تعداد حواله {{row.sumAssignment}}
وضعیت قرارداد {{row.ncStatusString}}
داده با مشخصات وارد شده یافت نگردید.\"{{input.value}}\"
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
صورتحساب فروش
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
شعبه فروش شهرستانها
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
فروشنده: رضایی-شرکت آرسام تجارت نیکو به نمایندگی:شهرستان
\r\n
\r\n
\r\n
شماره قرارداد : 214
\r\n
\r\n
\r\n
\r\n
\r\n
آدرس: تهران-خیابان ولیعصر-روبه روی سازمان صدا و سیما - کوچه شادی -پلاک 10
\r\n
\r\n
\r\n
تاریخ :1399/03/08
\r\n
\r\n
\r\n
\r\n
\r\n
تلفن:021-22653679
\r\n
\r\n
\r\n
کد اقتصادی:411476319377
\r\n
\r\n\r\n
\r\n
کد پستی :1966763311
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
خریدار:کد142نام:تاسیسات دماساز(آرش قلی زاده)
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
آدرس:گلستان-گنبدکاووس-خیابان خیام جنوبی-نبش گلشن-پلاک 247
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
تلفن:021-22653679
\r\n
\r\n
\r\n
کد اقتصادی/ملی:2031773046
\r\n
\r\n\r\n
\r\n
کد پستی :4971877983
\r\n
\r\n\r\n
\r\n
همراه :09112765495
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
بهای فروش کالاها به شرح ذیل می باشد:
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n {{value}}\r\n \r\n\r\n
\r\n
{{'Contract.DownloadRegistrationWizard.Considerations' | 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 {{value}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n >\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ردیف {{ i + 1}}
عملیات \r\n
\r\n \r\n
\r\n
کد کالا {{row.pCode}}
نام کالا {{row.productName}}
تعداد قرارداد \r\n {{row.contractRemind}}\r\n
تعداد سفارش {{row.orderCount}}
مانده سفارش {{row.osCount}}
مانده سیستمی {{row.remind}}
مانده مجاز {{row.rmindMajazi}}
تعداد \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
ردیف {{ i + 1}}
کد کالا {{row.ssppCode}}
بارکد کالا {{row.barCode}}
نام کالا {{row.productName}}
تعداد سفارش {{row.sspCount}}
تعداد ارسالی {{row.sspSendCount}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n

حواله

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'InvoiceSale.editor.StoreHavaleh' | translate:editingCName}}
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.NumberOrder' | translate:NumberOrder}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.NumberCuntract' | translate:NumberCuntract}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.DateSend' | translate:DateSend}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.NumberBargiei' | translate:NumberBargiei}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.NumberPreInvoic' | translate:NumberPreInvoic}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.CSubCode' | translate:CSubCode}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.NumberHavaleh' | translate:NumberHavaleh}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.StoreName' | translate:StoreName}}
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.OutputGoods' | translate:OutputGoods}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.CodemeliHavaleh' | translate:CodemeliHavaleh}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.OutputAddress' | translate:OutputAddress}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.OutputCar' | translate:OutputCar}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.OutputNumberPelak' | translate:OutputNumberPelak}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.OutputDriver' | translate:OutputDriver}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.OutputDetail' | translate:OutputDetail}}
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
{{'InvoiceSale.editor.EmzaForosh' | translate}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.EmzaDriver' | translate}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.EmzaTahvilgirandeh' | 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 {{value}}\r\n \r\n \r\n {{group}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n =\"\r\n

خودرو

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

راننده

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

رسید انبار

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

گزارش تسویه

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

کاردکس قرارداد های در حال سفارش کالا - {{showkardexEditor.productcode}}

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

تراز انبار

\r\n \r\n
\r\n
\r\n \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 { ViewChild, OnInit, TemplateRef, Input, ElementRef, ViewChildren, AfterViewInit, Output, EventEmitter } from '@angular/core';\r\nimport { Component } from '@angular/core';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { SaleNewContract } from '../../models/SaleNewContract.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ContractProduct } from '../../models/ContractProduct.model';\r\nimport { SaleOrders } from '../../models/SaleOrders.model';\r\nimport { WizardComponent, TabDirective } from 'ngx-wizard';\r\nimport { SaleSendProduct } from '../../models/SaleSendProduct.model';\r\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\r\nimport { PubCar } from '../../models/PubCar.model';\r\nimport { carInfoComponent } from './car-info.component';\r\nimport { driverInfoComponent } from './driver-info.component';\r\nimport { PubDrivers } from '../../models/PubDrivers.model';\r\nimport { SaleCustomerService } from '../../services/SaleCustomer.service';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { SaleSubOrders } from '../../models/SaleSubOrders.model';\r\nimport { SaleSubSendProduct } from '../../models/SaleSubSendProduct.model';\r\nimport { SaleLoadingCommand } from '../../models/SaleLoadingCommand.model';\r\nimport { SaleSubLoadingCommands } from '../../models/SaleSubLoadingCommands.model';\r\nimport { SaleLoadingSelcetForScanners } from '../../models/SaleLoadingSelcetForScanners.model';\r\nimport { Warning } from '../../models/Warning.model';\r\nimport { SaleLoadingCommandBarCode } from '../../models/SaleLoadingCommandBarCode.model';\r\nimport { SerialProduct } from '../../models/SerialProduct.model';\r\nimport { VMSelectSubOrder } from '../../models/VMSelectSubOrder.model';\r\nimport { VMSaleLoading } from '../../models/VMSaleLoading.model';\r\nimport { VMSubSendProduct } from '../../models/VMSubSendProduct.model';\r\nimport { LoginComponent } from '../login/login.component';\r\nimport { DepoAssignmentProduct } from '../../models/DepoAssignmentProduct.model';\r\nimport { DepoAssignmentProductNumberLoading } from '../../models/DepoAssignmentProductNumberLoading.model';\r\nimport { DepoAssignmentProductDetail } from '../../models/DepoAssignmentProductDetail.model';\r\nimport { printdepoComponent } from './print/print-depo.component';\r\nimport { Router } from '@angular/router';\r\nimport { VMDepoAssignmentProductDetailSelectForUpdate } from '../../models/VMDepoAssignmentProductDetailSelectForUpdate.model';\r\nimport { remindWithVouchers } from '../../models/remindWithVouchers.model';\r\nimport { SettlementSaveinfocomponent } from './SettlementSave-info.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Depos1 } from '../../models/Depos1.model';\r\nimport { DepoAssignmentProductBarCode } from '../../models/DepoAssignmentProductBarCode.model';\r\nimport { SaleInvoice } from '../../models/SaleInvoice.model';\r\nimport { SaleInvoiceDetail } from '../../models/SaleInvoiceDetail.model';\r\nimport { SaleContractToInvoiceSelectResult } from '../../models/SaleContractToInvoiceSelectResult.model';\r\nimport { billInfoComponent } from './bill-info.component';\r\nimport { VMSelectSubOrder_Order } from '../../models/VMSelectSubOrder_Order.model';\r\nimport { VMSaleSubOrders_BarCode } from '../../models/VMSaleSubOrders_BarCode.model';\r\nimport { VMSelectSaleSubOrder_BarCode } from '../../models/VMSelectSaleSubOrder_BarCode.model';\r\nimport { VMSaleSubSendProduct_BarCode } from '../../models/VMSaleSubSendProduct_BarCode.model';\r\nimport { VMSelectSaleSubSendProduct_BarCode } from '../../models/VMSelectSaleSubSendProduct_BarCode.model';\r\nimport { VMSaleSubLoadingCommands_BarCode } from '../../models/VMSaleSubLoadingCommands_BarCode.model';\r\nimport { VMSelectSaleSubLoadingCommand_BarCode } from '../../models/VMSelectSaleSubLoadingCommand_BarCode.model';\r\nimport { VMDepoAssignmentProductDetail_BarCode } from '../../models/VMDepoAssignmentProductDetail_BarCode.model';\r\nimport { VMSelectDepoAssignmentProductDetail_BarCode } from '../../models/VMSelectDepoAssignmentProductDetail_BarCode.model';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { WarehouseStoreInfoKardexRemaindMajaziComponent } from './warehousestore-info-kardex-remaind-majazi.component';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { ColorSettingsService } from '../../services/color-settings';\r\nimport { SelectionType } from '@swimlane/ngx-datatable';\r\nimport { CashDeskService } from '../../services/cash-desk-service/cash-desk.service';\r\nimport { CheckoutCashDeskModel } from '../../models/CashDesk/checkout-cash-desks.model';\r\nimport { ConfirmMessageModel } from '../../models/utilities/confirm-message.model';\r\nimport { ConfirmMessageEnum } from '../../enums/confirm-message.enum';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { SaleClosingManagementService } from '../../services/base-services/sale-closing-management.service';\r\n\r\n@Component({\r\n selector: 'show-contract',\r\n templateUrl: './show-contract.component.html',\r\n styleUrls: ['./show-contract.component.scss'],\r\n providers: [DatePipe]\r\n})\r\n\r\nexport class showcontractcomponent implements OnInit {\r\n SelectionType = SelectionType;\r\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n public checkoutCashDeskInDate: CheckoutCashDeskModel[] = [];\r\n public displayedColumns: string[] = ['nccode', 'actions', 'ncpdate', 'cName', 'statusString', 'statusName', 'sumPrice', 'sumContract', 'sumAssPrice', 'sumAssignment', 'ncStatusString'];\r\n public customerContractList: MatTableDataSource;\r\n //public displayedOrderColumns: string[] = ['index', 'actions', 'pCode', 'barCode', 'productName', 'contractRemind', 'orderCount', 'osCount', 'remind', 'rmindMajazi', 'count'];\r\n public displayedOrderColumns: string[] = ['index', 'actions', 'pCode', 'productName', 'contractRemind', 'orderCount', 'osCount', 'remind', 'rmindMajazi', 'count'];\r\n public customerOrderContractList: MatTableDataSource;\r\n public displayedSendOrderColumns: string[] = ['index', 'ssppCode', 'barCode', 'productName', 'sspCount', 'sspSendCount'];\r\n public customerSendOrderContractList: MatTableDataSource;\r\n public checkoutConfirm = false;\r\n isLoading: boolean;\r\n issaleorder: boolean;\r\n serialLoad: boolean;\r\n DelayLoad: boolean;\r\n isInputTxtKeyNumber: boolean;\r\n group = '';\r\n isViewOnly = false;\r\n //myDate = new Date();\r\n datediffrent: number;\r\n ValidAccept: boolean;\r\n public isSavingAssignDepo: boolean;\r\n public isSaving = false;\r\n public dateObject: string;\r\n public isEditMode = true;\r\n editingCName: { name: string };\r\n NumberLoading: { name: string };\r\n NumberOrder: { name: string };\r\n NumberBargiei: { name: string };\r\n NumberHavaleh: { name: string };\r\n StoreName: { name: string };\r\n DateSend: { name: string };\r\n NumberCuntract: { name: string };\r\n NumberPreInvoic: { name: string };\r\n CSubCode: { name: string };\r\n OutputGoods: { name: string };\r\n CodemeliHavaleh: { name: string };\r\n OutputAddress: { name: string };\r\n OutputCar: { name: string };\r\n\r\n OutputNumberPelak: { name: string };\r\n OutputDriver: { name: string };\r\n OutputDetail: { name: string };\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n rowsCache: SaleNewContract[] = [];\r\n rowsCacheProduct: ContractProduct[] = [];\r\n SerialProductObj: SerialProduct[] = [];\r\n Allserial: SerialProduct[] = [];\r\n ScanSerial: SerialProduct[] = [];\r\n public isError = false;\r\n rows: SaleNewContract[] = [];\r\n rowsProduct: ContractProduct[] = [];\r\n rowsNewProduct: VMSelectSubOrder[] = [];\r\n rowsNewProduct_Order: VMSelectSubOrder[] = [];\r\n rowsNewProductCash: VMSelectSubOrder[] = [];\r\n rowsSubSendProduct: VMSubSendProduct[] = [];\r\n public VMSelectSubOrder_Order: VMSelectSubOrder_Order = new VMSelectSubOrder_Order();\r\n\r\n rowsDepoAssignmentProductDetailSelectForUpdate: VMDepoAssignmentProductDetailSelectForUpdate[] = [];\r\n rowsDepoAssignmentProductDetailSelectForUpdateCash: VMDepoAssignmentProductDetailSelectForUpdate[] = [];\r\n\r\n\r\n rowsSubSendProductCash: VMSubSendProduct[] = [];\r\n\r\n rowsSerail: SerialProduct[] = [];\r\n rowsSerailCash: SerialProduct[] = [];\r\n\r\n\r\n rowsSeraillast: SaleLoadingCommandBarCode[] = [];\r\n rowsSeraillastCash: SaleLoadingCommandBarCode[] = [];\r\n\r\n\r\n rowsSubProduct: SaleSubLoadingCommands[] = [];\r\n rowsSubProductChash: SaleSubLoadingCommands[] = [];\r\n rowsSubReportLoading: VMSaleLoading[] = [];\r\n rowsSubReportLoadingCash: VMSaleLoading[] = [];\r\n public formResetToggle = true;\r\n columns: any[] = [];\r\n columnsDepoAssignment: any[] = [];\r\n public Depocodenew: string;\r\n columnsSerial: any[] = [];\r\n columnsSerialLast: any[] = [];\r\n //SerialCode: string[] = [];\r\n columnsSendProduct: any[] = [];\r\n columnsConteract: any[] = [];\r\n columnsSubproduct: any[] = [];\r\n columnsSaleLoading: any[] = [];\r\n columnsLastSubProduct: any[] = [];\r\n selected = [];\r\n loadingIndicator: boolean;\r\n load: boolean;\r\n ViewResid: boolean;\r\n ViewContract = false;\r\n PrintResid: boolean;\r\n DepoAssignment: boolean;\r\n public LastLoad: boolean;\r\n isAllCont: boolean;\r\n isAllContract: boolean = true;\r\n SaleNewContractObject: SaleNewContract;\r\n editedPreInvoice: SaleNewContract;\r\n sourcePreInvoice: SaleNewContract;\r\n public con: SaleNewContract[] = [];\r\n public conrowsSubProduct: SaleSubLoadingCommands[] = [];\r\n public allDepos: Depos1[] = [];\r\n\r\n public alldetail: SaleInvoiceDetail[] = [];\r\n public connew: VMSaleLoading[] = [];\r\n ncdatestring: string;\r\n nccodeget: number;\r\n LoadNumbertxt: number;\r\n LoadPDate: string;\r\n public Pelak: string;\r\n public Drivername: string;\r\n uniqueId = '';\r\n SaleCustomer = '';\r\n CanManageCustomer = false;\r\n LCNumberSendProduct: number;\r\n public SaleOrdersObj: SaleOrders = new SaleOrders();\r\n public objwarning: Warning = new Warning();\r\n public SaleSubOrdersObj: SaleSubOrders = new SaleSubOrders();\r\n public SaleInvoiceObj: SaleInvoice = new SaleInvoice();\r\n public SaleInvoiceDetailModel: SaleInvoiceDetail;\r\n public SaleSendProduct: SaleSendProduct = new SaleSendProduct();\r\n public SaleSubSendProductObj: SaleSubSendProduct = new SaleSubSendProduct();\r\n\r\n public SaleLoadingCommandObj: SaleLoadingCommand = new SaleLoadingCommand();\r\n public SaleSubLoadingCommandObj: SaleSubLoadingCommands = new SaleSubLoadingCommands();\r\n public BarCodeObj: SaleLoadingCommandBarCode = new SaleLoadingCommandBarCode(); F\r\n public DepoAssignmentProductObj: DepoAssignmentProduct = new DepoAssignmentProduct();\r\n public DepoAssignmentProductNumberLoadingObj: DepoAssignmentProductNumberLoading = new DepoAssignmentProductNumberLoading();\r\n public DepoAssignmentProductDetailObj: DepoAssignmentProductDetail = new DepoAssignmentProductDetail();\r\n public DepoAssignmentProductBarCodeobj: DepoAssignmentProductBarCode = new DepoAssignmentProductBarCode();\r\n public rowsSaleSubOrders_BarCode: VMSaleSubOrders_BarCode[] = [];\r\n public VMSelectSaleSubOrder_BarCode: VMSelectSaleSubOrder_BarCode = new VMSelectSaleSubOrder_BarCode();\r\n public rowsSaleSubSendProduct_BarCode: VMSaleSubSendProduct_BarCode[] = [];\r\n public VMSelectSaleSubSendProduct_BarCode: VMSelectSaleSubSendProduct_BarCode = new VMSelectSaleSubSendProduct_BarCode();\r\n public rowsSaleSubLoadingCommands_BarCode: VMSaleSubLoadingCommands_BarCode[] = [];\r\n public VMSelectSaleSubLoadingCommands_BarCode: VMSelectSaleSubLoadingCommand_BarCode = new VMSelectSaleSubLoadingCommand_BarCode();\r\n public rowsDepoAssignmentProductDetail_BarCode: VMDepoAssignmentProductDetail_BarCode[] = [];\r\n public VMSelectDepoAssignmentProductDetail_BarCode: VMSelectDepoAssignmentProductDetail_BarCode = new VMSelectDepoAssignmentProductDetail_BarCode();\r\n\r\n public allcar: PubCar[] = [];\r\n public alldriver: PubDrivers[] = [];\r\n public rowsCustomer: SaleCustomer[] = [];\r\n public TabDrictiveobj: TabDirective[] = [];\r\n public cName: string;\r\n public spiSubCustomerCode: number;\r\n public depoName: string;\r\n public cPostalCode: string;\r\n public cAddress: string;\r\n public cPublicCode: string;\r\n public nameOstan: string;\r\n public SerialNUmber: string;\r\n public StatusSerial: string;\r\n public StatusSerialText: string = \"\";\r\n public nameCity: string;\r\n public spdate: string;\r\n public contractCode: number;\r\n public spiCode: number;\r\n public isInstallments: boolean;\r\n public contractyear: number;\r\n public depoCode: number;\r\n public CarCode: number = 0;\r\n public CarCode1: number = 0;\r\n public DriverCode: number = 0;\r\n public LoadNumber: string;\r\n public Cmain: number;\r\n public Csub: number;\r\n PubCarobj: PubCar;\r\n ncyear: number;\r\n serverDate: Date;\r\n ncPartCode: number;\r\n ncCode: number;\r\n TypeModel: number;\r\n SaleNewContractProduct: ContractProduct;\r\n editedContractProduct: ContractProduct;\r\n sourceContractProduct: ContractProduct;\r\n editingFullName: { name: string };\r\n editingCUser: { name: string };\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public IsAssignment = false;\r\n public insertOrderConfirm = false;\r\n @Input() isGeneralEditor = false;\r\n rowsPreInvoice: PreInvoice[] = [];\r\n public deletedOrderConfirm = false;\r\n IsExistBarcodes = false;\r\n @ViewChild('editorModalprice', { static: false })\r\n editorModalprice: ModalDirective;\r\n\r\n @ViewChild('priceEditor', { static: false })\r\n priceEditor: carInfoComponent;\r\n\r\n @ViewChild('wizardobj', { static: false })\r\n wizardobj: WizardComponent;\r\n\r\n @ViewChild('actionsTemplateload', { static: false })\r\n actionsTemplateload: TemplateRef;\r\n\r\n @ViewChild('tabsabtsefarsh', { static: false })\r\n tabsabtsefarsh: TabDirective;\r\n\r\n @ViewChild('tabSendProduct', { static: false })\r\n tabSendProduct: TabDirective;\r\n\r\n @ViewChild('tabSendLoding', { static: false })\r\n tabSendLoding: TabDirective;\r\n\r\n @ViewChild('tabsendHavaleh', { static: false })\r\n tabsendHavaleh: TabDirective;\r\n\r\n @ViewChild('editorModalDriver', { static: false })\r\n editorModalDriver: ModalDirective;\r\n\r\n\r\n @ViewChild('editorResidDepo', { static: false })\r\n editorResidDepo: ModalDirective;\r\n\r\n @ViewChild('driverEditor', { static: false })\r\n driverEditor: driverInfoComponent;\r\n\r\n\r\n @ViewChild('residEditor', { static: false })\r\n residEditor: printdepoComponent;\r\n\r\n @ViewChild('LoginComponentEditor', { static: false })\r\n LoginComponentEditor: LoginComponent;\r\n\r\n @ViewChild('billEditor', { static: false })\r\n billEditor: billInfoComponent;\r\n\r\n @ViewChild('txtserial', { static: false }) searchElement: ElementRef;\r\n\r\n @ViewChild('editorModalSettlementSave', { static: false })\r\n editorModalSettlementSave: ModalDirective;\r\n\r\n @ViewChild('SettlementSave', { static: false })\r\n SettlementSave: SettlementSaveinfocomponent;\r\n\r\n\r\n @ViewChild('editorModalBill', { static: false })\r\n editorModalBill: ModalDirective;\r\n\r\n @ViewChild('editorModalShowWarehouse', { static: false })\r\n editorModalShowWarehouse: ModalDirective;\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('CNameTemplate', { static: true })\r\n cPublicCodeTemplate: TemplateRef;\r\n\r\n @ViewChild('rolesTemplate', { static: true })\r\n rolesTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('nccode', { static: false })\r\n public nccode;\r\n\r\n @ViewChild('nckindCode', { static: false })\r\n public nckindCode;\r\n\r\n @ViewChild('ncpdate', { static: false })\r\n public ncpdate;\r\n\r\n @ViewChild('CMainCodeTemplate', { static: true })\r\n CMainCodeTemplate: TemplateRef;\r\n\r\n @ViewChild('contractType', { static: true })\r\n contractType: TemplateRef;\r\n\r\n @ViewChild('nccustomerCode', { static: true })\r\n nccustomerCode: TemplateRef;\r\n\r\n @ViewChild('CarEditor', { static: true })\r\n CarEditor: carInfoComponent;\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n @ViewChild('actionsTemplateSerial', { static: true })\r\n actionsTemplateSerial: TemplateRef;\r\n\r\n\r\n\r\n\r\n constructor(private alertService: AlertService,\r\n private saleClosingManagementService: SaleClosingManagementService,\r\n private SaleCustomerService: SaleCustomerService,\r\n private accountService: AccountService,\r\n private translationService: AppTranslationService,\r\n private authService: AuthService,\r\n public router: Router,\r\n private datePipe: DatePipe,\r\n private myCompanyService: MyCompanyService,\r\n private myaccountService: MyAccountService,\r\n private colorSettingsService: ColorSettingsService,\r\n private cashDeskService: CashDeskService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n this.LoadNumber = \"0\";\r\n this.DelayLoad = true;\r\n this.SaleSendProduct.Spfor = \"آدرس مشتری\";\r\n this.SaleSendProduct.SpAdress = \"درب فروشگاه\";\r\n this.SaleSendProduct.SmsNumber = \"0\";\r\n //var yourDate = this.serverDate;\r\n //this.date = this.datePipe.transform(yourDate.setDate(yourDate.getDate() + 1), 'yyyy-MM-dd');\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n { prop: 'index', name: gT('Contract.management.Index'), width: 60, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'ncpYear', name: gT('Contract.wizard1.Year'), width: 120 },\r\n { prop: 'ncpCode', name: gT('Contract.wizard1.Code'), width: 120 },\r\n { prop: 'productName', name: gT('Contract.wizard1.Productname'), width: 280 },\r\n { prop: 'ncpProductCode', name: gT('Contract.wizard1.ProductCode'), width: 120 },\r\n { prop: 'barCode', name: gT('Contract.wizard1.Barcode'), width: 120 },\r\n //{ prop: 'ncpAmount', name: gT('مقدار'), width: 120 },\r\n //{ prop: 'ncpFromDeliveryDate', name: gT('زمان شروع تحویل'), width: 120 },\r\n //{ prop: 'ncpToDeliveryDate', name: gT('زمان پایان تحویل'), width: 120 },\r\n //{ prop: 'ncpTolerancePercent', name: gT('درصد تلرانس'), width: 120 }\r\n ];\r\n\r\n this.columnsDepoAssignment = [\r\n { prop: 'index', name: gT('Contract.management.Index'), width: 60, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'dapddcCode', name: gT('Contract.RemittanceWizard.ProductCode'), width: 250 },\r\n //{ prop: 'barCode', name: gT('بارکد'), width: 350 },\r\n { prop: 'dcDesc', name: gT('Contract.RemittanceWizard.Productname'), width: 380 },\r\n { prop: 'dapdassCount', name: gT('Contract.RemittanceWizard.Number'), width: 200, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'dpuName', name: gT('Contract.RemittanceWizard.NumberType'), width: 200 },\r\n { prop: 'dapdDesc', name: gT('Contract.RemittanceWizard.Description'), width: 200 }\r\n ];\r\n this.columnsSendProduct = [\r\n {\r\n prop: 'selected',\r\n name: gT('Contract.management.Select'),\r\n sortable: false,\r\n canAutoResize: false,\r\n draggable: false,\r\n resizable: false,\r\n headerCheckboxable: true,\r\n checkboxable: true,\r\n width: 70\r\n },\r\n { prop: 'index', name: gT('Contract.management.Index'), width: 60, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'lscdccode', name: gT('Contract.DownloadRegistrationWizard.ProductCode'), width: 180 },\r\n { prop: 'lscdesc', name: gT('Contract.DownloadRegistrationWizard.ProductName'), width: 400 },\r\n { prop: 'lsccountLoading', name: gT('Contract.DownloadRegistrationWizard.NumberDownloadOrders'), width: 150 },\r\n { prop: 'lscloadingOrderCount', name: gT('Contract.DownloadRegistrationWizard.NumberDownloadRecords'), width: 150 }\r\n ];\r\n this.columnsSerial = [\r\n {\r\n prop: 'selected',\r\n name: gT('Contract.management.Select'),\r\n sortable: false,\r\n canAutoResize: false,\r\n draggable: false,\r\n resizable: false,\r\n headerCheckboxable: true,\r\n checkboxable: true,\r\n width: 70\r\n },\r\n { prop: 'index', name: gT('Contract.management.Index'), width: 200, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'serialCode', name: gT('Contract.DownloadRegistrationWizard.Barcode'), width: 200 },\r\n ];\r\n this.columnsSerialLast = [\r\n { prop: 'index', name: gT('Contract.management.Index'), width: 200, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'lcbyear', name: gT('Contract.DownloadRegistrationWizard.Year'), width: 200 },\r\n { prop: 'lcbnum', name: gT('Contract.DownloadRegistrationWizard.DownloadOrderNumber'), width: 200 },\r\n { prop: 'lcbbarcode', name: gT('Contract.DownloadRegistrationWizard.Barcode'), width: 300 },\r\n { prop: 'lcbproductCode', name: gT('Contract.DownloadRegistrationWizard.ProductCode'), width: 250 }\r\n ];\r\n this.columnsSubproduct = [\r\n { prop: 'index', name: gT('Contract.management.Index'), width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'ncpProductCode', name: gT('Contract.DownloadRegistrationWizard.ProductCode'), width: 120 },\r\n { prop: 'productName', name: gT('Contract.DownloadRegistrationWizard.ProductName'), width: 200 },\r\n { prop: 'ncpAmount', name: gT('Contract.DownloadRegistrationWizard.NumberOrders'), width: 120 },\r\n { prop: 'ncpFromDeliveryDate', name: gT('Contract.DownloadRegistrationWizard.NumberSubmissions'), width: 120 },\r\n { prop: 'ncpToDeliveryDate', name: gT('Contract.DownloadRegistrationWizard.Considerations'), width: 120 }\r\n ];\r\n this.columnsSaleLoading = [\r\n {\r\n prop: 'selected',\r\n name: gT('Contract.management.Select'),\r\n sortable: false,\r\n canAutoResize: false,\r\n draggable: false,\r\n resizable: false,\r\n headerCheckboxable: true,\r\n checkboxable: true,\r\n width: 70\r\n },\r\n { prop: 'index', name: gT('Contract.management.Index'), width: 70, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'loadPDate', name: gT('Contract.contractManagementTable1.OrderDate'), width: 120 },\r\n { prop: 'spNumberOrder', name: gT('Contract.contractManagementTable1.OrderRegistrationNumber'), width: 170 },\r\n { prop: 'lcNumberSendProduct', name: gT('Contract.contractManagementTable1.SendOrderNumber'), width: 170 },\r\n { prop: 'lcNum', name: gT('Contract.contractManagementTable1.DownloadOrderNumber'), width: 170 },\r\n { prop: 'lcFor', name: gT('Contract.contractManagementTable1.For'), width: 120 },\r\n { prop: 'lcDestination', name: gT('Contract.contractManagementTable1.Address'), width: 120 },\r\n { prop: 'lcYear', name: gT('Contract.contractManagementTable1.Year'), width: 120 },\r\n { prop: 'carKind', name: gT('Contract.contractManagementTable1.TypeCar'), width: 120 },\r\n { prop: 'cNumer', name: gT('Contract.contractManagementTable1.NumberPlates'), width: 120 },\r\n { prop: 'dName', name: gT('Contract.contractManagementTable1.DriversName'), width: 120 },\r\n { prop: 'loadNumber', name: gT('Contract.contractManagementTable1.FreightNumber'), width: 170 },\r\n { prop: 'dapCode', name: gT('Contract.contractManagementTable1.RemittanceNumber'), width: 120 }\r\n\r\n ];\r\n if (this.CanManagemanageContract) {\r\n this.columns.push({ name: '', width: 200, resizeable: true, canAutoResize: true, sortable: true, draggable: true });\r\n this.columnsConteract.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsSaleLoading.push({ name: '', width: 160, cellTemplate: this.actionsTemplateload, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsSendProduct.push({ name: '', width: 160, cellTemplate: this.actionsTemplateSerial, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsSerial.push({ name: '', width: 160, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsSerialLast.push({ name: '', width: 160, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsDepoAssignment.push({ name: '', resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n\r\n this.columnsConteract = this.columnsConteract.filter(c => {\r\n return c.name !== \"میلادی\";\r\n });\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"کد زیرگروه\";\r\n });\r\n\r\n }\r\n this.loaddata();\r\n this.loadPubCars();\r\n //this.loadPubDriver();\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTestCmain(res));\r\n this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\r\n this.accountService.getNameHeader(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res), error => this.saveFailedHelper(error));\r\n\r\n }\r\n\r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.customerContractList.filter = filterValue.trim().toLowerCase();\r\n if (this.customerContractList.paginator) {\r\n this.customerContractList.paginator.firstPage();\r\n }\r\n }\r\n\r\n MethodTest1(joker: SaleCustomer) {\r\n this.editingCName = { name: joker.cName };\r\n }\r\n\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع کل\";\r\n return filteredCells;\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n MethodTestCmain(joker: number) {\r\n this.Cmain = joker;\r\n this.SaleCustomerService.getSaleCustomer(joker).subscribe(results => this.onDataLoadSuccessful(results[0]), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n onDataLoadSuccessful(SaleCustomer: SaleCustomer[]) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n SaleCustomer.forEach((user, index, SaleCustomer) => {\r\n (user as any).index = index + 1;\r\n });\r\n //this.rowsCache = [...SaleCustomer];\r\n this.rowsCustomer = [...SaleCustomer];\r\n //this.allgroup = groups;\r\n }\r\n\r\n loaddata() {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => {\r\n this.MethodTestContractnew(res);\r\n });\r\n this.accountService.getDepos(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n }\r\n\r\n methodLoaddepos(res: Depos1[]): void {\r\n this.allDepos = res;\r\n this.allDepos.forEach((user, index) => {\r\n if (index == 0) {\r\n this.Depocodenew = user.value;\r\n var dep = this.allDepos\r\n .filter(a => a.value == user.value);\r\n dep.forEach((user) => {\r\n this.OwnerBoolan = user.depowner;\r\n });\r\n this.loadingIndicator = true;\r\n }\r\n });\r\n }\r\n\r\n selectDep() {\r\n }\r\n\r\n MethodTestContractnew(cMainCode: number) {\r\n this.checkoutCashDeskStatus(cMainCode).subscribe((res: CheckoutCashDeskModel[]) => {\r\n this.checkoutCashDeskInDate = res;\r\n this.accountService.SaleNewContractSelectList(Number(this.authService.currentUser.phoneNumber), 5, 0, 0, cMainCode).subscribe(\r\n (res: SaleNewContract[]) => {\r\n this.alertService.stopLoadingMessage();\r\n res.forEach((value) => {\r\n value.statusString = value.statusString === null ? 'تایید نشده' : value.statusString;\r\n });\r\n this.customerContractList = new MatTableDataSource(res);\r\n this.customerContractList.paginator = this.paginator;\r\n this.customerContractList.sort = this.sort;\r\n },\r\n error => this.myCompanyService.saveFailedHelper(error)\r\n );\r\n }, (err) => {\r\n\r\n });\r\n\r\n }\r\n\r\n Showloading() {\r\n this.accountService.GetSaleLoadingUrl(Number(this.authService.currentUser.phoneNumber), \"100\", 0, this.nccodeget, 5).subscribe(res => this.loadSaleLoading(res), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n\r\n loadSaleLoading(con: VMSaleLoading[]) {\r\n if (con) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n con.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n });\r\n this.rowsSubReportLoading = [...con];\r\n this.rowsSubReportLoadingCash = con;\r\n }\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n\r\n private onCurrentserial(obj: SerialProduct[]) {\r\n this.loadingIndicator = false;\r\n obj.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n });\r\n\r\n this.rowsSerailCash = [...obj];\r\n this.rowsSerail = obj;\r\n }\r\n\r\n private onCurrentserialBarcode(objLast: SaleLoadingCommandBarCode[]) {\r\n\r\n this.loadingIndicator = false;\r\n objLast.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n });\r\n\r\n this.rowsSeraillastCash = [...objLast];\r\n this.rowsSeraillast = objLast;\r\n }\r\n\r\n private onCurrentSubOrder(obj: VMSubSendProduct[]) {\r\n\r\n this.loadingIndicator = false;\r\n\r\n obj.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n });\r\n this.rowsSubSendProductCash = [...obj];\r\n this.rowsSubSendProduct = obj;\r\n this.customerSendOrderContractList = new MatTableDataSource(obj);\r\n this.customerSendOrderContractList.sort = this.sort;\r\n }\r\n\r\n private onCurrentUserDataLoadDriverSuccessful(objPubDrivers: PubDrivers[]) {\r\n this.alertService.stopLoadingMessage();\r\n objPubDrivers.forEach((user) => {\r\n this.DriverCode = user.dcode;\r\n });\r\n this.alldriver = objPubDrivers;\r\n }\r\n\r\n private onCurrentUserDataLoadOstanSuccessful(objpubCar: PubCar[]) {\r\n this.alertService.stopLoadingMessage();\r\n objpubCar.forEach((user, index) => {\r\n if (index == 0) {\r\n this.CarCode = user.ccode;\r\n }\r\n if (user.cnumer == '0') {\r\n this.onChangeCar(user.ccode);\r\n }\r\n });\r\n this.allcar = objpubCar;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n private loadPubCars() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getPubCars().subscribe(results => this.onCurrentUserDataLoadOstanSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private loadPubDriver() {\r\n this.alertService.startLoadingMessage();\r\n }\r\n\r\n IsOneDay(dateInsert: Date) {\r\n const oneDay = 604800000; //( 3600 * 1000 * 24)\r\n const tomorrowDateInsert = dateInsert.getTime() + oneDay;\r\n if (tomorrowDateInsert >= this.serverDate.getTime()) {\r\n return 0;\r\n } else {\r\n return 10;\r\n }\r\n }\r\n\r\n showContract(row: SaleNewContract) {\r\n this.con.push(row);\r\n this.con.forEach((user) => {\r\n //this.billInfo.NCCode = user.nccode;\r\n //this.billInfo.NCYear = user.ncyear;\r\n //this.billInfo.NCPartCode = user.ncpartCode;\r\n this.nccodeget = user.nccode;\r\n this.Csub = user.ncsubCustomerCode;\r\n user.ncdate = this.datePipe.transform(user.ncdate, 'yyyy-MM-dd');\r\n this.datediffrent = this.IsOneDay(new Date(user.ncdate));\r\n });\r\n this.selectContract();\r\n }\r\n\r\n acceptContract(row) {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n\r\n if (row.statusString == 'تایید نشده') {\r\n this.con.push(row);\r\n this.con.forEach((user) => {\r\n this.nccodeget = user.nccode;\r\n this.Csub = user.ncsubCustomerCode;\r\n user.ncdate = this.datePipe.transform(user.ncdate, 'yyyy-MM-dd');\r\n this.datediffrent = this.IsOneDay(new Date(user.ncdate));\r\n });\r\n this.ScanSerial = [];\r\n this.isAllContract = false;\r\n this.loadingIndicator = true;\r\n this.accountService.GetStatusNUmber(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget).subscribe(\r\n res => {\r\n this.TabDrictiveobj = this.wizardobj.tabs;\r\n let step: number = 1;\r\n this.TabDrictiveobj.forEach((user) => {\r\n\r\n if (step == 1) {\r\n this.wizardobj.activeTab = user;\r\n user.active = true;\r\n this.accountService.getNewContractProduct(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget, 0).subscribe(\r\n res => {\r\n this.MethodTestContractProduct(res);\r\n this.checkoutCashDeskStatus(row.nccustomerCode).subscribe((res: CheckoutCashDeskModel[]) => {\r\n this.checkoutCashDeskInDate = res;\r\n this.AcceptContract(true);\r\n });\r\n },\r\n err => { console.log(err) }\r\n );\r\n }\r\n else {\r\n user.disabled = true;\r\n }\r\n step++;\r\n\r\n });\r\n\r\n }\r\n , err => { console.log(err) }\r\n );\r\n\r\n\r\n } else {\r\n this.alertService.showMessage('خطا در بارگذاری', row.status_ID == 'ابطال' ? \"قرارداد مورد نظر ابطال گردیده است\" : \"امکان تایید قرارداد وجود ندارد \", MessageSeverity.warn);\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n AcceptContract(isAssignment: boolean) {\r\n if (this.checkoutCashDeskInDate.length <= 0) {\r\n this.IsAssignment = isAssignment;\r\n this.isLoading = true;\r\n this.alertService.startLoadingMessage('تایید قرارداد ...');\r\n this.myaccountService.GetContractForCheckAccept(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget).subscribe(\r\n results => this.onCheckAcceptContract(results), error => { this.onCurrentUserDataLoadFailed(error); this.isLoading = false });\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم تایید قرارداد';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به تایید قرارداد نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n }\r\n\r\n deleteContract(row) {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n if (row.statusString == 'تایید نشده') {\r\n this.con.push(row);\r\n this.con.forEach((user) => {\r\n this.nccodeget = user.nccode;\r\n this.Csub = user.ncsubCustomerCode;\r\n user.ncdate = this.datePipe.transform(user.ncdate, 'yyyy-MM-dd');\r\n this.datediffrent = this.IsOneDay(new Date(user.ncdate));\r\n });\r\n this.checkoutCashDeskStatus(row.nccustomerCode).subscribe((res: CheckoutCashDeskModel[]) => {\r\n this.checkoutCashDeskInDate = res;\r\n this.voidContract();\r\n });\r\n } else {\r\n this.alertService.showMessage('خطا در بارگذاری', row.statusString == 'تایید' ? \"امکان ابطال قرارداد وجود ندارد \" : \"قرارداد مورد نظر ابطال گردیده است\", MessageSeverity.warn);\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n voidContract() {\r\n if (this.checkoutCashDeskInDate.length <= 0) {\r\n this.isLoading = true;\r\n this.alertService.startLoadingMessage('ابطال قرارداد ...');\r\n this.myaccountService.GetContractForCheckAccept(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget).subscribe(\r\n results => this.onCheckValidContract(results), error => { this.onCurrentUserDataLoadFailed(error); this.isLoading = false });\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم ابطال قرارداد';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به ابطال قرارداد نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n }\r\n\r\n onSelect({ selected }) {\r\n this.con = selected;\r\n this.con.forEach((user) => {\r\n this.nccodeget = user.nccode;\r\n this.Csub = user.ncsubCustomerCode;\r\n user.ncdate = this.datePipe.transform(user.ncdate, 'yyyy-MM-dd');\r\n this.datediffrent = this.IsOneDay(new Date(user.ncdate));\r\n });\r\n this.selectContract();\r\n }\r\n\r\n public lscdccodelocal: string = \"0\";\r\n onSelectSerial({ selected }) {\r\n this.conrowsSubProduct = selected;\r\n this.conrowsSubProduct.forEach((user, index, con) => {\r\n this.lscdccodelocal = user.lscdccode;\r\n if (this.serialLoad) {\r\n this.accountService.GetLastSerialAll(user.lscnum, user.lscdccode, Number(this.authService.currentUser.phoneNumber)).subscribe(results => this.onCurrentserialBarcode(results), error => this.onCurrentUserDataLoadFailed(error));\r\n\r\n }\r\n else {\r\n this.onCurrentserial(this.ScanSerial.filter(r => Utilities.searchArray(user.lscdccode, false, r.productCode)));\r\n }\r\n });\r\n }\r\n\r\n onSelectDelete({ selected }) {\r\n\r\n }\r\n\r\n PrintMethod(Print: PreInvoice) {\r\n this.ViewContract = true;\r\n }\r\n\r\n ShowPay(row) { }\r\n deleteCustomer(row) { }\r\n editCustomer(row) { }\r\n onSelectnew({ selected }) {\r\n if (!this.DelayLoad) {\r\n this.connew = selected;\r\n this.connew.forEach((user, index, con) => {\r\n this.NumberOrder = { name: user.lcNumberSendProduct.toString() };\r\n this.NumberCuntract = { name: this.nccodeget.toString() };\r\n this.DateSend = { name: user.loadPDate };\r\n this.NumberBargiei = { name: user.lcNum.toString() };\r\n this.NumberPreInvoic = { name: this.spiCode.toString() };\r\n this.CSubCode = { name: this.spiSubCustomerCode.toString() };\r\n if (user.dapCode != null) {\r\n this.NumberHavaleh = { name: user.dapCode.toString() };\r\n this.accountService.GetAssProductList(Number(this.authService.currentUser.phoneNumber), Number(this.NumberHavaleh.name), this.depoCode.toString()).subscribe(results => this.onLoadassProduct(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n this.StoreName = { name: this.depoName };\r\n this.OutputGoods = { name: this.cName };\r\n this.CodemeliHavaleh = { name: this.cPublicCode };\r\n this.OutputCar = { name: user.carKind };\r\n this.SaleSendProduct.Spfor = user.lcFor;\r\n this.SaleSendProduct.SpAdress = user.lcDestination;\r\n this.OutputAddress = { name: this.SaleSendProduct.Spfor }\r\n this.Pelak = user.cNumer;\r\n this.Drivername = user.dName;\r\n this.OutputNumberPelak = { name: this.Pelak };\r\n this.OutputDriver = { name: this.Drivername };\r\n if (user.dapCode != null) {\r\n this.PrintResid = true;\r\n }\r\n else {\r\n this.PrintResid = false;\r\n }\r\n this.accountService.getSubSendProduct(user.lcNumberSendProduct, Number(this.authService.currentUser.phoneNumber), 5).subscribe(results => this.onCurrentSubOrder(results), error => this.onCurrentUserDataLoadFailed(error));\r\n this.LoadNumbertxt = user.lcNum;\r\n this.LoadNumber = user.loadNumber.toString();\r\n this.onKeydownLoad(this.LoadNumbertxt);\r\n this.LastLoad = true;\r\n if (user.dapCode != null) {\r\n this.serialLoad = true;\r\n\r\n }\r\n else {\r\n this.serialLoad = false;\r\n }\r\n });\r\n }\r\n }\r\n onLoadassProduct(results: VMDepoAssignmentProductDetailSelectForUpdate[]): void {\r\n\r\n this.loadingIndicator = false;\r\n results.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n });\r\n this.rowsDepoAssignmentProductDetailSelectForUpdate = [...results];\r\n this.rowsDepoAssignmentProductDetailSelectForUpdateCash = results;\r\n\r\n }\r\n\r\n\r\n\r\n\r\n //onSearchChangedContract(value: string) {\r\n // this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.nccode, r.ncStatusString, r.ncpdate, r.cName, r.StatusName, r.statusString, r.ncsubCustomerCode, r.sumPrice));\r\n\r\n //}\r\n\r\n onSearchChanged(value: string) {\r\n this.rowsProduct = this.rowsCacheProduct.filter(r => Utilities.searchArray(value, false, r.nCPYear, r.nCPCode, r.nCPRevesion, r.ncpProductCode, r.ncpAmount, r.nCPFromDeliveryDate, r.nCPToDeliveryDate, r.nCPTolerancePercent, r.productName));\r\n\r\n }\r\n\r\n onKeydown(event) {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest(res, this.nccodeget));\r\n }\r\n\r\n onKeydownLoad(event) {\r\n this.accountService.GetSaleLoadingSelectForScaner(this.LoadNumbertxt, Number(this.authService.currentUser.phoneNumber)).subscribe(res => this.MethodTestSaleSub(res), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n\r\n public OwnerBoolan: boolean;\r\n select(event: number) {\r\n this.Depocodenew = event.toString();\r\n var dep = this.allDepos\r\n .filter(a => Number(a.value) == event);\r\n dep.forEach((user) => {\r\n this.OwnerBoolan = user.depowner;\r\n });\r\n }\r\n\r\n onKeydownSerial(event) {\r\n var isCan = true;\r\n this.ScanSerial.forEach((user) => {\r\n if (user.serialCode == this.SerialNUmber) {\r\n isCan = false;\r\n }\r\n });\r\n if (isCan) {\r\n this.StatusSerialText = \"\";\r\n this.objwarning.txtmessage = \"\";\r\n this.isInputTxtKeyNumber = true;\r\n //this.accountService.GetStatusSerial(this.SerialNUmber, this.Depocodenew).subscribe(res => this.MethodTestSaleSubstatus(res), error => this.myCompanyService.saveFailedHelper(error));\r\n this.accountService.GetStatusSerialEndpointBySerial(this.SerialNUmber, this.lscdccodelocal, this.Depocodenew, Number(this.authService.currentUser.phoneNumber)).subscribe(res => this.MethodTestSaleSubstatus(res), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n else {\r\n this.alertService.showMessage('خطا', 'بارکد قبلا وارد شده', MessageSeverity.warn);\r\n this.SerialNUmber = '';\r\n this.isInputTxtKeyNumber = false;\r\n setTimeout(() => { // this will make the execution after the above boolean has changed\r\n this.searchElement.nativeElement.focus();\r\n }, 0);\r\n }\r\n }\r\n\r\n MethodTestSaleSubstatus(status: number) {\r\n var isExist = false;\r\n let step: number = 0;\r\n this.isInputTxtKeyNumber = false;\r\n setTimeout(() => { // this will make the execution after the above boolean has changed\r\n this.searchElement.nativeElement.focus();\r\n }, 0);\r\n switch (status) {\r\n\r\n case 0:\r\n this.StatusSerialText = \"بارکد نامعتبر\";\r\n this.objwarning.txtmessage = \"بارکد نامعتبر\";\r\n this.alertService.showMessage('Warning!', \"بارکد نامعتبر\", MessageSeverity.warn);\r\n break;\r\n case 1:\r\n this.StatusSerialText = \"در انبار موجود هست\";\r\n this.objwarning.txtmessage = \"در انبار موجود هست\";\r\n this.alertService.showMessage('', \"در انبار موجود هست\", MessageSeverity.success);\r\n break;\r\n case 2:\r\n this.StatusSerialText = \"در انبار موجود نیست\";\r\n this.objwarning.txtmessage = \"در انبار موجود نیست\";\r\n this.alertService.showMessage('Warning!', \"در انبار موجود نیست\", MessageSeverity.warn);\r\n\r\n break;\r\n case 3:\r\n this.StatusSerialText = \"از انبار خارج شده\";\r\n this.objwarning.txtmessage = \"از انبار خارج شده\";\r\n this.alertService.showMessage('Warning!', \"از انبار خارج شده\", MessageSeverity.warn);\r\n break;\r\n default:\r\n this.rowsSubProductChash.forEach((user) => {\r\n if (user.lscdccode == status.toString()) {\r\n var check = true;\r\n this.rowsSerail.forEach((user) => {\r\n if (user.serialCode == this.SerialNUmber) {\r\n check = false;\r\n }\r\n });\r\n\r\n if (user.lscloadingOrderCount < user.lsccountLoading && check) {\r\n user.lscloadingOrderCount++;\r\n //this.SerialCode.push(this.SerialNUmber);\r\n\r\n var TemprorySerialObj = new SerialProduct();\r\n\r\n TemprorySerialObj.productCode = user.lscdccode;\r\n TemprorySerialObj.serialCode = this.SerialNUmber;\r\n\r\n //this.accountService.newTemprorySerial(this.TemprorySerialObj).subscribe(s => this.savenewSuccessHelper(), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n //this.accountService.TemprorySerialsGetAll(this.lscdccodelocal).subscribe(results => this.onCurrentserial(results), error => this.onCurrentUserDataLoadFailed(error));\r\n\r\n this.ScanSerial.push(TemprorySerialObj);\r\n this.ScanSerial = [...this.ScanSerial];\r\n\r\n var ScanSerial2 = this.ScanSerial.filter(r => Utilities.searchArray(user.lscdccode, false, r.productCode));\r\n this.onCurrentserial(ScanSerial2);\r\n\r\n this.StatusSerialText = \"بارکد ثبت شد.\";\r\n this.objwarning.txtmessage = \"بارکد ثبت شد.\";\r\n isExist = true;\r\n }\r\n else {\r\n this.StatusSerialText = \"تعداد ارسالی سفارش از تعداد بارگیری کمتر است.\";\r\n this.objwarning.txtmessage = \"تعداد ارسالی سفارش از تعداد بارگیری کمتر است.\";\r\n }\r\n }\r\n else {\r\n if (!isExist) {\r\n this.StatusSerialText = \"بارکد مربوط به کالا نیست.\";\r\n this.objwarning.txtmessage = \"بارکد مربوط به کالا نیست.\";\r\n }\r\n }\r\n });\r\n\r\n break;\r\n }\r\n\r\n this.rowsSubProduct = [...this.rowsSubProductChash];\r\n this.SerialNUmber = \"\";\r\n\r\n }\r\n\r\n MethodTestSaleSub(obj: SaleLoadingSelcetForScanners[]) {\r\n var depocod = 0;\r\n obj.forEach((user) => {\r\n\r\n this.LCNumberSendProduct = user.lcNumberSendProduct;\r\n this.LoadPDate = user.loadPDate;\r\n depocod = user.LCDepoCode;\r\n });\r\n\r\n this.accountService.GetLoadingDetail(this.LoadNumbertxt, Number(this.authService.currentUser.phoneNumber)).subscribe(res => this.MethodTestSaleSubLoading(res), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n\r\n }\r\n\r\n public loadgridnew: boolean;\r\n MethodTestSaleSubLoading(obj: SaleSubLoadingCommands[]) {\r\n this.loadingIndicator = false;\r\n\r\n obj.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n if (user.lscloadingOrderCount == 0) {\r\n this.loadgridnew = true;\r\n\r\n }\r\n else {\r\n this.loadgridnew = false;\r\n }\r\n\r\n });\r\n\r\n this.rowsSubProductChash = [...obj];\r\n this.rowsSubProduct = obj;\r\n }\r\n\r\n MethodTest(joker: number, nccodeget: number) {\r\n this.accountService.getNewContract(Number(this.authService.currentUser.phoneNumber), 5, nccodeget, joker).subscribe(res => this.MethodTestContract(res), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n }\r\n onChangeCustomer(ObjValue: number) {\r\n\r\n }\r\n\r\n showtasviyeh(row) {\r\n this.SettlementSave.yearnc = 1399; //row.ncyear;\r\n this.SettlementSave.partcodenc = 5; //row.ncpartCode;\r\n this.SettlementSave.ncccode = row.nccode;\r\n this.SettlementSave.isShow = true;\r\n this.SettlementSave.LoadAimOff();\r\n this.editorModalSettlementSave.show();\r\n }\r\n\r\n Showbill(row: SaleNewContract) {\r\n if (row != null) {\r\n if (row.statusString == \"تایید\") {\r\n this.billEditor.showbill(row.ncyear, 5, row.nccode);\r\n this.editorModalBill.show();\r\n }\r\n else {\r\n this.alertService.showMessage('Warning!', 'قرارداد شماره ' + row.nccode + ' تایدد نشده است.', MessageSeverity.warn);\r\n\r\n }\r\n }\r\n else {\r\n this.alertService.showMessage('Error!', 'جهت نمایش رسید دریافتی ردیف قرارداد را انتخاب نمایید.', MessageSeverity.error);\r\n }\r\n }\r\n //MethodNewCodeProduct(joker: number) {\r\n // this.accountService.GetOrdernum(this.nccodeget, Number(this.authService.currentUser.phoneNumber), 5).subscribe(res => this.MethodOrderNumber(res, joker));\r\n //}\r\n\r\n async MethodOrderNumberForSaleSendProduct(OrderNumber: number, joker: number) {\r\n\r\n //this.SaleSendProduct.Spdate = new Date().toLocaleDateString('en-US');\r\n this.SaleSendProduct.Spdate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleSendProduct.SpartCode = 5;\r\n this.SaleSendProduct.Spyear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleSendProduct.Spcode = joker;\r\n if (!this.OwnerBoolan) {\r\n this.SaleSendProduct.IsAccepted = true;\r\n this.SaleSendProduct.IsCancel = false;\r\n }\r\n this.SaleSendProduct.SpdepoCode = Number(this.Depocodenew);\r\n this.SaleSendProduct.CarCode = this.CarCode;\r\n this.SaleSendProduct.SpnumberOrder = OrderNumber;\r\n\r\n this.rowsSaleSubSendProduct_BarCode = [];\r\n let Count: number = 0;\r\n this.rowsNewProduct.forEach(async (user) => {\r\n if (user.count != 0) {\r\n var selectSaleSubSendProduct_BarCode = new VMSaleSubSendProduct_BarCode();\r\n\r\n Count++;\r\n selectSaleSubSendProduct_BarCode.Sspyear = Number(this.authService.currentUser.phoneNumber);\r\n selectSaleSubSendProduct_BarCode.SspartCode = 5;\r\n selectSaleSubSendProduct_BarCode.Sspdes = \"\";\r\n selectSaleSubSendProduct_BarCode.Sspcode = this.SaleSendProduct.Spcode;\r\n selectSaleSubSendProduct_BarCode.Ssppcode = user.pCode;\r\n selectSaleSubSendProduct_BarCode.barCode = user.barCode == null || user.barCode == 'undefined' ? '-' : user.barCode;\r\n selectSaleSubSendProduct_BarCode.Sspcount = user.orderCount;\r\n selectSaleSubSendProduct_BarCode.SspsendCount = user.count;\r\n //await this.accountService.newSaleSubSendProducts(this.SaleSubSendProductObj).subscribe(s => this.savePreInvoiceSubProduct(Count), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n\r\n this.rowsSaleSubSendProduct_BarCode.push(selectSaleSubSendProduct_BarCode);\r\n this.rowsSaleSubSendProduct_BarCode = [...this.rowsSaleSubSendProduct_BarCode];\r\n\r\n }\r\n });\r\n\r\n\r\n\r\n this.VMSelectSaleSubSendProduct_BarCode.saleSendProduct = this.SaleSendProduct;\r\n this.VMSelectSaleSubSendProduct_BarCode.rowsNewProduct = [...this.rowsSaleSubSendProduct_BarCode];\r\n this.VMSelectSaleSubSendProduct_BarCode.code = this.nccodeget;\r\n\r\n this.accountService.GetNewSaleSendProduct(this.VMSelectSaleSubSendProduct_BarCode).subscribe(s => this.saveNewSaleSendProductSuccessHelper(s), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n //await this.accountService.NewSaleSendProducts(this.SaleSendProduct).subscribe(s => this.savePreInvoiceSuccessHelper(), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n\r\n selectContract() {\r\n if (this.con.length <= 0) {\r\n this.alertService.showMessage('هشدار!', 'قراردادی انتخاب نشده است', MessageSeverity.warn);\r\n } else {\r\n this.ScanSerial = [];\r\n\r\n this.isAllContract = false;\r\n this.loadingIndicator = true;\r\n this.accountService.GetStatusNUmber(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget).subscribe(\r\n res => {\r\n this.MethodStatusNumber(res)\r\n }\r\n , err => { console.log(err) }\r\n );\r\n }\r\n //this.accountService.DeleteTemprory().subscribe(a => this.SaveDeleteTemprory(a), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n }\r\n MethodSaveLoading() {\r\n this.load = true;\r\n }\r\n MethodCloseSaveLoading() {\r\n this.load = false;\r\n }\r\n MethodSendProduct() {\r\n this.LastLoad = false;\r\n }\r\n MethodCloseSendProduct() {\r\n this.LastLoad = true;\r\n }\r\n MethodPrintResid() {\r\n this.ViewResid = true;\r\n }\r\n MethodClosePrintResid() {\r\n this.ViewResid = false;\r\n }\r\n\r\n MethodStatusNumber(joker: number) {\r\n this.TabDrictiveobj = this.wizardobj.tabs;\r\n let step: number = 1;\r\n\r\n switch (joker) {\r\n case 0:\r\n this.TabDrictiveobj.forEach((user) => {\r\n if (step == 1) {\r\n this.wizardobj.activeTab = user;\r\n user.active = true;\r\n this.accountService.getNewContractProduct(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget, 0).subscribe(\r\n res => {\r\n this.MethodTestContractProduct(res)\r\n },\r\n err => { console.log(err) }\r\n );\r\n }\r\n else {\r\n user.disabled = true;\r\n }\r\n step++;\r\n });\r\n break;\r\n case 1:\r\n this.TabDrictiveobj.forEach((user) => {\r\n if (step == 2) {\r\n this.load = false;\r\n this.wizardobj.activeTab = user;\r\n user.active = true;\r\n this.accountService.GetOOrderNum(this.nccodeget, 5, Number(this.authService.currentUser.phoneNumber)).subscribe(res => this.Methodoorder(res));\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTestPreInvoice(res));\r\n this.accountService.GetSaleLoadingUrl(Number(this.authService.currentUser.phoneNumber), \"100\", 0, this.nccodeget, 5).subscribe(res => this.loadSaleLoading(res), error => this.myCompanyService.saveFailedHelper(error)); // SaleSelectAllLoadedCountRegistsite\r\n this.LastLoad = false;\r\n }\r\n else {\r\n user.disabled = true;\r\n }\r\n step++;\r\n });\r\n break;\r\n case 2:\r\n\r\n this.TabDrictiveobj.forEach((user) => {\r\n if (step == 2) {\r\n this.wizardobj.activeTab = user;\r\n user.active = true;\r\n this.accountService.GetOOrderNum(this.nccodeget, 5, Number(this.authService.currentUser.phoneNumber)).subscribe(res => this.Methodoorder(res));\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTestPreInvoice(res));\r\n this.accountService.GetSaleLoadingUrl(Number(this.authService.currentUser.phoneNumber), \"100\", 0, this.nccodeget, 5).subscribe(res => this.loadSaleLoading(res), error => this.myCompanyService.saveFailedHelper(error));\r\n this.load = false;\r\n this.LastLoad = false;\r\n }\r\n else {\r\n user.disabled = true;\r\n }\r\n step++;\r\n });\r\n\r\n case 3:\r\n this.TabDrictiveobj.forEach((user) => {\r\n if (step == 4) {\r\n this.wizardobj.activeTab = user;\r\n user.active = true;\r\n }\r\n else {\r\n user.disabled = true;\r\n }\r\n step++;\r\n });\r\n break;\r\n }\r\n }\r\n\r\n changediveback() {\r\n this.isAllContract = true;\r\n this.con.length = 0;\r\n this.selected.length = 0;\r\n this.ScanSerial = [];\r\n this.loaddata();\r\n }\r\n\r\n save() {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n var CheckComplet = true;\r\n var checkCount = false;\r\n this.rowsNewProduct.forEach((user) => {\r\n if (this.isInstallments) {\r\n if (Number(user.count) != Number(user.osCount)) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تعداد بارگیری می بایست با تعداد مانده سفارش برابر باشد', MessageSeverity.warn);\r\n }\r\n } else {\r\n if (Number(user.count) > Number(user.osCount)) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تعداد بارگیری از تعداد مانده سفارش بیشتر است', MessageSeverity.warn);\r\n }\r\n }\r\n });\r\n\r\n if (!this.OwnerBoolan) {\r\n this.rowsNewProduct.forEach((user) => {\r\n if (Number(user.count) != 0 && Number(user.count) > Number(user.rmindMajazi)) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تعداد بارگیری از تعداد مانده انبار فروشگاه نباید بیشتر باشد', MessageSeverity.warn);\r\n }\r\n });\r\n\r\n }\r\n if (this.SaleSendProduct.Spfor == \"\" || this.SaleSendProduct.Spfor == null) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا ارسال به را پر کنید', MessageSeverity.warn);\r\n\r\n }\r\n if (this.LoadNumber == \"\" || this.LoadNumber == null) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا شماره بارنامه را پر کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSendProduct.SpAdress == \"\" || this.SaleSendProduct.SpAdress == null) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا محل ارسال را پر کنید', MessageSeverity.warn);\r\n }\r\n if (this.CarCode == 0) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا خودرو مورد نظر را انتخاب کنید', MessageSeverity.warn);\r\n }\r\n if (this.DriverCode == 0) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا راننده مورد نظر را انتخاب کنید', MessageSeverity.warn);\r\n }\r\n this.rowsNewProduct.forEach(async (user) => {\r\n\r\n if (user.count != 0) {\r\n checkCount = true;\r\n }\r\n });\r\n if (!checkCount) {\r\n CheckComplet = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'شما باید حداقل یک کالا را برای ارسال آماده کنید', MessageSeverity.warn);\r\n }\r\n if (CheckComplet) {\r\n this.issaleorder = true;\r\n\r\n //this.accountService.GetNewCodeSaleSendProduct(Number(this.authService.currentUser.phoneNumber), 5).subscribe(res => this.MethodNewCodeProduct(res));\r\n this.accountService.GetOrdernum(this.nccodeget, Number(this.authService.currentUser.phoneNumber), 5).subscribe(res => this.MethodOrderNumberForSaleSendProduct(res, 0));\r\n\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n saveAssignDepo() {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n if (this.checkoutCashDeskInDate.length <= 0) {\r\n var CheckTrue: boolean = true;\r\n this.isSavingAssignDepo = true;\r\n //this.SaveAssignmentProducts();\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n this.rowsSubProduct.forEach((user) => {\r\n if (user.lscloadingOrderCount != user.lsccountLoading) {\r\n CheckTrue = false;\r\n }\r\n });\r\n if (CheckTrue) {\r\n //this.accountService.GetAllSerial().subscribe(res => this.MethodSerial(res));\r\n //this.accountService.GetAllSerial().subscribe(res => this.MethodSaveAssignmentProducts(res, true), error => this.myCompanyService.saveFailedHelper(error));\r\n this.MethodSaveAssignmentProducts(this.ScanSerial, true);\r\n }\r\n else {\r\n this.isSavingAssignDepo = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تعداد دستور بارگیری با ثبت بارگیری برابر نیست', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم ذخیره قرارداد';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به ذخیره قرارداد و تبدیل به حواله نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n SaveAssignmentProducts(productSeriales: SerialProduct[]) {\r\n //this.accountService.GetNewCodeAssignmentProducts(Number(this.authService.currentUser.phoneNumber), this.depoCode.toString()).subscribe(res => this.loadeNewCodeAssignment(res));\r\n\r\n this.rowsDepoAssignmentProductDetail_BarCode = [];\r\n\r\n this.DepoAssignmentProductObj.ContractCode = this.contractCode;\r\n this.DepoAssignmentProductObj.ContractYear = this.contractyear;\r\n this.DepoAssignmentProductObj.DAPCancelBit = false;\r\n this.DepoAssignmentProductObj.DAPCode = 0;\r\n this.DepoAssignmentProductObj.DAPCustomerMainCode = this.Cmain;\r\n this.DepoAssignmentProductObj.DAPCustomerSubCode = this.Csub;\r\n //this.DepoAssignmentProductObj.DAPDateAssignment = new Date().toLocaleDateString('en-US');\r\n //this.DepoAssignmentProductObj.DAPSysDate = new Date().toLocaleDateString('en-US');\r\n this.DepoAssignmentProductObj.DAPDateAssignment = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoAssignmentProductObj.DAPSysDate = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoAssignmentProductObj.DAPDepCode = this.Depocodenew.toString();//this.depoCode.toString();\r\n this.DepoAssignmentProductObj.DAPPrice = 0;\r\n this.DepoAssignmentProductObj.DAPTCode = 1;\r\n this.DepoAssignmentProductObj.DAPYear = Number(this.authService.currentUser.phoneNumber);\r\n this.DepoAssignmentProductObj.PartCode = 5;\r\n this.DepoAssignmentProductObj.DAPUserCode = 27;\r\n\r\n\r\n this.Allserial = [...productSeriales];\r\n\r\n productSeriales.forEach(async (user) => {\r\n var selectDepoAssignmentProductDetail_BarCode = new VMDepoAssignmentProductDetail_BarCode();\r\n\r\n this.rowsSubProduct.forEach(async (user1) => {\r\n\r\n if (user.productCode == user1.lscdccode) {\r\n selectDepoAssignmentProductDetail_BarCode.DAPDYear = this.contractyear;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDCode = this.DepoAssignmentProductObj.DAPCode;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDDCCode = user.productCode;\r\n selectDepoAssignmentProductDetail_BarCode.barCode = user.serialCode == null || user.serialCode == 'undefined' ? '-' : user.serialCode;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDDepoCode = this.Depocodenew.toString();//this.depoCode.toString();\r\n selectDepoAssignmentProductDetail_BarCode.DAPDUnitProduct = 1;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDASSCount = 1;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDForInvoice = 1;\r\n }\r\n\r\n });\r\n\r\n selectDepoAssignmentProductDetail_BarCode.DAPDPrice = 0;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDPricePersonel = 0;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDPPriceEnergy = 0;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDPriceEstehlak = 0;\r\n selectDepoAssignmentProductDetail_BarCode.DAPDPriceMali = 0;\r\n selectDepoAssignmentProductDetail_BarCode.DADPriceSale = 0;\r\n\r\n this.rowsDepoAssignmentProductDetail_BarCode.push(selectDepoAssignmentProductDetail_BarCode);\r\n this.rowsDepoAssignmentProductDetail_BarCode = [...this.rowsDepoAssignmentProductDetail_BarCode];\r\n });\r\n\r\n\r\n\r\n this.VMSelectDepoAssignmentProductDetail_BarCode.depoAssignmentProduct = this.DepoAssignmentProductObj;\r\n this.VMSelectDepoAssignmentProductDetail_BarCode.rowsNewProduct = [...this.rowsDepoAssignmentProductDetail_BarCode];\r\n this.VMSelectDepoAssignmentProductDetail_BarCode.code = Number(this.LoadNumbertxt);\r\n\r\n this.accountService.GetNewAssignmentLoading(this.VMSelectDepoAssignmentProductDetail_BarCode).subscribe(s => this.saveNewAssignmentDepoHelper(s, this.LoadNumbertxt),\r\n error => {\r\n this.VMSelectDepoAssignmentProductDetail_BarCode = null;\r\n this.isSavingAssignDepo = false;\r\n this.alertService.stopLoadingMessage();\r\n //this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`, MessageSeverity.error, error);\r\n this.alertService.showMessage('خطا', 'در درج اطلاعات خطایی رخ داده است لطفا مجددا اقدام نماید', MessageSeverity.error);\r\n }\r\n );\r\n }\r\n\r\n private saveNewAssignmentDepoHelper(AssignmentLoadNewCode: string[], LoadNumbert: number) {\r\n if (AssignmentLoadNewCode != null && AssignmentLoadNewCode.length > 0) {\r\n var dapcode: string = String(AssignmentLoadNewCode[0]);\r\n var msg: string = String(AssignmentLoadNewCode[1]);\r\n if (Number(dapcode) > 0) {\r\n //this.accountService.DeleteTemprory().subscribe(a => this.SaveDeleteTemprory(a), error => this.myCompanyService.saveFailedHelper(error));\r\n this.ScanSerial = [];\r\n\r\n this.isSavingAssignDepo = true;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' حواله با شماره ' + dapcode + ' ثبت شد ', MessageSeverity.success);\r\n this.myCompanyService.Refresh();\r\n\r\n }\r\n else {\r\n this.DeleteSaleLoadingCommandBarCode(LoadNumbert);\r\n this.VMSelectDepoAssignmentProductDetail_BarCode = null;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', msg + \"\\n\" + 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n }\r\n }\r\n else {\r\n this.DeleteSaleLoadingCommandBarCode(LoadNumbert);\r\n this.VMSelectDepoAssignmentProductDetail_BarCode = null;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n }\r\n }\r\n\r\n DeleteSaleLoadingCommandBarCode(LoadNumbert: number) {\r\n this.alertService.stopLoadingMessage();\r\n this.accountService.DeleteSaleLoadingCommandBarCode(Number(this.authService.currentUser.phoneNumber), 5, LoadNumbert).subscribe(\r\n res => this.alertService.showStickyMessage('Error!', 'بارکد/های دستور بارگیری شماره ' + LoadNumbert + ' ثبت نشد.', MessageSeverity.error),\r\n error => this.alertService.showStickyMessage('Error!', 'بارکد/های دستور بارگیری شماره ' + LoadNumbert + ' ثبت شد.', MessageSeverity.error));\r\n this.isSavingAssignDepo = false;\r\n }\r\n\r\n private loadeNewCodeAssignment(DAPCode?: number) {\r\n\r\n this.DepoAssignmentProductObj.ContractCode = this.contractCode;\r\n this.DepoAssignmentProductObj.ContractYear = this.contractyear;\r\n this.DepoAssignmentProductObj.DAPCancelBit = false;\r\n this.DepoAssignmentProductObj.DAPCode = DAPCode;\r\n this.DepoAssignmentProductObj.DAPCustomerMainCode = this.Cmain;\r\n this.DepoAssignmentProductObj.DAPCustomerSubCode = this.Csub;\r\n //this.DepoAssignmentProductObj.DAPDateAssignment = new Date().toLocaleDateString('en-US');\r\n //this.DepoAssignmentProductObj.DAPSysDate = new Date().toLocaleDateString('en-US');\r\n this.DepoAssignmentProductObj.DAPDateAssignment = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoAssignmentProductObj.DAPSysDate = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoAssignmentProductObj.DAPDepCode = this.depoCode.toString();\r\n this.DepoAssignmentProductObj.DAPPrice = 0;\r\n this.DepoAssignmentProductObj.DAPTCode = 1;\r\n this.DepoAssignmentProductObj.DAPYear = Number(this.authService.currentUser.phoneNumber);\r\n this.DepoAssignmentProductObj.PartCode = 5;\r\n this.DepoAssignmentProductObj.DAPUserCode = 27;\r\n this.accountService.newDepoAssignmentProduct(this.DepoAssignmentProductObj).subscribe(a => this.DepoAssignmentProductSave(), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n private DepoAssignmentProductSave() {\r\n\r\n this.DepoAssignmentProductNumberLoadingObj.DAPCode = this.DepoAssignmentProductObj.DAPCode;\r\n this.DepoAssignmentProductNumberLoadingObj.DAPDepoCode = this.depoCode.toString();\r\n this.DepoAssignmentProductNumberLoadingObj.DAPLCNum = Number(this.LoadNumbertxt);\r\n this.DepoAssignmentProductNumberLoadingObj.DAPYear = this.contractyear;\r\n this.accountService.newDepoAssignmentProductNumberLoading(this.DepoAssignmentProductNumberLoadingObj).subscribe(a => this.DepoAssignmentProductNumberLoadingSave(), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n\r\n private DepoAssignmentProductNumberLoadingSave() {\r\n this.rowsSubProduct.forEach(async (user) => {\r\n this.DepoAssignmentProductDetailObj.DAPDYear = this.contractyear;\r\n this.DepoAssignmentProductDetailObj.DAPDCode = this.DepoAssignmentProductObj.DAPCode;\r\n this.DepoAssignmentProductDetailObj.DAPDDCCode = user.lscdccode;\r\n this.DepoAssignmentProductDetailObj.barCode = user.barCode == null || user.barCode == 'undefined' ? '-' : user.barCode;\r\n this.DepoAssignmentProductDetailObj.DAPDDepoCode = this.depoCode.toString();\r\n this.DepoAssignmentProductDetailObj.DAPDUnitProduct = 1;\r\n this.DepoAssignmentProductDetailObj.DAPDASSCount = user.lscloadingOrderCount;\r\n this.DepoAssignmentProductDetailObj.DAPDForInvoice = user.lscloadingOrderCount;\r\n this.DepoAssignmentProductDetailObj.DAPDPrice = 0;\r\n this.DepoAssignmentProductDetailObj.DAPDPricePersonel = 0;\r\n this.DepoAssignmentProductDetailObj.DAPDPPriceEnergy = 0;\r\n this.DepoAssignmentProductDetailObj.DAPDPriceEstehlak = 0;\r\n this.DepoAssignmentProductDetailObj.DAPDPriceMali = 0;\r\n this.DepoAssignmentProductDetailObj.DADPriceSale = 0;\r\n await this.accountService.newDepoAssignmentProductDetail(this.DepoAssignmentProductDetailObj).subscribe(error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n\r\n });\r\n\r\n this.DepoAssignmentProductDetailSaveSuccess(this.DepoAssignmentProductObj.DAPCode);\r\n\r\n }\r\n\r\n private DepoAssignmentProductDetailSaveSuccess(Dapcode: number) {\r\n this.Allserial.forEach((user) => {\r\n this.DepoAssignmentProductBarCodeobj.Dapbddccode = user.productCode;\r\n this.DepoAssignmentProductBarCodeobj.DapbbarCode = user.serialCode;\r\n this.DepoAssignmentProductBarCodeobj.Dapbcode = Dapcode;\r\n this.DepoAssignmentProductBarCodeobj.DapbdepCode = this.depoCode.toString();\r\n this.DepoAssignmentProductBarCodeobj.Dapbyear = Number(this.authService.currentUser.phoneNumber);\r\n this.accountService.DepoAssignmentProductBarCodes(this.DepoAssignmentProductBarCodeobj).subscribe(error => this.myCompanyService.saveFailedHelper(error));\r\n });\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', 'صدور حواله محصول با موفقیت انجام شد', MessageSeverity.success);\r\n this.isSavingAssignDepo = true;\r\n }\r\n\r\n //MethodSerial(joker: SerialProduct[]) {\r\n // this.Allserial = [...joker];\r\n // joker.forEach(async (user) => {\r\n // this.BarCodeObj.Lcbbarcode = user.serialCode;\r\n // this.BarCodeObj.Lcbnum = this.LoadNumbertxt;\r\n // this.BarCodeObj.Lcbyear = Number(this.authService.currentUser.phoneNumber);\r\n // this.BarCodeObj.LcbproductCode = user.productCode;\r\n // await this.accountService.newSaleLoadingCommandBarCodes(this.BarCodeObj).subscribe(a => this.saveBarCodeSuccessHelper(), error => this.myCompanyService.saveFailedHelper(error));\r\n // });\r\n // this.accountService.DeleteTemprory().subscribe(a => this.SaveDeleteTemprory(joker, true), error => this.myCompanyService.saveFailedHelper(error));\r\n //}\r\n\r\n private SaveDeleteTemprory(num: Number) {\r\n\r\n }\r\n private MethodSaveAssignmentProducts(joker: SerialProduct[], Active?: boolean) {\r\n if (joker.length > 0) {\r\n if (Active) {\r\n this.SaveAssignmentProducts(joker);\r\n }\r\n else {\r\n this.isSavingAssignDepo = false;\r\n\r\n }\r\n }\r\n else {\r\n this.isSavingAssignDepo = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', ' بارکدی جهت ثبت حواله وارد نشده است. ', MessageSeverity.error);\r\n }\r\n }\r\n\r\n updateValue(event, rowIndex) {\r\n\r\n if (event.target.value != \"\") {\r\n //if (!this.OwnerBoolan) {\r\n\r\n // this.accountService.MethodGetDepoTarazwithcomDetailByDCCod(Number(this.authService.currentUser.phoneNumber), this.Depocodenew, this.rowsNewProduct[rowIndex][\"pCode\"])\r\n // .subscribe(\r\n // vb => {\r\n // if (vb.rmindMajazi >= event.target.value) {\r\n // this.rowsNewProduct[rowIndex][\"count\"] = event.target.value;\r\n // }\r\n // else {\r\n // this.alertService.stopLoadingMessage();\r\n // this.alertService.showMessage('Success', ` مقدار وارد شده از مقدار موجودی بیشتر است`, MessageSeverity.warn);\r\n // }\r\n // }\r\n // );\r\n //}\r\n //else {\r\n // this.rowsNewProduct[rowIndex][\"count\"] = event.target.value;\r\n\r\n //}\r\n this.rowsNewProduct[rowIndex][\"count\"] = event.target.value;\r\n\r\n }\r\n }\r\n private savePreInvoiceSubProduct(SalePreInvoice?: number) {\r\n\r\n }\r\n private async loadeNewCodeLoading(LCNum?: number) {\r\n this.SaleLoadingCommandObj.Lcnum = LCNum;\r\n this.SaleLoadingCommandObj.Lcyear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleLoadingCommandObj.LcdateLoading = this.SaleSendProduct.Spdate;\r\n this.SaleLoadingCommandObj.LcpartCode = 5;\r\n this.SaleLoadingCommandObj.LcnumberSendProduct = this.SaleSendProduct.Spcode;\r\n this.SaleLoadingCommandObj.LcdepoCode = 27;\r\n this.SaleLoadingCommandObj.Lcfor = this.SaleSendProduct.Spfor;\r\n this.SaleLoadingCommandObj.Ccode = this.CarCode;\r\n this.SaleLoadingCommandObj.LcdriverCode = this.DriverCode;\r\n this.SaleLoadingCommandObj.Lcdestination = this.SaleSendProduct.SpAdress;\r\n this.SaleLoadingCommandObj.LccancelBit = false;\r\n this.SaleLoadingCommandObj.LcdepoCodeFact = this.SaleSendProduct.SpdepoCode;\r\n this.SaleLoadingCommandObj.LoadNumber = Number(this.LoadNumber);\r\n\r\n await this.accountService.newSaleLoadinCommand(this.SaleLoadingCommandObj).subscribe(a => this.SaveSaleLoadingCommand(), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n private SaveSaleLoadingCommand() {\r\n this.rowsNewProduct.forEach(async (user) => {\r\n if (user.count != 0) {\r\n this.SaleSubLoadingCommandObj.Lscyear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleSubLoadingCommandObj.lscdccode = user.pCode;\r\n this.SaleSubLoadingCommandObj.barCode = user.barCode == null || user.barCode == 'undefined' ? '-' : user.barCode;\r\n this.SaleSubLoadingCommandObj.LscunitProductCode = 1;\r\n this.SaleSubLoadingCommandObj.LscpartCode = 5;\r\n this.SaleSubLoadingCommandObj.lscnum = this.SaleLoadingCommandObj.Lcnum;\r\n this.SaleSubLoadingCommandObj.lsccountLoading = user.count;\r\n //this.SaleSubLoadingCommandObj.LscloadingOrderCount = user.count;\r\n this.SaleSubLoadingCommandObj.Lscdesc = \"\";\r\n await this.accountService.newSaleSubLoadingCommands(this.SaleSubLoadingCommandObj).subscribe(a => this.SaveSaleSubLoadingCommand(), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n\r\n });\r\n this.accountService.UpdateChangeStatus(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget, 2, \"دستور ارسال و بارگیری\").subscribe(s => this.saveNewSaleLoadingCommandSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n\r\n private SaveSaleSubLoadingCommand() {\r\n\r\n }\r\n\r\n private saveBarCodeSuccessHelper() {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ` ثبت بارگیری با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n private savenewSuccessHelper(SalePreInvoice?: string) {\r\n }\r\n\r\n private saveNewSaleSendProductSuccessHelper(SPCode?: number) {\r\n if (SPCode > 0) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', \" دستور ارسال با شماره \" + SPCode + \" ثبت شد.\", MessageSeverity.success);\r\n //let Count: number = 0;\r\n //this.rowsNewProduct.forEach(async (user) => {\r\n // if (user.count != 0) {\r\n // Count++;\r\n // this.SaleSubSendProductObj.Sspyear = Number(this.authService.currentUser.phoneNumber);\r\n // this.SaleSubSendProductObj.SspartCode = 5;\r\n // this.SaleSubSendProductObj.Sspdes = \"\";\r\n // this.SaleSubSendProductObj.Sspcode = this.SaleSendProduct.Spcode;\r\n // this.SaleSubSendProductObj.Ssppcode = user.pCode;\r\n // this.SaleSubSendProductObj.barCode = user.barCode == null || user.barCode == 'undefined' ? '-' : user.barCode;\r\n // this.SaleSubSendProductObj.Sspcount = user.orderCount;\r\n // this.SaleSubSendProductObj.SspsendCount = user.count;\r\n // await this.accountService.newSaleSubSendProducts(this.SaleSubSendProductObj).subscribe(s => this.savePreInvoiceSubProduct(Count), error => this.myCompanyService.saveFailedHelper(error));\r\n // }\r\n //});\r\n if (!this.OwnerBoolan) {\r\n //this.accountService.GetNewCodeLoading(Number(this.authService.currentUser.phoneNumber)).subscribe(res => this.loadeNewCodeLoading(res));\r\n\r\n\r\n this.rowsSaleSubLoadingCommands_BarCode = [];\r\n this.SaleLoadingCommandObj.Lcnum = 0;\r\n this.SaleLoadingCommandObj.Lcyear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleLoadingCommandObj.LcdateLoading = this.SaleSendProduct.Spdate;\r\n this.SaleLoadingCommandObj.LcpartCode = 5;\r\n this.SaleLoadingCommandObj.LcnumberSendProduct = SPCode;\r\n this.SaleLoadingCommandObj.LcdepoCode = 27;\r\n this.SaleLoadingCommandObj.Lcfor = this.SaleSendProduct.Spfor;\r\n this.SaleLoadingCommandObj.Ccode = this.CarCode;\r\n this.SaleLoadingCommandObj.LcdriverCode = this.DriverCode;\r\n this.SaleLoadingCommandObj.Lcdestination = this.SaleSendProduct.SpAdress;\r\n this.SaleLoadingCommandObj.LccancelBit = false;\r\n this.SaleLoadingCommandObj.LcdepoCodeFact = this.SaleSendProduct.SpdepoCode;\r\n this.SaleLoadingCommandObj.LoadNumber = Number(this.LoadNumber);\r\n\r\n this.rowsNewProduct.forEach(async (user, index) => {\r\n\r\n if (user.count != 0) {\r\n var selectSaleSubLoadingCommands_BarCode = new VMSaleSubLoadingCommands_BarCode();\r\n selectSaleSubLoadingCommands_BarCode.Lscyear = Number(this.authService.currentUser.phoneNumber);\r\n selectSaleSubLoadingCommands_BarCode.lscdccode = user.pCode;\r\n selectSaleSubLoadingCommands_BarCode.barCode = user.barCode == null || user.barCode == 'undefined' ? '-' : user.barCode;\r\n selectSaleSubLoadingCommands_BarCode.LscunitProductCode = 1;\r\n selectSaleSubLoadingCommands_BarCode.LscpartCode = 5;\r\n selectSaleSubLoadingCommands_BarCode.lscnum = this.SaleLoadingCommandObj.Lcnum;\r\n selectSaleSubLoadingCommands_BarCode.lsccountLoading = user.count;\r\n selectSaleSubLoadingCommands_BarCode.lscloadingOrderCount = 0;\r\n selectSaleSubLoadingCommands_BarCode.setcountload = 0;\r\n selectSaleSubLoadingCommands_BarCode.Lscdesc = \"\";\r\n\r\n this.rowsSaleSubLoadingCommands_BarCode.push(selectSaleSubLoadingCommands_BarCode);\r\n this.rowsSaleSubLoadingCommands_BarCode = [...this.rowsSaleSubLoadingCommands_BarCode];\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n this.VMSelectSaleSubLoadingCommands_BarCode.saleLoadingCommand = this.SaleLoadingCommandObj;\r\n this.VMSelectSaleSubLoadingCommands_BarCode.rowsNewProduct = [...this.rowsSaleSubLoadingCommands_BarCode];\r\n this.VMSelectSaleSubLoadingCommands_BarCode.code = this.nccodeget;\r\n\r\n //this.accountService.GetNewSaleLoadingCommand(this.VMSelectSaleSubLoadingCommands_BarCode).subscribe(s => this.saveNewSaleLoadingCommandSuccessHelper(s, SPCode), error => this.myCompanyService.saveFailedHelper(error));\r\n this.accountService.GetNewAssignmentLoadingNextSendProduct(this.VMSelectSaleSubLoadingCommands_BarCode).subscribe(s => this.saveNewAssignmentLoadingNextSendProductHelper(s, SPCode), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n }\r\n else {\r\n this.loaddata();\r\n this.isAllContract = true;\r\n //this.myCompanyService.Refresh();\r\n }\r\n }\r\n else {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', ' متاسفانه دستور ارسال ثبت نشد، پس از بررسی مجدد اقدام نمایید. ', MessageSeverity.error);\r\n\r\n }\r\n }\r\n\r\n private saveNewSaleLoadingCommandSuccessHelper(LCNum?: number, SPCode?: number) {\r\n if (LCNum > 0) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' دستور ارسال با شماره ' + SPCode + ' و بارگیری با شماره ' + LCNum + ' ثبت شد. ', MessageSeverity.success);\r\n this.LoadNumbertxt = LCNum;\r\n this.onKeydownLoad(this.LoadNumbertxt);\r\n this.load = true;\r\n }\r\n else {\r\n this.DeleteSendProduct(SPCode);\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', ' متاسفانه دستور ارسال و بارگیری ثبت نشد، پس از بررسی مجدد اقدام نمایید. ', MessageSeverity.error);\r\n }\r\n\r\n\r\n }\r\n\r\n private saveNewAssignmentLoadingNextSendProductHelper(AssignmentLoadNewCode: number, SPCode: number) {\r\n\r\n var dapcode: string = String(AssignmentLoadNewCode);\r\n if (AssignmentLoadNewCode > 0) {\r\n\r\n this.loaddata();\r\n this.isAllContract = true;\r\n\r\n\r\n this.isSaving = true;\r\n this.isSavingAssignDepo = true;\r\n this.load = true;//send product\r\n this.LastLoad = false;\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' حواله با شماره ' + dapcode + ' ثبت شد ', MessageSeverity.success);\r\n\r\n }\r\n else if (AssignmentLoadNewCode < 0 && AssignmentLoadNewCode < -1) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' دستور ارسال با شماره ' + SPCode + ' و بارگیری با شماره ' + Math.abs(AssignmentLoadNewCode) + ' ثبت شد. ', MessageSeverity.success);\r\n this.LoadNumbertxt = Math.abs(AssignmentLoadNewCode);\r\n this.onKeydownLoad(this.LoadNumbertxt);\r\n this.load = true;\r\n }\r\n else {\r\n\r\n this.loaddata();\r\n this.isAllContract = true;\r\n\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n this.DeleteSendProduct(SPCode);\r\n }\r\n\r\n }\r\n DeleteSendProduct(SPCode: number) {\r\n this.alertService.stopLoadingMessage();\r\n this.accountService.DeleteSendProduct(Number(this.authService.currentUser.phoneNumber), 5, SPCode).subscribe(\r\n res => this.alertService.showStickyMessage('Error!', 'دستور ارسال شماره ' + SPCode + ' ثبت نشد.', MessageSeverity.error),\r\n error => this.alertService.showStickyMessage('Error!', 'دستور ارسال با شماره ' + SPCode + ' ثبت شد.', MessageSeverity.error));\r\n }\r\n doSomeActionSabtSefaresh() {\r\n this.TypeModel = 0;\r\n }\r\n\r\n\r\n doSomeActionersalAndBargeri() {\r\n this.TypeModel = 1;\r\n\r\n }\r\n\r\n MethodTestPreInvoice(joker: number) {\r\n this.accountService.getPreInvoices(Number(this.authService.currentUser.phoneNumber), joker, 5, this.nccodeget)\r\n .subscribe(results => this.onDataLoadSuccessfulPreInvoice(results), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n Methodspicode(spicode: number, cmain: number) {\r\n\r\n }\r\n\r\n onDataLoadSuccessfulPreInvoice(ObjPreInvoice: PreInvoice[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n ObjPreInvoice.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1;\r\n });\r\n this.rowsPreInvoice = ObjPreInvoice;\r\n this.rowsPreInvoice.forEach((user) => {\r\n\r\n this.cName = user.cName;\r\n this.spiSubCustomerCode = user.spiSubCustomerCode;\r\n this.depoName = user.depoName;\r\n this.cPostalCode = user.cPostalCode;\r\n this.cAddress = user.cAddress;\r\n this.cPublicCode = user.cPublicCode;\r\n this.nameCity = user.nameCity;\r\n this.nameOstan = user.nameOstan;\r\n this.depoCode = user.depoCode;\r\n this.contractCode = user.contractCode;\r\n this.contractyear = user.spiYear;\r\n this.spiCode = user.spiCode;\r\n this.Csub = user.spiSubCustomerCode;\r\n this.DelayLoad = false;\r\n this.spdate = new Date(user.spiDate).toLocaleDateString('fa-IR');\r\n this.isInstallments = user.typePrice == 2 ? true : false;\r\n });\r\n\r\n }\r\n\r\n doSomeActionSabtBargeriShodeh() {\r\n this.TypeModel = 2;\r\n }\r\n\r\n\r\n\r\n MethodTestContract(con: SaleNewContract[]) {\r\n\r\n\r\n if (con) {\r\n this.con = con;\r\n this.accountService.getNewContractProduct(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget, 0).subscribe(res => this.MethodTestContractProduct(res));\r\n } else {\r\n\r\n }\r\n }\r\n\r\n\r\n MethodTestContractProduct(prod: ContractProduct[]) {\r\n this.loadingIndicator = false;\r\n this.rowsProduct = prod;\r\n prod.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n });\r\n\r\n this.rowsCacheProduct = [...prod];\r\n this.rowsProduct = prod;\r\n\r\n }\r\n\r\n Methodoorder(num: number) {\r\n this.accountService.GetSaleSelectSubBarCode(num, Number(this.authService.currentUser.phoneNumber), 5, true, this.Depocodenew)\r\n .subscribe(res => this.MethodGetOrderNumber(res));\r\n }\r\n\r\n\r\n MethodGetOrderNumber(prod: VMSelectSubOrder[]) {\r\n this.loadingIndicator = false;\r\n\r\n prod.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n this.isSaving = true;\r\n user.count = user.osCount;\r\n });\r\n this.rowsNewProductCash = [...prod];\r\n this.rowsNewProduct = prod;\r\n this.customerOrderContractList = new MatTableDataSource(prod);\r\n this.customerOrderContractList.sort = this.sort;\r\n }\r\n\r\n\r\n\r\n\r\n trackByIdx(index: number, obj: any): any {\r\n return index;\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n //this.priceEditor.changesSavedCallback = () => {\r\n\r\n //};\r\n\r\n }\r\n\r\n //onLoadcity(Ostans: City[]) {\r\n // this.allOstan = Ostans;\r\n //}\r\n\r\n //addNewCustomerToList() {\r\n // if (this.sourcePreInvoice) {\r\n // Object.assign(this.sourcePreInvoice, this.editedPreInvoice);\r\n\r\n // let sourceIndex = this.rowsCache.indexOf(this.sourcePreInvoice, 0);\r\n // if (sourceIndex > -1) {\r\n // Utilities.moveArrayItem(this.rowsCache, sourceIndex, 0);\r\n // }\r\n\r\n // sourceIndex = this.rows.indexOf(this.sourcePreInvoice, 0);\r\n // if (sourceIndex > -1) {\r\n // Utilities.moveArrayItem(this.rows, sourceIndex, 0);\r\n // }\r\n\r\n // this.editedPreInvoice = null;\r\n // this.sourcePreInvoice = null;\r\n // } else {\r\n // const user = new SaleCustomer();\r\n // Object.assign(user, this.editedPreInvoice);\r\n // this.editedPreInvoice = null;\r\n\r\n // let maxIndex = 0;\r\n // for (const u of this.rowsCache) {\r\n // if ((u as any).index > maxIndex) {\r\n // maxIndex = (u as any).index;\r\n // }\r\n // }\r\n\r\n // (user as any).index = maxIndex + 1;\r\n\r\n // this.rowsCache.splice(0, 0, user);\r\n // this.rows.splice(0, 0, user);\r\n // this.rows = [...this.rows];\r\n // }\r\n //}\r\n\r\n //onDataLoadSuccessful(ObjPreInvoice: PreInvoice[]) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.loadingIndicator = false;\r\n\r\n // ObjPreInvoice.forEach((user, index, ObjPreInvoices) => {\r\n // (user as any).index = index + 1;\r\n // });\r\n\r\n // this.rowsCache = [...ObjPreInvoice];\r\n // this.rows = ObjPreInvoice;\r\n\r\n //}\r\n\r\n //onLoadostan(Ostans: Ostan[]) {\r\n // this.allOstan = Ostans;\r\n //}\r\n\r\n newCus() {\r\n\r\n //this.PubCarobj = this.CarEditor.newCar(this.allgroup, this.allOstan);\r\n //this.editingCUser = { name: this.authService.currentUser.fullName }\r\n this.priceEditor.isNewCustomer = true;\r\n this.editorModalprice.show();\r\n }\r\n\r\n\r\n newCusdriver() {\r\n this.driverEditor.isNewCustomer = true;\r\n this.editorModalDriver.show();\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n get canAssignRoles() {\r\n return this.accountService.userHasPermission(Permission.assignRolesPermission);\r\n }\r\n\r\n get CanManagemanageContract() {\r\n return this.accountService.userHasPermission(Permission.ContractManage);\r\n }\r\n\r\n get CanAcceptContract() {\r\n return this.accountService.userHasPermission(Permission.GhabolGharardad);\r\n }\r\n\r\n get CanSendOrder() {\r\n return this.accountService.userHasPermission(Permission.AcceptContract);\r\n }\r\n\r\n get canViewCustomer() {\r\n return this.accountService.userHasPermission(Permission.ViewCustomerPermission);\r\n }\r\n\r\n get canViewCar() {\r\n return this.accountService.userHasPermission(Permission.ViewCarPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewDriver() {\r\n return this.accountService.userHasPermission(Permission.ViewDriverPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n loadError(error: any): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n\r\n\r\n\r\n onCheckValidContract(result: SaleNewContract) {\r\n if (result != null) {\r\n let isVoid = false;\r\n if (!result.ncisVoid) {\r\n if (!result.ncisAccepted) {\r\n isVoid = true;\r\n }\r\n else {\r\n this.myaccountService.GetDepoAssignmentProductForCheckVoidContract(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget).subscribe(\r\n results => {\r\n if (results != null && results.length > 0) {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('عدم ابطال', 'قرارداد شماره ' + this.nccodeget + ' قبلا تایید و برای این قرارداد ' + results.length + ' حواله صادر شده است.', MessageSeverity.error);\r\n }\r\n else {\r\n isVoid = true;\r\n }\r\n },\r\n error => { this.onCurrentUserDataLoadFailed(error); });\r\n }\r\n }\r\n else {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('عدم ابطال', 'قرارداد شماره ' + this.nccodeget + ' قبلا ابطال شده است.', MessageSeverity.error);\r\n }\r\n\r\n if (isVoid) {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.title = 'ابطال قرارداد';\r\n this.confirmMessageObj.text = ' آیا از ابطال قرارداد \\\"' + this.nccodeget + '\\\" اطمینان دارید?';\r\n this.deletedOrderConfirm = true;\r\n }\r\n }\r\n }\r\n\r\n deletedOrder(event) {\r\n this.deletedOrderConfirm = false;\r\n if (event)\r\n this.ValidContractHelper(this.nccodeget);\r\n else {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('', 'فرآیند ابطال قرارداد توسط کاربر لغو شد.', MessageSeverity.info);\r\n }\r\n }\r\n\r\n\r\n ValidContractHelper(row: any): any {\r\n\r\n this.accountService.UpdateValidContract(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget).subscribe(s => this.saveContractSuccessHelperValid(), error => this.saveFailedHelper(error));\r\n\r\n }\r\n\r\n private saveContractSuccessHelperValid(SalePreInvoice?: string) {\r\n this.accountService.SetUpdatePreinvoiceVoid(this.nccodeget, Number(this.authService.currentUser.phoneNumber), 5).subscribe(s => this.saveContractSuccessPreInvoiceHelper(), error => this.saveFailedHelper(error));\r\n }\r\n\r\n private saveContractSuccessPreInvoiceHelper(SalePreInvoice?: string) {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ` قرار داد مورد نظر ابطال شد`, MessageSeverity.success);\r\n this.isAllContract = true;\r\n this.ViewContract = false;\r\n this.loaddata();\r\n }\r\n\r\n onCheckAcceptContract(result: SaleNewContract) {\r\n if (result != null) {\r\n if (!result.ncisAccepted) {\r\n if (true) { //true\r\n this.isLoading = true;\r\n this.accountService.GetRemindWithVouchers(Number(this.authService.currentUser.phoneNumber), 5, 0, \"0\", this.nccodeget, this.Cmain, this.Csub)\r\n .subscribe(\r\n result => { this.LoadremaindVouchers(result) },\r\n error => this.loadError(error));\r\n }\r\n else {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('عدم تایید', 'از تاریخ تایید قرارداد \\\"' + this.nccodeget + '\\\" گذشته است ', MessageSeverity.error);\r\n }\r\n }\r\n else {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('عدم تایید', 'قرارداد شماره ' + this.nccodeget + ' قبلا تایید شده است.', MessageSeverity.error);\r\n }\r\n }\r\n }\r\n LoadremaindVouchers(row: remindWithVouchers[]) {\r\n if (row.length > 0) {\r\n row.forEach((user) => {\r\n if (user.remindWithVouchersKarmozd < 0) {//false\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('عدم تایید', 'شما به دلیل دارا بودن مانده بدهی برای قرار داد شماره \\\"' + this.nccodeget + '\\\" نمی توانید ثبت سفارش کنید', MessageSeverity.error);\r\n\r\n }\r\n else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.title = 'ثبت سفارش';\r\n this.confirmMessageObj.text = 'آیا می خواهید قرارداد شماره \\\"' + this.nccodeget + '\\\" را ثبت سفارش کنید?';\r\n this.insertOrderConfirm = true;\r\n\r\n //this.alertService.showDialog('آیا می خواهید قرارداد شماره \\\"' + this.nccodeget + '\\\" را ثبت سفارش کنید?', DialogType.confirm,\r\n // () => this.saveContractHelperAccept(),\r\n // () => {\r\n // this.isLoading = false;\r\n // this.alertService.stopLoadingMessage();\r\n // this.alertService.showStickyMessage('فرآیند تایید قرارداد توسط کاربر لغو شد.');\r\n // });\r\n }\r\n });\r\n } else {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('ردیفی پیدا نشد');\r\n }\r\n }\r\n\r\n\r\n insertOrder(ans: boolean) {\r\n this.insertOrderConfirm = false;\r\n if (ans) {\r\n this.saveContractHelperAccept();\r\n } else {\r\n this.isLoading = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('فرآیند تایید قرارداد توسط کاربر لغو شد.');\r\n }\r\n }\r\n\r\n\r\n private saveContractHelperAccept(SalePreInvoice?: string) {\r\n //this.accountService.GetNewCodeOrder(Number(this.authService.currentUser.phoneNumber), 5).subscribe(res => this.MethodloadNewCodeContract(res), error => this.saveFailedHelper(error));\r\n this.rowsSaleSubOrders_BarCode = [];\r\n\r\n this.alertService.startLoadingMessage('ثبت سفارش...');\r\n\r\n this.SaleOrdersObj.Mccode = this.Cmain;\r\n this.SaleOrdersObj.Sccode = this.Csub;\r\n\r\n this.con.forEach((user) => {\r\n this.SaleOrdersObj.Mccode = user.nccustomerCode;\r\n this.SaleOrdersObj.Sccode = user.ncsubCustomerCode;\r\n });\r\n this.loadingIndicator = true;\r\n this.SaleOrdersObj.OpartCode = 5;\r\n this.SaleOrdersObj.IsCanceled = false;\r\n this.SaleOrdersObj.OcontractNum = this.nccodeget;\r\n this.SaleOrdersObj.OcontractYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleOrdersObj.OcreditFrom = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleOrdersObj.OcreditTo = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleOrdersObj.Odate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleOrdersObj.OgetWay = 1;\r\n this.SaleOrdersObj.OorderNum = 0;\r\n this.SaleOrdersObj.OorderWay = 1;\r\n this.SaleOrdersObj.OproIdea = \"\";\r\n this.SaleOrdersObj.Oyear = Number(this.authService.currentUser.phoneNumber);\r\n\r\n\r\n this.rowsProduct.forEach(async (user) => {\r\n var selectSaleSubOrders_BarCode = new VMSaleSubOrders_BarCode();\r\n selectSaleSubOrders_BarCode.OorderNum = 0;\r\n selectSaleSubOrders_BarCode.OpartCode = 5;\r\n selectSaleSubOrders_BarCode.Oscount = user.ncpAmount;\r\n selectSaleSubOrders_BarCode.Osdes = \"\";\r\n selectSaleSubOrders_BarCode.Oyear = Number(this.authService.currentUser.phoneNumber);\r\n selectSaleSubOrders_BarCode.Pcode = user.ncpProductCode;\r\n selectSaleSubOrders_BarCode.barCode = user.barCode == null || user.barCode == 'undefined' ? '-' : user.barCode;\r\n //await this.accountService.newSaleSubOrders(this.SaleSubOrdersObj).subscribe(s => this.savesuccess(s), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n this.rowsSaleSubOrders_BarCode.push(selectSaleSubOrders_BarCode);\r\n this.rowsSaleSubOrders_BarCode = [...this.rowsSaleSubOrders_BarCode];\r\n });\r\n\r\n this.VMSelectSaleSubOrder_BarCode.saleOrder = this.SaleOrdersObj;\r\n this.VMSelectSaleSubOrder_BarCode.rowsNewProduct = [...this.rowsSaleSubOrders_BarCode];\r\n this.VMSelectSaleSubOrder_BarCode.code = 0;\r\n\r\n this.accountService.GetNewSaleOrder(this.VMSelectSaleSubOrder_BarCode).subscribe(s => this.saveContractSuccessSubOrderHelper(s), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n }\r\n\r\n async MethodloadNewCodeContract(loadNewCode: number) {\r\n\r\n this.alertService.startLoadingMessage('ثبت سفارش...');\r\n this.con.forEach((user) => {\r\n this.SaleOrdersObj.Mccode = user.nccustomerCode;\r\n this.SaleOrdersObj.Sccode = user.ncsubCustomerCode;\r\n });\r\n this.loadingIndicator = true;\r\n this.SaleOrdersObj.OpartCode = 5;\r\n this.SaleOrdersObj.IsCanceled = false;\r\n this.SaleOrdersObj.OcontractNum = this.nccodeget;\r\n this.SaleOrdersObj.OcontractYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleOrdersObj.OcreditFrom = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleOrdersObj.OcreditTo = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleOrdersObj.Odate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleOrdersObj.OgetWay = 1;\r\n this.SaleOrdersObj.OorderNum = loadNewCode;\r\n this.SaleOrdersObj.OorderWay = 1;\r\n this.SaleOrdersObj.OproIdea = \"\";\r\n this.SaleOrdersObj.Oyear = Number(this.authService.currentUser.phoneNumber);\r\n await this.accountService.newSaleOrdes(this.SaleOrdersObj).subscribe(s => this.saveContractSuccessHelper(loadNewCode), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n\r\n private saveContractSuccessHelper(loadNewCode: number) {\r\n this.rowsProduct.forEach(async (user) => {\r\n this.SaleSubOrdersObj.OorderNum = loadNewCode;\r\n this.SaleSubOrdersObj.OpartCode = 5;\r\n this.SaleSubOrdersObj.Oscount = user.ncpAmount;\r\n this.SaleSubOrdersObj.Osdes = \"\";\r\n this.SaleSubOrdersObj.Oyear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleSubOrdersObj.Pcode = user.ncpProductCode;\r\n this.SaleSubOrdersObj.barCode = user.barCode == null || user.barCode == 'undefined' ? '-' : user.barCode;\r\n await this.accountService.newSaleSubOrders(this.SaleSubOrdersObj).subscribe(s => this.myCompanyService.saveSuccessHelper(s), error => this.myCompanyService.saveFailedHelper(error));\r\n });\r\n\r\n this.saveContractSuccessSubOrderHelper(loadNewCode);\r\n\r\n //this.con.forEach(async (user) => {\r\n\r\n // if (user.ncsubCustomerCode != 1) {\r\n\r\n // this.accountService.GetSaleContractToInvoiceSelect(Number(this.authService.currentUser.phoneNumber), user.ncyear, user.nccode, 5)\r\n // .subscribe(\r\n // vb =>\r\n // this.accountService.GetNewCodeInvoice(Number(this.authService.currentUser.phoneNumber))\r\n // .subscribe(res => this.LoadNewCodeInvoice(res, user, vb),\r\n // error => this.onDataLoadFailed(error))\r\n // );\r\n\r\n // }\r\n\r\n //});\r\n\r\n\r\n }\r\n\r\n private CheckBarcode(loadNewCode: number, NumberOrder: number) {\r\n\r\n this.rowsProduct.forEach(async (item) => {\r\n\r\n if (item.barCode != null && item.barCode != 'undefined' && item.barCode != '-' && item.barCode != item.ncpProductCode) {\r\n\r\n this.IsExistBarcodes = true;\r\n var selectSubOrder = new VMSelectSubOrder();\r\n selectSubOrder.barCode = item.barCode == null || item.barCode == 'undefined' ? '-' : item.barCode;\r\n selectSubOrder.ContractRemind = item.remind;\r\n selectSubOrder.count = item.ncpAmount;\r\n selectSubOrder.DCHeight = 0;\r\n selectSubOrder.DCLong = 0;\r\n selectSubOrder.DCweight = 0;\r\n selectSubOrder.DCwidth = 0;\r\n selectSubOrder.OOrderNum = NumberOrder;\r\n selectSubOrder.OPartCode = 5;\r\n selectSubOrder.orderCount = item.ncpAmount;\r\n selectSubOrder.osCount = item.ncpAmount;\r\n selectSubOrder.OSDes = \"\";\r\n selectSubOrder.OYear = Number(this.authService.currentUser.phoneNumber);\r\n selectSubOrder.pCode = item.ncpProductCode;\r\n selectSubOrder.productName = item.productName;\r\n selectSubOrder.Remind = item.remind;\r\n selectSubOrder.rmindMajazi = 0;\r\n selectSubOrder.Unit = item.productUnit;\r\n\r\n this.rowsNewProduct_Order.push(selectSubOrder);\r\n this.rowsNewProduct_Order = [...this.rowsNewProduct_Order];\r\n\r\n\r\n }\r\n\r\n });\r\n\r\n var saleSendProduct = new SaleSendProduct();\r\n saleSendProduct.CarCode = 1331;\r\n saleSendProduct.IsAccepted = true;\r\n saleSendProduct.IsCancel = false;\r\n saleSendProduct.IsRemainCanceled = false;\r\n saleSendProduct.SmsNumber = \"\";\r\n saleSendProduct.SpAdress = \"درب فروشگاه\";\r\n //saleSendProduct.SpartCode = item.nCPPartCode;\r\n saleSendProduct.SpartCode = 5;\r\n saleSendProduct.Spcode = 0;\r\n saleSendProduct.Spdate = this.serverDate.toLocaleDateString('en-US');\r\n saleSendProduct.SpdepoCode = Number(this.Depocodenew);\r\n saleSendProduct.Spfor = \"آدرس مشتری\";\r\n saleSendProduct.SpnumberOrder = NumberOrder;\r\n saleSendProduct.Spyear = Number(this.authService.currentUser.phoneNumber);\r\n\r\n\r\n this.VMSelectSubOrder_Order.saleSendProduct = saleSendProduct;\r\n this.VMSelectSubOrder_Order.rowsNewProduct = [...this.rowsNewProduct_Order];\r\n this.VMSelectSubOrder_Order.contractCode = this.nccodeget;\r\n\r\n }\r\n\r\n saveOrderSuccessHelper(orderNewCode: number) {\r\n var ordercode: string = orderNewCode.toLocaleString();\r\n\r\n this.loaddata();\r\n this.isAllContract = true;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' قرارداد شماره ' + this.nccodeget + ' تایید و سفارش با شماره ' + ordercode + ' ثبت شد ', MessageSeverity.success);\r\n\r\n }\r\n private saveContractSuccessSubOrderHelper(orderNewCode: number) {\r\n if (this.IsAssignment) {\r\n this.CheckBarcode(this.nccodeget, orderNewCode);\r\n\r\n if (this.IsExistBarcodes) {\r\n var ordercode: string = orderNewCode.toLocaleString();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' قرارداد شماره ' + this.nccodeget + ' تایید و سفارش با شماره ' + ordercode + ' ثبت شد ', MessageSeverity.success);\r\n this.alertService.startLoadingMessage('صدور حواله...');\r\n this.accountService.GetNewAssignmentLoadingNextAccept(this.VMSelectSubOrder_Order).subscribe(s => this.saveNewAssignmentLoadingNextAcceptHelper(s, orderNewCode), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n }\r\n else {\r\n //this.accountService.UpdateAcceptContract(Number(this.authService.currentUser.phoneNumber), 5, this.nccodeget).subscribe(s => this.saveOrderSuccessHelper(orderNewCode), error => this.saveFailedHelper(error));\r\n this.saveOrderSuccessHelper(orderNewCode);\r\n\r\n }\r\n }\r\n else {\r\n this.saveOrderSuccessHelper(orderNewCode);\r\n }\r\n }\r\n private saveNewAssignmentLoadingNextAcceptHelper(AssignmentLoadNewCode: number, orderNewCode: number) {\r\n\r\n this.loaddata();\r\n this.isAllContract = true;\r\n this.isLoading = false;\r\n\r\n var dapcode: string = String(AssignmentLoadNewCode);\r\n if (AssignmentLoadNewCode > 0) {\r\n this.isSaving = true;\r\n this.isSavingAssignDepo = true;\r\n this.load = true;//send product\r\n this.LastLoad = false;\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ' حواله با شماره ' + dapcode + ' ثبت شد ', MessageSeverity.success);\r\n\r\n }\r\n else {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Error!', 'متاسفانه حواله ثبت نشد، بعد از بررسی مجددا اقدام نمایید. ', MessageSeverity.error);\r\n this.DeleteOrder(orderNewCode);\r\n }\r\n\r\n }\r\n DeleteOrder(orderNewCode: number) {\r\n this.alertService.stopLoadingMessage();\r\n this.accountService.DeleteOrder(Number(this.authService.currentUser.phoneNumber), 5, orderNewCode).subscribe(res => this.alertService.showStickyMessage('Error!', 'سفارش شماره ' + orderNewCode + ' ثبت نشد.', MessageSeverity.error),\r\n error => this.alertService.showStickyMessage('Error!', 'سفارش با شماره ' + orderNewCode + ' ثبت شد.', MessageSeverity.error));\r\n }\r\n\r\n LoadNewCodeInvoice(res: number, obj: SaleNewContract, ObjMoney: SaleContractToInvoiceSelectResult[]): void {\r\n this.SaleInvoiceObj.icode = res;\r\n this.SaleInvoiceObj.icontractCode = obj.nccode;\r\n this.SaleInvoiceObj.icontractYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleInvoiceObj.idate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleInvoiceObj.idesc = \"ثبت فاکتور از فروشگاه-وب\";\r\n this.SaleInvoiceObj.iisVoid = false;\r\n this.SaleInvoiceObj.ikind = 1;\r\n this.SaleInvoiceObj.imainCustomerCode = obj.nccustomerCode;\r\n this.SaleInvoiceObj.ipartCode = 5;\r\n this.SaleInvoiceObj.ipayType = \"\";\r\n this.SaleInvoiceObj.iremarks = \"\";\r\n this.SaleInvoiceObj.iseller = \"\";\r\n this.SaleInvoiceObj.isellerCode = 0;\r\n this.SaleInvoiceObj.isubCustomerCode = obj.ncsubCustomerCode;\r\n let letSumAfterDiscount = 0;\r\n let letsumDiscount = 0;\r\n let letsumPrice = 0;\r\n let lettaxandDuties = 0;\r\n let letIpayment = 0;\r\n ObjMoney.forEach(async (use, index) => {\r\n letSumAfterDiscount = letSumAfterDiscount + use.sumAfterDiscount;\r\n letsumDiscount = letsumDiscount + use.sumDiscount;\r\n letsumPrice = letsumPrice + use.sumPriceAll;\r\n lettaxandDuties = lettaxandDuties + use.taxAndDuties;\r\n letIpayment = letIpayment + use.sumContractPay;\r\n this.SaleInvoiceDetailModel = new SaleInvoiceDetail();\r\n this.SaleInvoiceDetailModel.idyear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleInvoiceDetailModel.idcode = res;\r\n this.SaleInvoiceDetailModel.iddiscount = use.sumDiscount;\r\n this.SaleInvoiceDetailModel.idid = index;\r\n this.SaleInvoiceDetailModel.idproductCode = use.dapddcCode;\r\n this.SaleInvoiceDetailModel.idtax = use.taxAndDuties;\r\n this.SaleInvoiceDetailModel.idtotalAfterDiscount = use.sumAfterDiscount;\r\n this.SaleInvoiceDetailModel.idtotalPayment = use.sumContractPay;\r\n this.SaleInvoiceDetailModel.idtotalPrice = use.sumPriceAll;\r\n this.SaleInvoiceDetailModel.idunitPrice = use.ncpPrice;\r\n this.SaleInvoiceDetailModel.idamount = use.sumForRegist;\r\n this.alldetail.push(this.SaleInvoiceDetailModel);\r\n });\r\n this.SaleInvoiceObj.saleInvoiceDetail = this.alldetail;\r\n\r\n this.SaleInvoiceObj.isumAfterDiscount = letSumAfterDiscount;\r\n this.SaleInvoiceObj.isumDiscount = letsumDiscount;\r\n this.SaleInvoiceObj.isumPrice = letsumPrice;\r\n this.SaleInvoiceObj.itax = lettaxandDuties;\r\n this.SaleInvoiceObj.ipayment = letIpayment;\r\n this.SaleInvoiceObj.iuserCode = 1;\r\n this.SaleInvoiceObj.iyear = Number(this.authService.currentUser.phoneNumber);\r\n\r\n\r\n\r\n\r\n\r\n\r\n this.accountService.InsertSaleInvoice(this.SaleInvoiceObj).subscribe(s => this.SaveSaleInvoiceSuccess(s), error => this.saveFailedHelper(error));\r\n }\r\n SaveSaleInvoiceSuccess(tre): void {\r\n\r\n this.loaddata();\r\n this.isAllContract = true;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', ` سفارش با موفقیت ثبت شد`, MessageSeverity.success);\r\n //this.accountService.InsertSaleInvoiceDetail(this.SaleInvoiceDetailobj)\r\n }\r\n\r\n OrderSend(row: ContractProduct) {\r\n }\r\n\r\n onChangeCar(num: number) {\r\n this.CarCode = num;\r\n this.accountService.getPubDrivers(this.CarCode).subscribe(results => this.onCurrentUserDataLoadDriverSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n onChangedriver(num: number) {\r\n this.DriverCode = num;\r\n }\r\n onEditorModalHidden() {\r\n this.billEditor.rowsINV = [];\r\n this.billEditor.rowsCachINV = [];\r\n this.billEditor.rowsINV_String = [];\r\n //this.showbarcodesEditor.resetData();\r\n this.showkardexEditor.resetData();\r\n }\r\n\r\n\r\n\r\n cancel() {\r\n //this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n\r\n @ViewChild('showkardexEditor', { static: false })\r\n showkardexEditor: WarehouseStoreInfoKardexRemaindMajaziComponent;\r\n\r\n @ViewChild('editorModalshowkardex', { static: true })\r\n editorModalshowkardex: ModalDirective;\r\n\r\n ShowKardex(row: VMSelectSubOrder) {\r\n this.showkardexEditor.VMSelectSubOrderObj = row;\r\n this.showkardexEditor.ncCode = this.contractCode;\r\n this.showkardexEditor.sPIPartCode = 5;\r\n this.showkardexEditor.productcode = row.pCode;\r\n this.showkardexEditor.productname = row.productName;\r\n this.showkardexEditor.productUOM = row.Unit;\r\n this.showkardexEditor.depocode = this.depoCode.toString();\r\n this.showkardexEditor.loadingIndicator = true;\r\n this.showkardexEditor.isGeneralEditor = true;\r\n\r\n this.showkardexEditor.loadKardexProduct();\r\n this.editorModalshowkardex.show();\r\n }\r\n\r\n onActivate(event) {\r\n }\r\n\r\n showWarhouse() {\r\n this.editorModalShowWarehouse.show();\r\n }\r\n\r\n checkoutCashDeskStatus(cMainCode: number) {\r\n let dateOfNow = this.serverDate.toLocaleDateString('en').split('/').join('-');\r\n return this.cashDeskService.allCheckoutCashDesks(cMainCode, dateOfNow, dateOfNow);\r\n // .subscribe(\r\n // (res: CheckoutCashDeskModel[]) => {\r\n // this.checkoutCashDeskInDate = res;\r\n // }\r\n //)\r\n }\r\n\r\n showCheckoutConfirm(event: boolean) {\r\n this.checkoutConfirm = event;\r\n }\r\n\r\n changeColor(value) {\r\n return this.colorSettingsService.changeColor(value);\r\n }\r\n}\r\n","import { HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class BaseService {\r\n\r\n headers = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Accept': 'application/json,text/plain, */*',\r\n 'Access-Control-Allow-Headers': 'Content-Type'\r\n })\r\n };\r\n\r\n\r\n constructor() {\r\n }\r\n}\r\n","import { MatTableDataSource } from \"@angular/material/table\";\r\nimport { CashUser } from \"../CashUser.model\";\r\nimport { VMReportCashierResult } from \"../VMReportCashierResult.model\";\r\nimport { VMReportReciptCashierResult } from \"../VMReportReciptCashierResult.model\";\r\n\r\nexport class ReportSaleCashDeskModel {\r\n ncIsAccepted: boolean;\r\n ncIsVoid: boolean;\r\n allremain: number;\r\n cashUsers: CashUser[];\r\n customerCode: number;\r\n customerName: string;\r\n totalCredit: number;\r\n totalDebt: number;\r\n reportReciptsSaleReciptCash: VMReportReciptCashierResult[];\r\n reportContractsSaleReciptCash: MatTableDataSource;\r\n}\r\n","import { RequestInvoiceProduct } from './RequestInvoiceProduct.model';\r\n\r\nexport class RequestInvoice {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(reqYear?: number, reqCode?: number, reqDealercode?: string, requestInvoiceProducts?: RequestInvoiceProduct[]\r\n , reqDatetime?: string\r\n , reqStatus?: string\r\n , reqIduser?: string\r\n , reqMoney?: number\r\n , reqTax?: number\r\n , reqAllMoney?: number\r\n , reqInvoiceNumber?: number\r\n , reqDiscount?: number\r\n , reqDiscountMoney?: number\r\n , reqType?: number\r\n , RevertInvoiceNumber?: number\r\n ) {\r\n this.reqYear = reqYear;\r\n this.reqCode = reqCode;\r\n this.reqDealercode = reqDealercode;\r\n this.reqDatetime = reqDatetime;\r\n this.reqStatus = reqStatus;\r\n this.reqIduser = reqIduser;\r\n this.reqMoney = reqMoney;\r\n this.reqTax = reqTax;\r\n this.reqAllMoney = reqAllMoney;\r\n this.reqInvoiceNumber = reqInvoiceNumber;\r\n this.reqDiscount = reqDiscount;\r\n this.reqDiscountMoney = reqDiscountMoney;\r\n this.reqType = reqType;\r\n this.RevertInvoiceNumber = RevertInvoiceNumber;\r\n this.requestInvoiceProducts = requestInvoiceProducts\r\n }\r\n public reqYear: number;\r\n public reqCode: number;\r\n public reqDealercode: string;\r\n public reqDatetime: string;\r\n public reqStatus: string;\r\n public reqIduser: string;\r\n public reqMoney: number;\r\n public reqTax: number;\r\n public reqAllMoney: number;\r\n public reqInvoiceNumber: number;\r\n public reqDiscount: number;\r\n public reqDiscountMoney: number;\r\n public reqType: number;\r\n public RevertInvoiceNumber: number;\r\n public requestInvoiceProducts: RequestInvoiceProduct[] = [];\r\n}\r\n","export default __webpack_public_path__ + \"logo.png\";","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\r\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'not-found',\n templateUrl: './not-found.component.html',\n styleUrls: ['./not-found.component.scss'],\n animations: [fadeInOut]\n})\nexport class NotFoundComponent {\n\n constructor(public router: Router) { }\n}\n","\n\n
\n
\n
\n
\n
\n
\n

404

\n
\n
\n

\n به نظر می رسد گم شده اید.\n

\n

صفحه ای که به دنبال آن هستید در دسترس نیست.

\n بازگشت به صفحه اصلی\n
\n
\n
\n
\n
\n
\n","\r\nimport { DateAdapter } from \"@angular/material/core\";\r\nimport * as jalaliMoment from \"jalali-moment\";\r\n\r\nexport const PERSIAN_DATE_FORMATS = {\r\n parse: {\r\n dateInput: \"jYYYY/jMM/jDD\"\r\n },\r\n display: {\r\n dateInput: \"jYYYY/jMM/jDD\",\r\n monthYearLabel: \"jYYYY jMMMM\",\r\n dateA11yLabel: \"jYYYY/jMM/jDD\",\r\n monthYearA11yLabel: \"jYYYY jMMMM\"\r\n }\r\n};\r\n\r\nexport class MaterialPersianDateAdapter extends DateAdapter {\r\n\r\n constructor() {\r\n super();\r\n super.setLocale(\"fa\");\r\n }\r\n\r\n getYear(date: jalaliMoment.Moment): number {\r\n return this.clone(date).jYear();\r\n }\r\n\r\n getMonth(date: jalaliMoment.Moment): number {\r\n return this.clone(date).jMonth();\r\n }\r\n\r\n getDate(date: jalaliMoment.Moment): number {\r\n return this.clone(date).jDate();\r\n }\r\n\r\n getDayOfWeek(date: jalaliMoment.Moment): number {\r\n return this.clone(date).day();\r\n }\r\n\r\n getMonthNames(style: \"long\" | \"short\" | \"narrow\"): string[] {\r\n switch (style) {\r\n case \"long\":\r\n case \"short\":\r\n return jalaliMoment.localeData(\"fa\").jMonths().slice(0);\r\n case \"narrow\":\r\n return jalaliMoment.localeData(\"fa\").jMonthsShort().slice(0);\r\n }\r\n }\r\n\r\n getDateNames(): string[] {\r\n const valuesArray = Array(31);\r\n for (let i = 0; i < 31; i++) {\r\n valuesArray[i] = String(i + 1);\r\n }\r\n return valuesArray;\r\n }\r\n\r\n getDayOfWeekNames(style: \"long\" | \"short\" | \"narrow\"): string[] {\r\n switch (style) {\r\n case \"long\":\r\n return jalaliMoment.localeData(\"fa\").weekdays().slice(0);\r\n case \"short\":\r\n return jalaliMoment.localeData(\"fa\").weekdaysShort().slice(0);\r\n case \"narrow\":\r\n return [\"ی\", \"د\", \"س\", \"چ\", \"پ\", \"ج\", \"ش\"];\r\n }\r\n }\r\n\r\n getYearName(date: jalaliMoment.Moment): string {\r\n return this.clone(date).jYear().toString();\r\n }\r\n\r\n getFirstDayOfWeek(): number {\r\n return jalaliMoment.localeData(\"fa\").firstDayOfWeek();\r\n }\r\n\r\n getNumDaysInMonth(date: jalaliMoment.Moment): number {\r\n return this.clone(date).jDaysInMonth();\r\n }\r\n\r\n clone(date: jalaliMoment.Moment): jalaliMoment.Moment {\r\n return date.clone().locale(\"fa\");\r\n }\r\n\r\n createDate(year: number, month: number, date: number): jalaliMoment.Moment {\r\n if (month < 0 || month > 11) {\r\n throw Error(\r\n `Invalid month index \"${month}\". Month index has to be between 0 and 11.`\r\n );\r\n }\r\n if (date < 1) {\r\n throw Error(`Invalid date \"${date}\". Date has to be greater than 0.`);\r\n }\r\n const result = jalaliMoment()\r\n .jYear(year).jMonth(month).jDate(date)\r\n .hours(0).minutes(0).seconds(0).milliseconds(0)\r\n .locale(\"fa\");\r\n\r\n if (this.getMonth(result) !== month) {\r\n throw Error(`Invalid date ${date} for month with index ${month}.`);\r\n }\r\n if (!result.isValid()) {\r\n throw Error(`Invalid date \"${date}\" for month with index \"${month}\".`);\r\n }\r\n return result;\r\n }\r\n\r\n today(): jalaliMoment.Moment {\r\n return jalaliMoment().locale(\"fa\");\r\n }\r\n\r\n parse(value: any, parseFormat: string | string[]): jalaliMoment.Moment | null {\r\n if (value && typeof value === \"string\") {\r\n return jalaliMoment(value, parseFormat, \"fa\");\r\n }\r\n return value ? jalaliMoment(value).locale(\"fa\") : null;\r\n }\r\n\r\n format(date: jalaliMoment.Moment, displayFormat: string): string {\r\n date = this.clone(date);\r\n if (!this.isValid(date)) {\r\n throw Error(\"JalaliMomentDateAdapter: Cannot format invalid date.\");\r\n }\r\n return date.format(displayFormat);\r\n }\r\n\r\n addCalendarYears(date: jalaliMoment.Moment, years: number): jalaliMoment.Moment {\r\n return this.clone(date).add(years, \"jYear\");\r\n }\r\n\r\n addCalendarMonths(date: jalaliMoment.Moment, months: number): jalaliMoment.Moment {\r\n return this.clone(date).add(months, \"jmonth\");\r\n }\r\n\r\n addCalendarDays(date: jalaliMoment.Moment, days: number): jalaliMoment.Moment {\r\n return this.clone(date).add(days, \"jDay\");\r\n }\r\n\r\n toIso8601(date: jalaliMoment.Moment): string {\r\n return this.clone(date).format();\r\n }\r\n\r\n isDateInstance(obj: any): boolean {\r\n return jalaliMoment.isMoment(obj);\r\n }\r\n\r\n isValid(date: jalaliMoment.Moment): boolean {\r\n return this.clone(date).isValid();\r\n }\r\n\r\n invalid(): jalaliMoment.Moment {\r\n return jalaliMoment.invalid();\r\n }\r\n\r\n deserialize(value: any): jalaliMoment.Moment | null {\r\n let date;\r\n if (value instanceof Date) {\r\n date = jalaliMoment(value);\r\n }\r\n if (typeof value === \"string\") {\r\n if (!value) {\r\n return null;\r\n }\r\n date = jalaliMoment(value).locale(\"fa\");\r\n }\r\n if (date && this.isValid(date)) {\r\n return date;\r\n }\r\n return super.deserialize(value);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { Role } from '../models/role.model';\r\nimport { Router } from '@angular/router';\r\nimport { AlertService, MessageSeverity } from './alert.service';\r\nimport { Utilities } from './utilities';\r\nimport { LocalStoreManager } from './local-store-manager.service';\r\n\r\nexport type RolesChangedOperation = 'add' | 'delete' | 'modify';\r\nexport interface RolesChangedEventArg { roles: Role[] | string[]; operation: RolesChangedOperation; }\r\n\r\n@Injectable()\r\nexport class MyCompanyService {\r\n public static readonly roleAddedOperation: RolesChangedOperation = 'add';\r\n public static readonly roleDeletedOperation: RolesChangedOperation = 'delete';\r\n public static readonly roleModifiedOperation: RolesChangedOperation = 'modify';\r\n\r\n constructor(private alertService: AlertService,\r\n private authService: AuthService,\r\n private router: Router,\r\n private localStorage: LocalStoreManager) {}\r\n\r\n Refresh(): void {\r\n window.location.reload();\r\n }\r\n\r\n Goto(url: string) {\r\n this.router.navigate([url]);\r\n }\r\n\r\n onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`, MessageSeverity.error, error);\r\n\r\n }\r\n\r\n saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n\r\n saveSuccessHelper(res: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Success', 'The below Messages occured whilst saving your changes:', MessageSeverity.success, res);\r\n this.alertService.showStickyMessage(res, null, MessageSeverity.error);\r\n }\r\n\r\n checklogin(): any {\r\n this.alertService.startLoadingMessage();\r\n if (!this.authService.isSessionExpired) {\r\n return true;\r\n }\r\n else {\r\n this.alertService.showMessage('پایان مدت زمان ورود', 'لطفا مجددا به حساب کاربری خود وارد شوید!', MessageSeverity.warn);\r\n this.localStorage.deleteData('AUTH:access_token');\r\n this.router.navigate(['/login'])\r\n return false;\r\n }\r\n }\r\n\r\n\r\n}\r\n","
\r\n \r\n
\r\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'personal-information-info',\n templateUrl: './personal-information-info.component.html'\n})\nexport class PersonalInformationInfoComponent {\n public loadingIndicator = true;\n public rows: any[] = [];\n public columns = [];\n}\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpRequest, HttpEvent } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FileUploadService {\r\n private baseUrl = 'http://my-backend.com';\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n upload(file: File): Observable> {\r\n const formData: FormData = new FormData();\r\n\r\n formData.append('file', file);\r\n\r\n const req = new HttpRequest('POST', `${this.baseUrl}/file-upload`, formData, {\r\n reportProgress: true,\r\n responseType: 'json'\r\n });\r\n\r\n return this.http.request(req);\r\n }\r\n\r\n getFiles(): Observable {\r\n return this.http.get(`${this.baseUrl}/files`);\r\n }\r\n}\r\n","import { Component, OnInit, ViewChild, Input, TemplateRef } from '@angular/core';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport * as moment from 'jalali-moment';\r\nimport { error } from 'jquery';\r\nimport { Router } from '@angular/router';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { WareHouseResult } from '../../models/WareHouseResult.model';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { View_BarcodeInDepo } from '../../models/View_BarcodeInDepo.model';\r\nimport { WareHouseKardexRemaindMajaziResult } from '../../models/WareHouseKardexRemaindMajaziResult.model';\r\nimport { VMSelectSubOrder } from '../../models/VMSelectSubOrder.model';\r\n\r\n@Component({\r\n selector: 'warehousestore-info-kardex-remaind-majazi',\r\n templateUrl: './warehousestore-info-kardex-remaind-majazi.component.html'\r\n})\r\nexport class WarehouseStoreInfoKardexRemaindMajaziComponent {\r\n public isSelect = false;\r\n\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n\r\n public isEditMode = true;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public formResetToggle = true;\r\n columns: any[] = [];\r\n group = '';\r\n\r\n public depocode: string = \"\";\r\n public productcode: string = \"\";\r\n public productname: string = \"\";\r\n public productUOM: string = \"\";\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public VMSelectSubOrderObj: VMSelectSubOrder = new VMSelectSubOrder();\r\n public ListBarcodesObj: WareHouseKardexRemaindMajaziResult[] = [];\r\n loadingIndicator: boolean;\r\n rowsCach: WareHouseKardexRemaindMajaziResult[] = [];\r\n rows: WareHouseKardexRemaindMajaziResult[] = []; \r\n serverDate: Date;\r\n public ncCode: number;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n \r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService, private translationService: AppTranslationService, private myCompanyService: MyCompanyService\r\n , private myaccountService: MyAccountService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n this.LoadForm();\r\n }\r\n LoadForm() {\r\n if (!this.isGeneralEditor) {\r\n\r\n }\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n {\r\n prop: 'index', name: 'ردیف', width: 50, cellTemplate: this.indexTemplate,\r\n canAutoResize: false\r\n },\r\n { prop: 'date', name: gT('تاریخ'), width: 130 },\r\n { prop: 'spiCode', name: gT('شماره پیش فاکتور'), width: 350 },\r\n { prop: 'ncCode', name: gT('شماره قرارداد'), width: 200 },\r\n { prop: 'ncpAmount', name: gT('مقدار سفارش'), width: 200, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'ncStatusString', name: gT('وضعیت'), width: 200 },\r\n ];\r\n this.columns.push({ name: '', width: 160, resizeable: false, cellTemplate: this.actionsTemplate, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n } \r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n loadKardexProduct() {\r\n this.myaccountService.GetContractsDetailsForRemindMajaziKardexProductSelect(Number(this.authService.currentUser.phoneNumber), this.sPIPartCode, Number(this.depocode), this.productcode, this.ncCode).subscribe(results => this.GetKardexProductSelectSuccess(results), error => this.onCurrentUserDataLoadFailed(error));\r\n\r\n }\r\n\r\n private GetKardexProductSelectSuccess(list: WareHouseKardexRemaindMajaziResult[]) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n list.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1; \r\n });\r\n \r\n\r\n this.rowsCach = [...list];\r\n this.rows = list;\r\n\r\n }\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n } else {\r\n }\r\n this.resetData();\r\n //this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n }\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n //this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n reset() {\r\n //this.rowsCach = [];\r\n this.rows = [];\r\n this.isEditMode = false;\r\n this.sPIPartCode = 0;\r\n this.ncCode = 0; \r\n }\r\n resetData() {\r\n this.reset();\r\n this.LoadForm();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
کد کالا: {{productcode}}
\r\n
\r\n
\r\n
\r\n
\r\n
واحد کالا: {{productUOM}}
\r\n
\r\n
\r\n
\r\n
\r\n
نام کالا: {{productname}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{value}}\r\n \r\n\r\n \r\n {{group}}\r\n \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 \nimport { GetDepoAssignmentWithSerialResult } from './GetDepoAssignmentWithSerialResult.model';\nimport { DepoRevertToDepoCustomer } from './DepoRevertToDepoCustomer.model';\n\nexport class VMDepoRevertToDepoCustomers {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(depoRevertObj?: DepoRevertToDepoCustomer, rowSerial?: GetDepoAssignmentWithSerialResult[], isExistInvoice?: boolean) {\n\n this.depoRevertObj = depoRevertObj;\n this.rowSerial = rowSerial;\n this.isExistInvoice = isExistInvoice;\n\n }\n \n public depoRevertObj: DepoRevertToDepoCustomer = new DepoRevertToDepoCustomer();\n public rowSerial: GetDepoAssignmentWithSerialResult[] = [];\n public isExistInvoice: boolean;\n\n}\n","\n\nexport class SaleOrders {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(OpartCode?: number, OorderNum?: number, Oyear?: number, Mccode?: number, Sccode?: number, OcontractNum?: number, OcontractYear?: number, Odate?: string, OorderWay?: number, OproIdea?: string, IsCanceled?: boolean, OcreditFrom?: string, OcreditTo?: string, OgetWay?: number) {\n this.OpartCode = OpartCode;\n this.OorderNum = OorderNum;\n this.Oyear = Oyear;\n this.Mccode = Mccode;\n this.Sccode = Sccode;\n this.OcontractNum = OcontractNum;\n this.OcontractYear = OcontractYear;\n this.Odate = Odate;\n this.OorderWay = OorderWay;\n this.OproIdea = OproIdea;\n this.IsCanceled = IsCanceled;\n this.OcreditFrom = OcreditFrom;\n this.OcreditTo = OcreditTo;\n this.OgetWay = OgetWay;\n }\n public OpartCode: number;\n public OorderNum: number;\n public Oyear: number;\n public Mccode: number;\n public Sccode: number;\n public OcontractNum: number;\n public OcontractYear: number;\n public Odate: string;\n public OorderWay: number;\n public OgetWay: number;\n public OproIdea: string;\n public IsCanceled: boolean;\n public OcreditFrom: string;\n public OcreditTo: string;\n}\n","export default __webpack_public_path__ + \"banner1.png\";","export default __webpack_public_path__ + \"banner2.png\";","import { Component, ViewChild, ElementRef, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'search-box',\n templateUrl: './search-box.component.html',\n styleUrls: ['./search-box.component.scss']\n})\nexport class SearchBoxComponent {\n\n @Input()\n placeholder = 'Search...';\n\n @Output()\n searchChange = new EventEmitter();\n\n @ViewChild('searchInput', { static: true })\n searchInput: ElementRef;\n\n onValueChange(value: string) {\n setTimeout(() => this.searchChange.emit(value));\n }\n clear() {\n this.searchInput.nativeElement.value = '';\n this.onValueChange(this.searchInput.nativeElement.value);\n }\n}\n","
\n \n \n \n
\n","\n \nimport { DepoAssignmentProduct } from \"./DepoAssignmentProduct.model\";\nimport { VMDepoAssignmentProductDetail_BarCode } from \"./VMDepoAssignmentProductDetail_BarCode.model\"; \n\nexport class VMSelectDepoAssignmentProductDetail_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(depoAssignmentProduct?: DepoAssignmentProduct, rowsNewProduct?: VMDepoAssignmentProductDetail_BarCode[], code?: number) {\n\n this.depoAssignmentProduct = depoAssignmentProduct;\n this.rowsNewProduct = rowsNewProduct;\n this.code = code;\n\n }\n\n public depoAssignmentProduct: DepoAssignmentProduct = new DepoAssignmentProduct();\n public rowsNewProduct: VMDepoAssignmentProductDetail_BarCode[] = [];\n public code: number;\n\n}\n","import { Component, ViewChild, OnInit } from '@angular/core';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ReportAllSite } from '../../models/ReportAllSite.model';\r\nimport * as moment from 'jalali-moment';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'report-contract',\r\n templateUrl: './report-contract.component.html',\r\n styleUrls: ['./report-contract.component.scss']\r\n})\r\nexport class reportcontractComponent implements OnInit {\r\n public displayedColumns: string[] = ['ncCode', 'index', 'ncpDate', 'cName', 'customerCode', 'subCustomerName',\r\n 'statusName', 'sumPrice', 'sumPriceWithKindTotal', 'priceKindName', 'sumContract', 'sumAssignment',\r\n 'sumAssPrice', 'sumInvoicePrice', 'sumPriceWithKind2', 'sumPriceWithKind3', 'notPassedCheque',\r\n 'revertFromAssignment', 'revertfromInvoice', 'revertfromPreInvoice', 'adjustment', 'adjustmentContract',\r\n 'adjustmentSanavat', 'remind', 'remindWithVouchers', 'moghayeratAssWithContract', 'moghayerat', 'sumPreInvoicePrice',\r\n 'moghayeratWithAssign', 'receiptRaas', 'contractRaas', 'moghayeratReceiptRaasWithContractRaas', 'ncIsVoid',\r\n 'ncpFromCreditDate', 'ncpToCreditDate', 'registUser', 'acceptorUser'];\r\n public reportCustomerList: MatTableDataSource;\r\n public dateFrom = moment();\r\n public dateTo = moment();\r\n public customerCode: number = 0;\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n\r\n constructor(private accountService: AccountService,\r\n private authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n let startDateJalali1 = moment().locale('fa').startOf('month').format('YYYY/M/D').replace('/', '-');\r\n let todayJalali1 = moment().locale('fa').format('YYYY/M/D').replace('/', '-');\r\n this.dateFrom = moment(startDateJalali1, 'jYYYY,jMM,jDD');\r\n this.dateTo = moment(todayJalali1, 'jYYYY,jMM,jDD');\r\n this.loadReportCustomerData();\r\n }\r\n\r\n loadReportCustomerData() {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(\r\n res => {\r\n this.customerCode = res;\r\n this.getReportDateByCustomerCode(this.customerCode);\r\n })\r\n }\r\n\r\n getReportDateByCustomerCode(customerCode: number) {\r\n this.accountService.GetAllReportSite(+this.authService.currentUser.phoneNumber, 5, 0, 0, this.customerCode, this.dateFrom.locale('en').format('YYYY_M_D').toString(), this.dateTo.locale('en').format('YYYY_M_D').toString())\r\n .subscribe(\r\n results => {\r\n this.reportCustomerList = new MatTableDataSource(results);\r\n this.reportCustomerList.paginator = this.paginator;\r\n this.reportCustomerList.sort = this.sort;\r\n },\r\n (err) => {\r\n console.log(err);\r\n })\r\n }\r\n\r\n onSearch(): void {\r\n this.getReportDateByCustomerCode(this.customerCode)\r\n }\r\n\r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.reportCustomerList.filter = filterValue.trim().toLowerCase();\r\n if (this.reportCustomerList.paginator) {\r\n this.reportCustomerList.paginator.firstPage();\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n از تاریخ :\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n تا تاریخ :\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n جستجو\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
شماره قرارداد {{row.ncCode}}
ردیف {{ i + 1 }}
تاریخ {{row.ncpDate}}
نام {{row.cName}}
کد مشتری {{row.customerCode}}
سرگروه {{row.subCustomerName}}
وضعیت {{row.statusName}}
مبلغ قراداد {{row.sumPrice | number}}
پرداختی {{row.sumPriceWithKindTotal | number}}
نوع قیمت {{row.priceKindName}}
تعداد قراداد {{row.sumContract}}
تعداد حواله {{row.sumAssignment}}
محصولات امانی {{row.sumAssPrice | number}}
فاکتور شده {{row.sumInvoicePrice}}
پرداختی(واریزی) {{row.sumPriceWithKind2 | number}}
اسناد پرداختی(چک) {{row.sumPriceWithKind3 | number}}
اسناد پرداختی {{row.notPassedCheque}}
برگشت از حواله {{row.revertFromAssignment}}
برگشت از فاکتور {{row.revertfromInvoice}}
برگشت از پیش فاکتور {{row.revertfromPreInvoice}}
مبلغ تسویه {{row.adjustment}}
تسویه قرارداد {{row.adjustmentContract}}
تسویه سنوات {{row.adjustmentSanavat}}
مانده {{row.remind | number}}
مانده با اسناد {{row.remindWithVouchers | number}}
مانده(قدیمی) {{row.moghayeratAssWithContract | number}}
مغایرت قراداد با حواله و فاکتور {{row.moghayerat | number}}
مبلغ پیش فاکتور شده {{row.sumPreInvoicePrice}}
مغایرت قرارداد با حواله {{row.moghayeratWithAssign | number}}
راس اسناد {{row.receiptRaas}}
راس قرارداد {{row.contractRaas}}
مغایرت راس اسناد با قرارداد {{row.moghayeratReceiptRaasWithContractRaas}}
ابطال شده {{row.ncIsVoid}}
اعتبار از تاریخ {{row.ncpFromCreditDate}}
اغتبار تا تاریخ {{row.ncpToCreditDate}}
ثبت کننده {{row.registUser}}
تهیه کننده {{row.acceptorUser}}
داده با مشخصات وارد شده یافت نگردید.\"{{input.value}}\"
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n","
\r\n\r\n
\r\n
\r\n \r\n تامین کننده\r\n \r\n \r\n {{Suplies.sdName}}\r\n \r\n \r\n لطفا تامین کننده را انتخاب کنید.\r\n {{supplierControl.value?.sdName}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
کد کالانام کالاسریالمبلغ پایهمبلغ پیش فاکتورنام انبار
{{X.lcbProductCode}}{{X.dcDesc}}{{X.lcbBarcode}}{{X.moneyBase}}{{X.spipPrice}}{{X.depTitle}}
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n {{'reportSaleGroup.Index' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'reportSaleGroup.ProductCode' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'reportSaleGroup.ProductName' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'reportSaleGroup.SupplierAmount' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'reportSaleGroup.Number' | 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 {{value}}\r\n \r\n\r\n \r\n {{value}}\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\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, ViewChild, OnInit, TemplateRef } from '@angular/core';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ReportDebtNewResultGroupMethod } from '../../models/ReportDebtNewResultGroupMethod.model';\r\nimport { ReportDebtNewResultMethod } from '../../models/ReportDebtNewResultMethod.model';\r\nimport { SupliesDealer } from '../../models/SupliesDealer.model';\r\nimport { RequestInvoice } from '../../models/RequestInvoice.model';\r\nimport { RequestInvoiceProduct } from '../../models/RequestInvoiceProduct.model';\r\nimport { RequestInvoiceProductBarCode } from '../../models/RequestInvoiceProductBarCode.model';\r\nimport { GetDealerSaleGroupResult } from '../../models/GetDealerSaleGroupResult.model';\r\nimport { RequestInvoiceEnum } from '../../enums/request-invoice.enum';\r\nimport { ChangeDetectorRef } from '@angular/core';\r\nimport { SelectionType } from '@swimlane/ngx-datatable';\r\nimport { FormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'report-salegroup-info',\r\n templateUrl: './report-salegroup-info.component.html',\r\n styleUrls: ['./report-salegroup-info.component.scss']\r\n})\r\nexport class reportsalegroupinfoComponent implements OnInit {\r\n\r\n constructor(private cdRef: ChangeDetectorRef\r\n , private alertService: AlertService\r\n , private accountService: AccountService\r\n , private translationService: AppTranslationService\r\n , private authService: AuthService) { }\r\n\r\n rowsCache: GetDealerSaleGroupResult[] = [];\r\n rows: GetDealerSaleGroupResult[] = [];\r\n rowsselect: ReportDebtNewResultGroupMethod[] = [];\r\n uniqueProductCode = [];\r\n public supplierList: SupliesDealer[] = [];\r\n public rowRequestInvoiceProduct: RequestInvoiceProduct[] = [];\r\n public rowRequestInvoiceProductBarCode: RequestInvoiceProductBarCode[] = [];\r\n rowslist: ReportDebtNewResultMethod[] = [];\r\n public RequstInvoiceObj: RequestInvoice = new RequestInvoice();\r\n public RequestInvoiceProductObj: RequestInvoiceProduct = new RequestInvoiceProduct();\r\n public RequestInvoiceProductsBarcode: RequestInvoiceProductBarCode = new RequestInvoiceProductBarCode();\r\n public RequestInvoiceProductBarcode: RequestInvoiceProductBarCode = new RequestInvoiceProductBarCode();\r\n SelectionType = SelectionType;\r\n columns: any[] = [];\r\n public selected = []\r\n columnsselect: any[] = [];\r\n public sdCode: string;\r\n Txtdiscount: number;\r\n TxtFinalMoney: number;\r\n loadingIndicator: boolean;\r\n public spiCode: number;\r\n public spiCodeMain: number;\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n supplierControl = new FormControl('', Validators.required);\r\n\r\n @ViewChild('myTable', { static: true }) table: any;\r\n\r\n ngOnInit() {\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columnsselect = [\r\n { prop: 'indexs', name: gT('reportSaleGroup.Index'), width: 150, summaryFunc: cells => this.DetailSummery(cells) },\r\n { prop: 'countCode', name: gT('reportSaleGroup.NumberProduct'), width: 120 },\r\n { prop: 'lcbProductCode', name: gT('reportSaleGroup.ProductCode'), width: 200 },\r\n { prop: 'dcDesc', name: gT('reportSaleGroup.ProductName'), width: 300 },\r\n { prop: 'moneyBase', name: gT('reportSaleGroup.BaseAmount'), width: 120 },\r\n { prop: 'sumPrice', name: gT('reportSaleGroup.TotalAmount'), width: 150, summaryFunc: cells => this.SumMoneykole(cells) }\r\n ];\r\n\r\n this.getSupplierList();\r\n }\r\n\r\n public getSupplierList() {\r\n this.accountService.SupliesDealerList().subscribe(\r\n (res) => {\r\n this.supplierList = res;\r\n });\r\n }\r\n\r\n onKeydowntakhfif(event) {\r\n this.spiCode -= this.Txtdiscount;\r\n }\r\n\r\n ngAfterViewChecked() {\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع کل بدون تخفیف\";\r\n return filteredCells;\r\n }\r\n\r\n selectdealer(event: any) {\r\n this.selected = [];\r\n this.uniqueProductCode = [];\r\n this.loadingIndicator = true;\r\n this.sdCode = event.value == undefined ? event : event.value;\r\n this.accountService.getDealerSaleGroupResultsMethod(this.sdCode).subscribe(\r\n results => {\r\n this.rowsCache = [...results];\r\n this.rows = results;\r\n this.loadingIndicator = false;\r\n },\r\n error => {\r\n this.alertService.showMessage('اخطار', 'مشکلی در ثبت اطلاعات بوجود آمده است لطفا دوباره تلاش کنید.', MessageSeverity.error)\r\n });\r\n }\r\n\r\n DetailSummery1(cells: any) {\r\n return null;\r\n }\r\n\r\n toggleExpandRow(row) {\r\n this.table.rowDetail.toggleExpandRow(row);\r\n }\r\n\r\n onDataLoadSuccessfulInfo(results: ReportDebtNewResultMethod[]): void {\r\n this.rowslist = results;\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n private SumMoneykole(cells: number[]): number {\r\n const filteredCells = cells.filter(cell => !!cell);\r\n this.spiCode = filteredCells.reduce((sum, cell) => (sum += cell), 0);\r\n return Number(this.spiCode.toFixed(0));\r\n }\r\n\r\n onSelect({ selected }) {\r\n this.rowsselect = selected;\r\n const mapProductCode = this.rowsselect.map(unique => unique.lcbProductCode && unique.moneyBase);\r\n this.uniqueProductCode = this.rowsselect.filter(({ lcbProductCode, moneyBase }, index) => !mapProductCode.includes(+lcbProductCode, moneyBase));\r\n this.uniqueProductCode.forEach((user, index) => {\r\n user.indexs = index + 1;\r\n user.sumPrice = user.countCode * user.moneyBase;\r\n });\r\n }\r\n\r\n onActivate(row) { }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.dcDesc, r.moneyBase));\r\n }\r\n\r\n trackByIdx(index: number, obj: any): any {\r\n return index;\r\n }\r\n\r\n SaveRequestInsert() {\r\n if (this.uniqueProductCode.length > 0) {\r\n this.accountService.GetGetNewCodeRequestInvoiceEndPoint(Number(this.authService.currentUser.phoneNumber), Number(this.sdCode)).subscribe(res => this.MethodGetNewCodeReciep(res));\r\n }\r\n }\r\n\r\n MethodGetNewCodeReciep(res: number): void {\r\n this.RequstInvoiceObj.reqYear = Number(this.authService.currentUser.phoneNumber);\r\n this.RequstInvoiceObj.reqCode = res;\r\n this.RequstInvoiceObj.reqDatetime = this.accountService.getServerDateTime().toLocaleDateString('en-US');\r\n this.RequstInvoiceObj.reqDealercode = this.sdCode;\r\n this.RequstInvoiceObj.reqStatus = \"0\";\r\n this.RequstInvoiceObj.reqIduser = this.authService.currentUser.id;\r\n this.RequstInvoiceObj.reqDiscount = this.Txtdiscount;\r\n this.RequstInvoiceObj.reqMoney = this.spiCodeMain;\r\n this.RequstInvoiceObj.reqDiscountMoney = this.spiCode;\r\n this.RequstInvoiceObj.reqType = RequestInvoiceEnum.requestInvoice;\r\n this.rowRequestInvoiceProduct = [];\r\n this.uniqueProductCode.forEach(async (user, index) => {\r\n\r\n var ReqInvoiceProductObj = new RequestInvoiceProduct();\r\n ReqInvoiceProductObj.reqpAmount = user.countCode;\r\n ReqInvoiceProductObj.reqpCode = this.RequstInvoiceObj.reqCode;\r\n ReqInvoiceProductObj.reqpDealercode = this.sdCode;\r\n ReqInvoiceProductObj.reqpPrice = user.moneyBase;\r\n ReqInvoiceProductObj.reqpPriceSum = user.sumPrice;\r\n ReqInvoiceProductObj.reqpProductCode = user.lcbProductCode;\r\n ReqInvoiceProductObj.reqpYear = Number(this.authService.currentUser.phoneNumber);\r\n\r\n user.getDealerSale_Results.forEach((ObjselectBarcode) => {\r\n var ReqInvoiceProductBarcodeObj = new RequestInvoiceProductBarCode();\r\n ReqInvoiceProductBarcodeObj.reqpbBarCode = ObjselectBarcode.lcbBarcode;\r\n ReqInvoiceProductBarcodeObj.reqpbCode = this.RequstInvoiceObj.reqCode;\r\n ReqInvoiceProductBarcodeObj.reqpbDealercode = this.sdCode;\r\n ReqInvoiceProductBarcodeObj.reqpbProductCode = ObjselectBarcode.lcbProductCode;\r\n ReqInvoiceProductBarcodeObj.reqpbYear = Number(this.authService.currentUser.phoneNumber);\r\n ReqInvoiceProductBarcodeObj.reqpbSocode = 0;\r\n this.rowRequestInvoiceProductBarCode.push(ReqInvoiceProductBarcodeObj);\r\n });\r\n ReqInvoiceProductObj.requestInvoiceProductBarCodes = [...this.rowRequestInvoiceProductBarCode];\r\n this.rowRequestInvoiceProduct.push(ReqInvoiceProductObj);\r\n this.rowRequestInvoiceProductBarCode = [];\r\n });\r\n\r\n this.RequstInvoiceObj.requestInvoiceProducts = [...this.rowRequestInvoiceProduct];\r\n if (this.RequstInvoiceObj.requestInvoiceProducts.length > 0) {\r\n this.accountService.RequestInvoicesInsert(this.RequstInvoiceObj).subscribe(Succ => this.MethodSucc(Succ), error => this.MethodError());\r\n }\r\n }\r\n\r\n MethodError() {\r\n this.alertService.showMessage('اخطار', 'مشکلی در ثبت اطلاعات بوجود آمده است لطفا دوباره تلاش کنید.', MessageSeverity.error)\r\n }\r\n\r\n MethodSucc(Succ: RequestInvoice): void {\r\n this.RequstInvoiceObj = null;\r\n this.selectdealer(this.sdCode);\r\n this.alertService.showMessage('Success', 'صدور درخواست فاکتور با موفقیت انجام شد', MessageSeverity.success);\r\n }\r\n\r\n methodsuccessBarcode(rownumber: number): void {\r\n if (rownumber == this.uniqueProductCode.length - 1) {\r\n this.alertService.showMessage('Success', 'صدور درخواست فاکتور با موفقیت انجام شد', MessageSeverity.success);\r\n }\r\n }\r\n\r\n MethodErrorProduct(): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n\r\n MethodSuccsessInsertProduct(): void {\r\n this.alertService.showMessage('Success', 'صدور درخواست فاکتور با موفقیت انجام شد', MessageSeverity.success);\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n}\r\n","\n\nimport { Utilities } from '../services/utilities';\n\n\nexport class Notification {\n\n\n public id: number;\n public header: string;\n public body: string;\n public isRead: boolean;\n public isPinned: boolean;\n public date: Date;\n\n public static Create(data: {}) {\n const n = new Notification();\n Object.assign(n, data);\n\n if (n.date) {\n n.date = Utilities.parseDate(n.date);\n }\n\n return n;\n }\n}\n","import {Component} from '@angular/core';\r\nimport {fadeInOut} from '../../services/animations';\r\n\r\n\r\n@Component({\r\n selector: 'invoicesale',\r\n templateUrl: './invoicesale.component.html',\r\n styleUrls: ['./invoicesale.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class invoicesaleComponent {\r\n\r\n\r\n constructor() {\r\n\r\n\r\n }\r\n\r\n}\r\n","
\r\n
\r\n

\r\n \r\n {{'pageHeader.InvoiceSale' | 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","\n\nexport class DepoRecieptPermanent {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(DRPYear?: number, DRPCode?: number, DRPDepCode?: string, DRPDateTime?: string, DRPRecieptTemp?: number\n , DRPDeliverCode?: number\n , DRPCarCode?: number\n , DRPDealerCode?: string\n , DRPKindDealerCode?: number\n , DRPRecieptTecnical?: number\n , DRPSysDate?: string\n , DRPUserCode?: number\n , DRPDesc?: string\n ) {\n this.DRPYear = DRPYear;\n this.DRPCode = DRPCode;\n this.DRPDepCode = DRPDepCode;\n this.DRPDateTime = DRPDateTime;\n this.DRPRecieptTemp = DRPRecieptTemp;\n this.DRPRecieptTecnical = DRPRecieptTecnical;\n this.DRPDeliverCode = DRPDeliverCode;\n this.DRPCarCode = DRPCarCode;\n this.DRPDealerCode = DRPDealerCode;\n this.DRPKindDealerCode = DRPKindDealerCode;\n this.DRPSysDate = DRPSysDate;\n this.DRPUserCode = DRPUserCode;\n this.DRPDesc = DRPDesc;\n }\n public DRPYear: number;\n public DRPCode: number;\n public DRPDepCode: string;\n public DRPDateTime: string;\n public DRPRecieptTemp: number;\n public DRPRecieptTecnical: number;\n public DRPDeliverCode: number;\n public DRPCarCode: number;\n public DRPDealerCode: string;\n public DRPKindDealerCode: number;\n public DRPSysDate: string;\n public DRPUserCode: number;\n public DRPDesc: string;\n}\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'upload-documents',\n templateUrl: './upload-documents.component.html',\n animations: [fadeInOut]\n})\nexport class UploadDucumentsComponent {\n}\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, } from '@angular/core';\n\n@Component({\n selector: 'home-info',\n templateUrl: './home-info.component.html',\n styleUrls: ['./home-info.component.scss']\n})\nexport class HomeInfoComponent {\n\n constructor() { }\n\n appLogo = require('./../../assets/images/logo.png').default;\n\n ngOnInit() {}\r\n \n onEditorModalHidden() {}\n}\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"logo\"\r\n \r\n
\r\n
\r\n

به پنل فروشگاهی آرسام تجارت نیکو خوش آمدید.

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-client-shop-banner',\r\n templateUrl: './client-shop-banner.component.html',\r\n styleUrls: ['./client-shop-banner.component.scss']\r\n})\r\n/** clientShopBanner component*/\r\nexport class ClientShopBannerComponent {\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n \"Arsam\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges} from '@angular/core';\nimport {PreInvoice} from '../../../models/PreInvoice.model';\nimport {InputPricePaymentFormInvoiceSaleModel} from '../../../models/InputPricePaymentFormInvoiceSale.model';\nimport * as _ from 'lodash';\nimport {SaleReceipt} from '../../../models/SaleReceipts/SaleReceipt.model';\nimport {SaleSubReceipt} from '../../../models/SaleReceipts/SaleSubReceipt.model';\nimport * as moment from 'jalali-moment';\nimport {AlertService, MessageSeverity} from '../../../services/alert.service';\nimport {AccountService} from '../../../services/account.service';\nimport {ConfirmMessageModel} from '../../../models/utilities/confirm-message.model';\nimport {ConfirmMessageEnum} from '../../../enums/confirm-message.enum';\nimport {SharedService} from '../../../services/Shared.service';\nimport {Utilities} from '../../../services/utilities';\nimport {SaleSubReceiptService} from \"../../../services/receipt-services/sale-sub-receipt.service\";\nimport {AuthService} from '../../../services/auth.service';\nimport {SaleReceiptService} from \"../../../services/receipt-services/sale-receipt.service\";\nimport {SaleSubReceiptSelect} from \"../../../models/SaleSubReceiptSelect.model\";\nimport {SalePreInvoiceForContractCheckInfoModel} from \"../../../models/SalePreInvoiceForContractCheckInfo.model\";\n\n@Component({\n selector: 'app-sale-receipt-lc',\n templateUrl: './sale-receipt-lc.component.html',\n styleUrls: ['./sale-receipt-lc.component.scss']\n})\nexport class SaleReceiptLcComponent implements OnInit, OnChanges {\n\n public loadingIndicator: boolean;\n public columns: any[] = [];\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\n public dateObjectRSDate = moment();\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\n public checkoutConfirm = false;\n public lcFile: File;\n public ReciptNo = 0;\n public rowsCache: SaleSubReceiptSelect[] = [];\n public rows: SaleSubReceiptSelect[] = [];\n public AllPay = 0;\n public AllBed = 0;\n public AllBes = 0;\n public showValidationErrors = false;\n public loadDate: SaleSubReceiptSelect[] = [];\n\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;\n @Output() saveCheckDetailStatus = new EventEmitter();\n\n\n ngOnChanges(changes: SimpleChanges): void {\n }\n\n constructor(private alertService: AlertService,\n private accountService: AccountService,\n private saleReceiptService: SaleReceiptService,\n private sharedService: SharedService,\n private authService: AuthService) {\n }\n\n getLoadGrid() {\n return this.inputPricePaymentFormInvoiceSale.saleReceiptList.filter(x => x.rsKind === 12);\n }\n\n\n ngOnInit(): void {\n\n }\n\n cancel() {\n\n }\n\n save() {\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\n this.accountService.GetRSerialCheck(this.SaleSubReceiptObj.rSerial).subscribe(\n results => {\n const checkComplet = this.onCurrentCheck(results);\n if (checkComplet) {\n if (this.SaleSubReceiptObj.rsPrice > 0) {\n if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice === 0) {\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice < this.SaleSubReceiptObj.rsPrice) {\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice >= this.SaleSubReceiptObj.rsPrice) {\n\n const formData = new FormData;\n formData.append((1).toString(), this.lcFile);\n this.saleReceiptService.insertUploadCustomerImage(\n this.saleInvoiceDetail.spiCustomerCode.toString(),\n this.saleInvoiceDetail.spiSubCustomerCode.toString(),\n this.saleInvoiceDetail.contractCode.toString(),\n this.SaleSubReceiptObj.rSerial.toString(),\n formData)\n .subscribe(\n (res) => {\n this.ReciptNo = 0;\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\n this.SaleReceiptObj.rnum = 0;\n this.SaleReceiptObj.ryear = this.saleInvoiceDetail.spiYear;\n this.SaleReceiptObj.rmainCustomerCode = this.saleInvoiceDetail.spiCustomerCode;\n this.SaleReceiptObj.rsubCustomerCode = this.saleInvoiceDetail.spiSubCustomerCode;\n this.SaleReceiptObj.rpartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleReceiptObj.rkind = 1;\n this.SaleReceiptObj.rreceivedFor = -1;\n this.SaleReceiptObj.rreceivedNumber = this.saleInvoiceDetail.spiCode;\n this.SaleReceiptObj.rreceivedYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.risNotInCycle = false;\n this.SaleReceiptObj.rcontractYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\n this.SaleReceiptObj.sanavat = false;\n this.SaleReceiptObj.UserId = 0;\n this.SaleSubReceiptObj.rsKind = 12;\n this.SaleSubReceiptObj.rsPartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleSubReceiptObj.rsYear = this.saleInvoiceDetail.spiYear;\n this.SaleSubReceiptObj.rsReceiptKind = 1;\n this.SaleSubReceiptObj.rsNum = 0;\n this.SaleSubReceiptObj.rsDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\n this.SaleSubReceiptObj.saleReceiptsId = 0;\n this.SaleReceiptObj.SaleSubReceipt = [];\n this.SaleReceiptObj.SaleSubReceipt.push(this.SaleSubReceiptObj);\n this.saleReceiptService.InsertSaleReceipt(this.SaleReceiptObj).subscribe(result => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' ثبت شد. ', MessageSeverity.success);\n this.SaleSubReceiptObj = new SaleSubReceipt();\n this.SaleSubReceiptObj.rsDes = \"\";\n this.rowsCache = [];\n this.rows = [];\n this.AllBes = 0;\n this.AllBed = 0;\n this.showValidationErrors = false;\n this.SaleSubReceiptObj.rsDes = \"\";\n this.SaleSubReceiptObj.rSerial = \"\";\n this.SaleSubReceiptObj.rsPrice = 0;\n this.alertService.stopLoadingMessage();\n this.saveCheckDetailStatus.emit(true);\n\n } else if (result.actionStatus === 1) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n } else if (result.actionStatus === 2) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n }\n this.alertService.stopLoadingMessage();\n }, error => {\n });\n },\n (err) => {\n this.alertService.showMessage('عدم تایید', \"خطا در آپلود تصویر صورت گرفته است لطفا مجددا اقدام نمایید\", MessageSeverity.error);\n });\n } else {\n this.alertService.showMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\n }\n } else {\n this.alertService.showMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\n }\n }\n },\n error => this.onCurrentUserDataLoadFailed(error)\n );\n } else {\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات مربوط به پرداخت را وارد نمایید.', MessageSeverity.warn);\n }\n } else {\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\n this.confirmMessageObj.title = 'عدم پرداخت';\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به پرداخت نمی باشید.';\n this.checkoutConfirm = true;\n }\n }\n\n onCurrentCheck(results: boolean): boolean {\n if (results === true) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'شماره سریال تکراری می باشد', MessageSeverity.warn);\n return false;\n }\n if (this.dateObjectRSDate == null || this.dateObjectRSDate.toLocaleString() === \"undefined\" || this.dateObjectRSDate == undefined || this.dateObjectRSDate.toLocaleString() === \"\") {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\n return false;\n }\n if (this.SaleSubReceiptObj.rsPrice === 0 || this.SaleSubReceiptObj.rsPrice == null) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\n return false;\n }\n if (this.SaleSubReceiptObj.rSerial === \"\" || this.SaleSubReceiptObj.rSerial == null) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n if ((this.SaleSubReceiptObj.rsBankAccountCode == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا بانک گشایش کننده را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n if ((this.SaleSubReceiptObj.rSBankTrader == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا بانک معامله کننده را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n if ((this.SaleSubReceiptObj.salePriceKindCode.toString() === \"\") || (this.SaleSubReceiptObj.salePriceKindCode == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا مدت سررسید را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n const date = this.sharedService.checkDate(this.dateObjectRSDate);\n if (date > 0) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\n return false;\n }\n return true;\n }\n\n private onCurrentUserDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n\n showCheckoutConfirm(event: boolean) {\n this.checkoutConfirm = event;\n }\n\n fileChangeEvent(event: FileList) {\n let result;\n if (event.item(0).size <= 1000000 && event.item(0).type == \"image/jpeg\") {\n this.lcFile = event.item(0);\n const reader = new FileReader();\n reader.onload = (event2: any) => {\n result = event2.target.result;\n };\n } else {\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\n }\n }\n\n getFormatDateShamsi(date: string) {\n return new Date(date).toLocaleDateString(\"fa-IR\");\n }\n\n deleteLc(row: SaleSubReceiptSelect) {\n this.saleReceiptService.deleteSaleReceipt(row).subscribe((result) => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' حذف گردید. ', MessageSeverity.success);\n this.saveCheckDetailStatus.emit(true);\n } else {\n this.alertService.showMessage('هشدار', result.actionDescription, MessageSeverity.error);\n }\n }, (error) => {\n this.alertService.showMessage('هشدار', error.message, MessageSeverity.warn);\n });\n }\n\n showCheckDetail(row: SaleSubReceiptSelect) {\n // this.inputPricePaymentFormInvoiceSale.checkDetailList.forEach((val, index) => {\n // if (val == row) {\n // if (this.showImageFiles[index] != null) {\n // this.checkImageStatus = true;\n // this.checkImage = this.showImageFiles[index];\n // } else {\n // this.checkImageStatus = false;\n // this.checkImageServer = this.domainName + val.imageAddress;\n // }\n // $('.check-image').modal('show');\n // return;\n // }\n // });\n }\n}\n","
\n
\n
\n
\n \n پیش فاکتور\n \n \n
\n
\n
\n
\n \n قرارداد\n \n \n
\n
\n
\n
\n
خریدار : {{ saleInvoiceDetail.cName }}
\n
\n
\n
\n
\n
\n \n سریال\n \n \n
\n\n
\n \n بانک گشایش کننده\n \n {{ bank.sbaBankName }}\n \n \n \n
\n\n
\n \n بانک معامله کننده اعتبار\n \n {{ bank.sbaBankName }}\n \n \n \n
\n\n
\n \n مدت سررسید\n \n \n
\n\n
\n \n مبلغ\n \n \n
\n\n\n
\n
\n \n \n نام عکس : {{ lcFile.name }}\n
\n
\n\n\n
\n \n توضیحات\n \n \n
\n\n
\n
\n \n \n
\n
\n\n
\n
\n
\n \n\n \n \n {{ rowIndex + 1 }}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{ getFormatDateShamsi(value) }}\n \n \n \n \n {{ value | number }} ریال\n \n \n \n \n
\n
\n
\n\n\n","\n\nexport class SaleSubSendProduct {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(SspartCode?: number, Sspcode?: number, Sspyear?: number, Ssppcode?: string, Sspcount?: number, Sspdes?: string, SspsendCount?: number, BarCode?: string) {\n this.SspartCode = SspartCode;\n this.Sspcode = Sspcode;\n this.Sspyear = Sspyear;\n this.Ssppcode = Ssppcode;\n this.Sspcount = Sspcount;\n this.Sspdes = Sspdes;\n this.SspsendCount = SspsendCount;\n this.barCode = BarCode;\n\n }\n public SspartCode: number;\n public Sspcode: number;\n public Sspyear: number;\n public Ssppcode: string;\n public Sspcount: number;\n public Sspdes: string;\n public SspsendCount: number;\n public barCode: string; \n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable, Subject, from, throwError } from 'rxjs';\r\nimport { mergeMap, switchMap, catchError } from 'rxjs/operators';\r\n\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable()\r\nexport class EndpointBase {\r\n\r\n private taskPauser: Subject;\r\n private isRefreshingLogin: boolean;\r\n\r\n constructor(\r\n protected http: HttpClient,\r\n private authService: AuthService) {\r\n\r\n }\r\n\r\n //protected get requestHeaders(): { headers: HttpHeaders | { [header: string]: string | string[]; } } {\r\n // const headers = new HttpHeaders({\r\n // Authorization: 'Bearer ' + this.authService.accessToken,\r\n // 'Content-Type': 'application/json',\r\n // Accept: 'application/json, text/plain, */*'\r\n // });\r\n // //const headers = {\r\n // // 'Content-Type': 'application/json',\r\n // // 'Accept': 'application/json,text/plain, */*',\r\n // // 'Access-Control-Allow-Headers': 'Content-Type'\r\n // //}\r\n // return { headers };\r\n //}\r\n\r\n protected get requestHeaders(): { headers: HttpHeaders | { [header: string]: string | string[]; } } {\r\n //const headers = new HttpHeaders({\r\n // Authorization: 'Bearer ' + this.authService.accessToken,\r\n // 'Content-Type': 'application/json',\r\n // Accept: 'application/json, text/plain, */*'\r\n //});\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'Accept': 'application/json,text/plain, */*',\r\n 'Access-Control-Allow-Headers': 'Content-Type'\r\n }\r\n\r\n return { headers };\r\n }\r\n\r\n\r\n\r\n\r\n //public refreshLogin() {\r\n // return this.authService.refreshLogin().pipe(\r\n // catchError(error => {\r\n // return this.handleError(error, () => this.refreshLogin());\r\n // }));\r\n //}\r\n\r\n public refreshLogin() {\r\n return this.authService.refreshLogin().pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.refreshLogin());\r\n }));\r\n }\r\n\r\n //protected handleError(error, continuation: () => Observable) {\r\n // if (error.status == 401) {\r\n // if (this.isRefreshingLogin) {\r\n // return this.pauseTask(continuation);\r\n // }\r\n\r\n // this.isRefreshingLogin = true;\r\n\r\n // return from(this.authService.refreshLogin()).pipe(\r\n // mergeMap(() => {\r\n // this.isRefreshingLogin = false;\r\n // this.resumeTasks(true);\r\n\r\n // return continuation();\r\n // }),\r\n // catchError(refreshLoginError => {\r\n // this.isRefreshingLogin = false;\r\n // this.resumeTasks(false);\r\n // this.authService.reLogin();\r\n\r\n // if (refreshLoginError.status == 401 || (refreshLoginError.error && refreshLoginError.error.error == 'invalid_grant')) {\r\n // return throwError('session expired');\r\n // } else {\r\n // return throwError(refreshLoginError || 'server error');\r\n // }\r\n // }));\r\n // }\r\n\r\n // if (error.error && error.error.error == 'invalid_grant') {\r\n // this.authService.reLogin();\r\n\r\n // return throwError((error.error && error.error.error_description) ? `session expired (${error.error.error_description})` : 'session expired');\r\n // } else {\r\n // return throwError(error);\r\n // }\r\n //}\r\n\r\n\r\n protected handleError(error, continuation: () => Observable) {\r\n\r\n if (error.status == 401) {\r\n if (this.isRefreshingLogin) {\r\n return this.pauseTask(continuation);\r\n }\r\n\r\n this.isRefreshingLogin = true;\r\n\r\n // return from(this.authService.refreshLogin()).pipe(\r\n // mergeMap(() => {\r\n // this.isRefreshingLogin = false;\r\n // this.resumeTasks(true);\r\n\r\n // return continuation();\r\n // }),\r\n // catchError(refreshLoginError => {\r\n // this.isRefreshingLogin = false;\r\n // this.resumeTasks(false);\r\n // this.authService.reLogin();\r\n\r\n // if (refreshLoginError.status == 401 || (refreshLoginError.error && refreshLoginError.error.error == 'invalid_grant')) {\r\n // return throwError('session expired');\r\n // } else {\r\n // return throwError(refreshLoginError || 'server error');\r\n // }\r\n // }));\r\n //}\r\n }\r\n\r\n if (error.error && error.error.error == 'invalid_grant') {\r\n this.authService.reLogin();\r\n\r\n return throwError((error.error && error.error.error_description) ? `session expired (${error.error.error_description})` : 'session expired');\r\n } else {\r\n return throwError(error);\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n\r\n private pauseTask(continuation: () => Observable) {\r\n if (!this.taskPauser) {\r\n this.taskPauser = new Subject();\r\n }\r\n\r\n return this.taskPauser.pipe(switchMap(continueOp => {\r\n return continueOp ? continuation() : throwError('session expired');\r\n }));\r\n }\r\n\r\n\r\n private resumeTasks(continueOp: boolean) {\r\n setTimeout(() => {\r\n if (this.taskPauser) {\r\n this.taskPauser.next(continueOp);\r\n this.taskPauser.complete();\r\n this.taskPauser = null;\r\n }\r\n });\r\n }\r\n}\r\n","\n\nimport { Injectable } from '@angular/core';\n\n@Injectable()\nexport class DBkeys {\n\n public static readonly CURRENT_USER = 'current_user';\n public static readonly USER_PERMISSIONS = 'user_permissions';\n\n public static readonly REMEMBER_ME = 'remember_me';\n\n public static readonly LANGUAGE = 'language';\n public static readonly HOME_URL = 'home_url';\n public static readonly THEME_ID = 'themeId';\n public static readonly SHOW_DASHBOARD_STATISTICS = 'show_dashboard_statistics';\n public static readonly SHOW_DASHBOARD_NOTIFICATIONS = 'show_dashboard_notifications';\n public static readonly SHOW_DASHBOARD_TODO = 'show_dashboard_todo';\n public static readonly SHOW_DASHBOARD_BANNER = 'show_dashboard_banner';\n}\n","import { Component } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'contract',\r\n templateUrl: './contract.component.html',\r\n styleUrls: ['./contract.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class contractComponent {\r\n\r\n toppings = new FormControl();\r\n disableSelect = new FormControl(false);\r\n\r\n toppingList: string[] = ['Extra cheese', 'Mushroom', 'Onion', 'Pepperoni', 'Sausage', 'Tomato'];\r\n constructor() {\r\n\r\n \r\n }\r\n\r\n}\r\n","
\r\n
\r\n

\r\n \r\n {{'pageHeader.Contract' | translate}}\r\n

\r\n\r\n
\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n","\n\nimport { Directive, Attribute, ElementRef, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\nimport { Observable, Subscription, fromEvent } from 'rxjs';\n\n\ndeclare var $: any;\n\n@Directive({\n selector: '[bootstrapSelect]',\n exportAs: 'bootstrap-select'\n})\nexport class BootstrapSelectDirective implements OnInit, OnDestroy {\n\n private oldValues: string | string[] = '';\n\n private changedSubscription: Subscription;\n private shownSubscription: Subscription;\n private hiddenSubscription: Subscription;\n\n @Input()\n required: string;\n\n @Input()\n set ngModel(values: string | string[]) {\n setTimeout(() => this.selected = values);\n }\n\n\n @Output()\n ngModelChange = new EventEmitter();\n\n @Output()\n shown = new EventEmitter();\n\n @Output()\n hidden = new EventEmitter();\n\n\n constructor(private el: ElementRef) {\n this.changedSubscription = fromEvent($(this.el.nativeElement), 'changed.bs.select').subscribe((e: any) => setTimeout(() => {\n if (this.checkIsValuesChanged(this.selected)) {\n this.ngModelChange.emit(this.selected);\n }\n }));\n this.shownSubscription = fromEvent($(this.el.nativeElement), 'shown.bs.select').subscribe((e: any) => setTimeout(() => this.shown.emit()));\n this.hiddenSubscription = fromEvent($(this.el.nativeElement), 'hidden.bs.select').subscribe((e: any) => setTimeout(() => this.hidden.emit()));\n }\n\n\n ngOnInit() {\n $(this.el.nativeElement).selectpicker();\n\n if (this.requiredAttribute) {\n $(this.el.nativeElement).selectpicker('setStyle', 'required', 'add');\n }\n\n setTimeout(() => {\n this.refresh();\n this.doValidation();\n });\n\n }\n\n ngOnDestroy() {\n if (this.changedSubscription) {\n this.changedSubscription.unsubscribe();\n }\n\n if (this.shownSubscription) {\n this.shownSubscription.unsubscribe();\n }\n\n if (this.hiddenSubscription) {\n this.hiddenSubscription.unsubscribe();\n }\n\n $(this.el.nativeElement).selectpicker('destroy');\n }\n\n private checkIsValuesChanged(newValue: string | string[]) {\n return !(newValue == this.oldValues ||\n (newValue instanceof Array && newValue.length === this.oldValues.length && newValue.every((v, i) => v === this.oldValues[i])));\n }\n\n private doValidation() {\n if (this.requiredAttribute) {\n $(this.el.nativeElement).selectpicker('setStyle', !this.valid ? 'ng-valid' : 'ng-invalid', 'remove');\n $(this.el.nativeElement).selectpicker('setStyle', this.valid ? 'ng-valid' : 'ng-invalid', 'add');\n }\n }\n\n private get requiredAttribute() {\n return this.required === '' || this.required == 'true';\n }\n\n\n refresh() {\n setTimeout(() => {\n $(this.el.nativeElement).selectpicker('refresh');\n });\n }\n\n render() {\n setTimeout(() => {\n $(this.el.nativeElement).selectpicker('render');\n });\n }\n\n\n get valid(): boolean {\n return this.requiredAttribute ? this.selected && this.selected.length > 0 : true;\n }\n\n\n set selected(values: string | string[]) {\n\n if (!this.checkIsValuesChanged(values)) {\n return;\n }\n\n this.oldValues = this.selected;\n $(this.el.nativeElement).selectpicker('val', values);\n this.doValidation();\n }\n\n\n get selected(): string | string[] {\n return $(this.el.nativeElement).selectpicker('val');\n }\n}\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-client-franchise',\r\n templateUrl: './client-franchise.component.html',\r\n styleUrls: ['./client-franchise.component.scss']\r\n})\r\n/** clientFranchise component*/\r\nexport class ClientFranchiseComponent {\r\n /** clientFranchise ctor */\r\n constructor() {\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

نمایندگی فرانچایز آرسام تجارت نیکو

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

\r\n شرکت آرسام تجارت نیکو، در نظر دارد با نگرش توسعه بازار از محل مزیت های رقابتی برند لورچ و همچنین بهره‌مندی از\r\n ظرفیت های شخصیت های حقیقی و حقوقی علاقمند به ایجاد کسب وکار خرده فروشی ، اقدام به جذب تعداد محدودی نمایندگی\r\n فرانچایز در سطح کشور نماید.\r\n

\r\n
\r\n

مزایای نمایندگی آرسام تجارت نیکو

\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
صنعت کم ریسک، بادرآمد تضمین شده
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
تخفیفات بالا و فروش های ویژه
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
عدم پرداخت ورودیه یا حق تابلو
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
سیستم فروش و مدیریت موجودی کالا
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
طرح های ویژه، جشنواره ها و قرعه کشی های متنوع
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
مشاوره های تخصصی جهت مدیریت فروشگاه
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
تامین مستمر کالاها بدون نیاز به مذاکره با تامین کنندگان و صرف وقت و هزینه
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
عدم نیاز به خرید نقدی اقلام و تحمل هزینه انبارداری یا خواب پول
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n

شرایط نمایندگی فرانچایز آرسام تجارت نیکو

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

\r\n مجموعه فروشگاه‌های زنجیره‌ای آرسام تجارت نیکو به منظور توسعه فروشگاه‌های خود و ایجاد فرصت مناسب برای\r\n علاقه‌مندان به فعالیت در حوزه خرده‌فروشی، حق امتیاز نمایندگی خود را به متقاضیان واجد\r\n شرایط واگذار می‌نماید. این همکاری برای افرادی با تجربه کاری مرتبط، توانایی مدیریتی و روحیه تعاملی و همچنین\r\n توانایی تامین ملک (ترجیح به مالکیت فروشگاه)، با سرمایه ای جهت خرید تجهیزات مورد نیاز، می تواند سبب سودی\r\n معقول (فراتر از درآمد ناشی از کار برای دیگری) در کنار مزایایی چون کارآفرینی برای آشنایان واجد شرایط باشد.\r\n افراد علاقمند به این حوزه\r\n باید به موضوعاتی همچون نیاز به حضور فعالانه خود شخص امتیازگیرنده در فروشگاه و فعالیت حداقل 14 ساعته ی\r\n فروشگاه ها در کل سال، آگاه باشند. توجه به این نکته نیز حایز اهمیت است که میزان تلاش افراد با سودآوری رابطه\r\n مستقیم داشته و افراد دارای دید بلند مدت به همکاری، با تلاش خود در چارچوب اصول و مقررات شرکت می توانند به\r\n موفقیتی تضمین شده و سودآور دست یابند.\r\n

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

\r\n شخص حقیقی\r\n

\r\n
    \r\n
  • تابعیت کشور جمهوری اسلامی ایران
  • \r\n
  • گواهی عدم سوءپیشینه کیفری
  • \r\n
  • \r\n گواهی عدم اعتیاد\r\n
  • \r\n
  • \r\n داشتن جواز کسب\r\n
  • \r\n
  • داشتن حداقل مدرک تحصیلی دیپلم
  • \r\n
  • داشتن کارت پایان خدمت
  • \r\n
  • \r\n عدم وابستگی به هرگونه حزب و یا جناح سیاسی\r\n
  • \r\n
  • \r\n داشتن حداقل 25 سال سن\r\n
  • \r\n
  • \r\n داشتن شهرت و رزومه کاری مناسب و قابل احراز\r\n
  • \r\n
  • \r\n گواهی عدم چک برگشتی\r\n
  • \r\n\r\n
\r\n\r\n

\r\n شخص حقوقی\r\n

\r\n
    \r\n
  • \r\n ارائه اساسنامه، آگهی تأسیس، آخرین روزنامه رسمی و آگهی آخرین تغییرات\r\n
  • \r\n\r\n
  • \r\n ارائه مدارک هویتی اعضای هیئت‌مدیره\r\n
  • \r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
    \r\n
  • \r\n ملک باید در نقطه ای از شهر با تراکم مسکونی مناسب باشد.\r\n
  • \r\n
  • \r\n فاصله مناسب فروشگاه تا فروشگاههای فعال آرسام تجارت نیکو داشته باشد.\r\n
  • \r\n
  • \r\n دارای تمامی انشعابات مورد نیاز آب، برق\r\n
  • \r\n
  • \r\n مالکیت ملک (داشتن سند یا مبایعه نامه) و یا اجاره نامه با مدت اعتبار حداقل 5سال و یا سرقفلی (با رعایت\r\n قانون موجر و مستأجر) با رضایت مالک\r\n
  • \r\n
  • \r\n دارای کاربری تجاری و دارای برحداقل 5 m باشد\r\n
  • \r\n
  • \r\n فروشگاه باید بر اساس گرید آن دارای انبارک جدا و تفکیک شده از محل نمایش کالاها باشد\r\n
  • \r\n
  • \r\n حداکثر اختلاف ارتفاع با سطح خیابان 50سانتی متر؛ در صورت وجود اختلاف سطح وجود رمپ با شیب حداکثر 20\r\n
  • \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n وثیقه\r\n
\r\n

\r\n اخذ وثیقه به دو صورت ترهین ملک و یا ضمانت‌نامه بانکی امکان-پذیر است\r\n

\r\n
الف) وثیقه ملکی
\r\n

مبلغ آن با توجه به متراژ فروشگاه با رعایت شرایط ذیل ترهین می¬گردد

\r\n
    \r\n
  • \r\n باید 6 دانگ باشد\r\n
  • \r\n
  • \r\n روستایی نباشد\r\n
  • \r\n
  • \r\n دارای کاربری تجاری، زراعی و یا صنعتی نباشد.\r\n
  • \r\n
  • \r\n در رهن بانک و یا در بازداشت نباشد\r\n
  • \r\n
  • \r\n سهل البیع باشد (ارزیابی بر عهده کارشناس رسمی دادگستری است)\r\n
  • \r\n
  • \r\n دارای سند رسمی مالکیت و به نام متقاضی باشد فلذا پذیرش املاک با ارائه قولنامه و مبایعه‌نامه پذیرفته نیست\r\n
  • \r\n
  • \r\n پذیرش ملک وقفی مشروط به داشتن سند 6 دانگ است\r\n
  • \r\n
  • \r\n ملک بدون بنا قابل پذیرش نمی¬باشد\r\n
  • \r\n
  • \r\n پس از رهن کامل ملک از مبلغ کارشناسی ملک میزان 70% ارزش به عنوان اعتبار قابل پذیرش می باشد\r\n
  • \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
گریدمتراژ کف فروشگاهحداقل متراژ انبارحداقل میزان وثیقه ریال
Aبالای 300 مترنیاز به بررسینیاز به بررسی
Bاز 150 متر تا 300 متر100متر الی 900 متر30,000,000,000
Cاز70 متر تا 150 متر50 متر الی 100 متر15,000,000,000
\r\n\r\n
\r\n ب) ضمانت¬نامه بانکی\r\n
\r\n

\r\n در صورت تمایل عامل به ارائه ضمانت¬نامه بانکی پذیرش آن بلامانع است در این صورت معادل مبلغ ضمانت¬نامه ارائه\r\n شده به عنوان اعتبار فروشگاه لحاظ خواهد شد. لازم به ذکر است هر دو نوع ضمانت نامه حسن انجام کار و ضمانت نامه\r\n تعهد پرداخت قابل پذیرش است.\r\n

\r\n

\r\n ترکیب موارد بندهای الف و ب نیز امکان پذیر میباشد.\r\n

\r\n

\r\n تبصره: علاوه بر مبالغ فوق صد میلیون تومان چک نیز اخذ میگردد.\r\n

\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n فرآیند اداری (پیش از افتتاح)\r\n
\r\n
    \r\n
  • تکمیل فرم تقاضای نمایندگی و ارائه رزومه کاری
  • \r\n
  • کارشناسی ملک، محل و ارزیابی شخص متقاضی در کمتر از یک هفته کاری
  • \r\n
  • : تکمیل پرونده (ارایه مدارک توسط متقاضی، بررسی و اخذ استعلامات توسط شرکت)
  • \r\n
  • ترهین ملک وثیقه و وکالت فروش یا اخذ ضمانتنامه بانکی
  • \r\n
  • عقد قرارداد همکاری
  • \r\n
  • تجهیز فروشگاه
  • \r\n
  • نصب تابلو سر درب ( توسط شرکت و مطابق استانداردهای تعریف شده )
  • \r\n
  • طی دوره آموزش و کارآموزی ( تهیه دستورالعمل آموزشی فروشگاه )
  • \r\n
  • افتتاح فروشگاه
  • \r\n
\r\n
\r\n فرآیند اجرایی (پس از شروع به کار فروشگاه)\r\n
\r\n
    \r\n
  • \r\n تامین مستمر و بهینه موجودی فروشگاه\r\n
  • \r\n
  • \r\n پشتیبانی مربوط به حوزه های تجهیز و فناوری اطلاعات\r\n
  • \r\n
  • \r\n بازرسی های منظم جهت ارزیابی تطابق عملکرد فروشگاه با استانداردها و ضوابط شرکت\r\n
  • \r\n
  • \r\n : تسویه حساب ماهانه با عاملین محترم\r\n
  • \r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
    \r\n
  • هزینه های پرسنلی شامل حقوق و مزایای قانونی
  • \r\n
  • بیمه پرسنل
  • \r\n
  • مالیات و بیمه درآمد
  • \r\n
  • هزینه اجاره (در صورت مستاجر بودن)
  • \r\n
  • هزینه تعمیر و نگهداری
  • \r\n
  • هزینه های انرژی (آب برق گاز ...)
  • \r\n
  • هزینه های متغیر فروشگاهی از قبیل فلکسی ، البسه پرسنل ، تبلیغات فروشگاهی و ...
  • \r\n
  • \r\n تمامی عاملین فرانچایز ملزم به تبعیت از استاندارد تجهیز فروشگاه های آرسام تجارت نیکو در تجهیز فروشگاه های\r\n خود میباشند.\r\n
  • \r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
    \r\n
  • کپی برابر اصل کارت ملی و شناسنامه ( تمام صفحات )
  • \r\n
  • کپی برابر اصل اجاره نامه معتبر یا سند مالکیت محل کسب
  • \r\n
  • کپی جواز کسب محل کسب
  • \r\n
  • استعلام کد پستی محل کسب و انبار
  • \r\n
  • گواهی سوء پیشینه
  • \r\n
  • گواهی عدم اعتیاد
  • \r\n
  • \r\n گواهی چک برگشتی\r\n
  • \r\n
  • \r\n مدارک ضمانت ( ضمانت نامه بانکی یا سند رهنی در نزد شرکت )\r\n
  • \r\n
  • \r\n چک ضمانت در وجه شرکت\r\n
  • \r\n
  • \r\n کپی آخرین مدرک تحصیلی\r\n
  • \r\n
  • \r\n ارائه مدارک مربوط به محل سکونت ( اجاره نامه یا سند مالکیت ، یکی از قبوض آب ، برق ، گاز یا تلفن )\r\n
  • \r\n
  • \r\n 2 قطعه عکس 4*3 رسمی\r\n
  • \r\n
  • \r\n نامه معرفی حساب بانکی\r\n
  • \r\n
  • \r\n کپی کارت پایان خدمت\r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
    \r\n
  • \r\n در صورت نداشتن شرایط فوق درخواست متقاضی محترم قابل بررسی نبوده و هیچگونه پاسخی ارسال نخواهد شد.\r\n
  • \r\n
  • \r\n در صورت احراز عدم صحت اطلاعات درج شده در فرم مزبور، در هر یک از مراحل تقاضا، نام متقاضی مورد نظر از لیست\r\n خارج و تقاضا مردود تلقی می گردد.\r\n
  • \r\n
  • \r\n تهیه کلیه ملزومات و تجهیزات بر عهده شخص متقاضی بوده و هیچگونه تسهیلاتی برای این منظور پرداخت نمی گردد.\r\n
  • \r\n
  • \r\n فرانچایز گیرنده جهت اخذ امتیاز باید مستقیما به شرکت مراجعه نماید. در صورتیکه افرادی(چه همکاران شرکت و چه\r\n واسطه های دیگر) جهت واگذاری امتیاز فرانچایز طلب وجه نمایند این افراد متخلف می باشند و در صورت همکاری\r\n فرانچایزه گیرنده با آن ها ، شرکت حق تعقیب قانونی و فسخ قرار داد را در هر مرحله و زمانی برای خود محفوظ می\r\n داند.\r\n\r\n
  • \r\n
  • \r\n افراد علاقمند و واجدین شرایط می‌توانند با تکمیل مربوط درخواست خود را جهت بررسی اولیه به واحد اخذ\r\n نمایندگی (فرانچایز) شرکت فروشگاه های آرسام تجارت نیکو ارسال نمایند.\r\n
  • \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

رادیاتور ها

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"Arsam\r\n \r\n
\r\n
\r\n
\r\n رادیاتور پنلی رز\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

پکیج شوفاژ دیواری

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

کولر آبی

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"Arsam\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n
\r\n
\r\n کولر آبی سلولزی\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"محصولات\r\n \r\n
\r\n
\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 {ActivatedRoute} from \"@angular/router\";\r\n\r\n@Component({\r\n selector: 'app-client-product',\r\n templateUrl: './client-product.component.html',\r\n styleUrls: ['./client-product.component.scss']\r\n})\r\nexport class ClientProductComponent implements OnInit {\r\n\r\n public productShow = \"1\";\r\n\r\n constructor(private route: ActivatedRoute) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.productShow = this.route.snapshot.paramMap.get('id');\r\n }\r\n\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'depotaraz',\r\n templateUrl: './depotaraz.component.html',\r\n styleUrls: ['./depotaraz.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class depotarazComponent {\r\n \r\n\r\n \r\n constructor() {\r\n\r\n \r\n }\r\n\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\nimport { Directive, ElementRef, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\nimport { Observable, Subscription, fromEvent } from 'rxjs';\n\n\ndeclare var $: any;\n\n@Directive({\n selector: '[bootstrapToggle]',\n exportAs: 'bootstrap-toggle'\n})\nexport class BootstrapToggleDirective implements OnInit, OnDestroy {\n\n private checkedSubscription: Subscription;\n\n @Input()\n set ngModel(value) {\n this.toggle(value);\n }\n\n @Output()\n ngModelChange = new EventEmitter();\n\n\n constructor(private el: ElementRef) {\n this.checkedSubscription = fromEvent($(this.el.nativeElement), 'change')\n .subscribe((e: any) => this.ngModelChange.emit(e.target.checked));\n }\n\n\n ngOnInit() {\n this.initialize();\n }\n\n ngOnDestroy() {\n this.destroy();\n }\n\n\n initialize(options?: any) {\n $(this.el.nativeElement).bootstrapToggle(options);\n }\n\n destroy() {\n if (this.checkedSubscription) {\n this.checkedSubscription.unsubscribe();\n }\n\n $(this.el.nativeElement).bootstrapToggle('destroy');\n }\n\n toggleOn() {\n $(this.el.nativeElement).bootstrapToggle('on');\n }\n\n toggleOff() {\n $(this.el.nativeElement).bootstrapToggle('off');\n }\n\n toggle(value?: boolean) {\n if (value == null) {\n $(this.el.nativeElement).bootstrapToggle('toggle');\n } else {\n $(this.el.nativeElement).prop('checked', value).change();\n }\n }\n\n enable() {\n $(this.el.nativeElement).bootstrapToggle('enable');\n }\n\n disable() {\n $(this.el.nativeElement).bootstrapToggle('disable');\n }\n}\n","// =============================\n// Email: info@ebenmonney.com\n// www.ebenmonney.com/templates\n// =============================\n\nimport { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { AppTranslationService } from './app-translation.service';\nimport { ThemeManager } from './theme-manager';\nimport { LocalStoreManager } from './local-store-manager.service';\nimport { DBkeys } from './db-Keys';\nimport { Utilities } from './utilities';\nimport { environment } from '../../environments/environment';\n\ninterface UserConfiguration {\n language: string;\n homeUrl: string;\n themeId: number;\n showDashboardStatistics: boolean;\n showDashboardNotifications: boolean;\n showDashboardTodo: boolean;\n showDashboardBanner: boolean;\n}\n\n@Injectable()\nexport class ConfigurationService {\n\n constructor(\n private localStorage: LocalStoreManager,\n private translationService: AppTranslationService,\n private themeManager: ThemeManager) {\n\n this.loadLocalChanges();\n }\n\n set language(value: string) {\n this._language = value;\n this.saveToLocalStore(value, DBkeys.LANGUAGE);\n this.translationService.changeLanguage(value);\n }\n get language() {\n return this._language || ConfigurationService.defaultLanguage;\n }\n\n\n set themeId(value: number) {\n value = +value;\n this._themeId = value;\n this.saveToLocalStore(value, DBkeys.THEME_ID);\n this.themeManager.installTheme(this.themeManager.getThemeByID(value));\n }\n get themeId() {\n return this._themeId || ConfigurationService.defaultThemeId;\n }\n\n\n set homeUrl(value: string) {\n this._homeUrl = value === '/' ? '/dashboard' : '/' ;\n this.saveToLocalStore(value, DBkeys.HOME_URL);\n }\n get homeUrl() {\n return this._homeUrl || ConfigurationService.defaultHomeUrl;\n }\n\n\n set showDashboardStatistics(value: boolean) {\n this._showDashboardStatistics = value;\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_STATISTICS);\n }\n get showDashboardStatistics() {\n return this._showDashboardStatistics != null ? this._showDashboardStatistics : ConfigurationService.defaultShowDashboardStatistics;\n }\n\n\n set showDashboardNotifications(value: boolean) {\n this._showDashboardNotifications = value;\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_NOTIFICATIONS);\n }\n get showDashboardNotifications() {\n return this._showDashboardNotifications != null ? this._showDashboardNotifications : ConfigurationService.defaultShowDashboardNotifications;\n }\n\n\n set showDashboardTodo(value: boolean) {\n this._showDashboardTodo = value;\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_TODO);\n }\n get showDashboardTodo() {\n return this._showDashboardTodo != null ? this._showDashboardTodo : ConfigurationService.defaultShowDashboardTodo;\n }\n\n\n set showDashboardBanner(value: boolean) {\n this._showDashboardBanner = value;\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_BANNER);\n }\n get showDashboardBanner() {\n return this._showDashboardBanner != null ? this._showDashboardBanner : ConfigurationService.defaultShowDashboardBanner;\n }\n\n public static readonly appVersion: string = '2.8.0';\n\n // ***Specify default configurations here***\n public static readonly defaultLanguage: string = 'fa';\n public static readonly defaultHomeUrl: string = '/';\n public static readonly defaultThemeId: number = 1;\n public static readonly defaultShowDashboardStatistics: boolean = true;\n public static readonly defaultShowDashboardNotifications: boolean = true;\n public static readonly defaultShowDashboardTodo: boolean = false;\n public static readonly defaultShowDashboardBanner: boolean = true;\n\n public baseUrl = environment.baseUrl || Utilities.baseUrl();\n public tokenUrl = environment.tokenUrl || environment.baseUrl || Utilities.baseUrl();\n public loginUrl = environment.loginUrl;\n public fallbackBaseUrl = 'http://www.arsamtn.com';\n // ***End of defaults***\n\n private _language: string = null;\n private _homeUrl: string = null;\n private _themeId: number = null;\n private _showDashboardStatistics: boolean = null;\n private _showDashboardNotifications: boolean = null;\n private _showDashboardTodo: boolean = null;\n private _showDashboardBanner: boolean = null;\n\n private onConfigurationImported: Subject = new Subject();\n configurationImported$ = this.onConfigurationImported.asObservable();\n\n\n\n private loadLocalChanges() {\n\n if (this.localStorage.exists(DBkeys.LANGUAGE)) {\n this._language = this.localStorage.getDataObject(DBkeys.LANGUAGE);\n this.translationService.changeLanguage(this._language);\n } else {\n this.resetLanguage();\n }\n\n\n if (this.localStorage.exists(DBkeys.THEME_ID)) {\n this._themeId = this.localStorage.getDataObject(DBkeys.THEME_ID);\n this.themeManager.installTheme(this.themeManager.getThemeByID(this._themeId));\n } else {\n this.resetTheme();\n }\n\n\n if (this.localStorage.exists(DBkeys.HOME_URL)) {\n this._homeUrl = this.localStorage.getDataObject(DBkeys.HOME_URL);\n }\n\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_STATISTICS)) {\n this._showDashboardStatistics = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_STATISTICS);\n }\n\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_NOTIFICATIONS)) {\n this._showDashboardNotifications = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_NOTIFICATIONS);\n }\n\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_TODO)) {\n this._showDashboardTodo = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_TODO);\n }\n\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_BANNER)) {\n this._showDashboardBanner = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_BANNER);\n }\n }\n\n\n private saveToLocalStore(data: any, key: string) {\n setTimeout(() => this.localStorage.savePermanentData(data, key));\n }\n\n\n public import(jsonValue: string) {\n\n this.clearLocalChanges();\n\n if (jsonValue) {\n const importValue: UserConfiguration = Utilities.JsonTryParse(jsonValue);\n\n if (importValue.language != null) {\n this.language = importValue.language;\n }\n\n if (importValue.themeId != null) {\n this.themeId = +importValue.themeId;\n }\n\n if (importValue.homeUrl != null) {\n this.homeUrl = importValue.homeUrl;\n }\n\n if (importValue.showDashboardStatistics != null) {\n this.showDashboardStatistics = importValue.showDashboardStatistics;\n }\n\n if (importValue.showDashboardNotifications != null) {\n this.showDashboardNotifications = importValue.showDashboardNotifications;\n }\n\n if (importValue.showDashboardTodo != null) {\n this.showDashboardTodo = importValue.showDashboardTodo;\n }\n\n if (importValue.showDashboardBanner != null) {\n this.showDashboardBanner = importValue.showDashboardBanner;\n }\n }\n\n this.onConfigurationImported.next();\n }\n\n\n public export(changesOnly = true): string {\n\n const exportValue: UserConfiguration = {\n language: changesOnly ? this._language : this.language,\n themeId: changesOnly ? this._themeId : this.themeId,\n homeUrl: changesOnly ? this._homeUrl : this.homeUrl,\n showDashboardStatistics: changesOnly ? this._showDashboardStatistics : this.showDashboardStatistics,\n showDashboardNotifications: changesOnly ? this._showDashboardNotifications : this.showDashboardNotifications,\n showDashboardTodo: changesOnly ? this._showDashboardTodo : this.showDashboardTodo,\n showDashboardBanner: changesOnly ? this._showDashboardBanner : this.showDashboardBanner\n };\n\n return JSON.stringify(exportValue);\n }\n\n\n public clearLocalChanges() {\n this._language = null;\n this._themeId = null;\n this._homeUrl = null;\n this._showDashboardStatistics = null;\n this._showDashboardNotifications = null;\n this._showDashboardTodo = null;\n this._showDashboardBanner = null;\n\n this.localStorage.deleteData(DBkeys.LANGUAGE);\n this.localStorage.deleteData(DBkeys.THEME_ID);\n this.localStorage.deleteData(DBkeys.HOME_URL);\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_STATISTICS);\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_NOTIFICATIONS);\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_TODO);\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_BANNER);\n\n this.resetLanguage();\n this.resetTheme();\n }\n\n\n private resetLanguage() {\n const language = this.translationService.useBrowserLanguage();\n\n if (language) {\n this._language = language;\n } else {\n this._language = this.translationService.useDefaultLangage();\n }\n }\n\n private resetTheme() {\n this.themeManager.installTheme();\n this._themeId = null;\n }\n}\n","\n\nexport class DepoAssignmentProductNumberLoading {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(DAPYear?: number, DAPCode?: number, DAPLCNum?: number, DAPDepoCode?: string) {\n this.DAPYear = DAPYear;\n this.DAPCode = DAPCode;\n this.DAPLCNum = DAPLCNum;\n this.DAPDepoCode = DAPDepoCode;\n }\n public DAPYear: number;\n public DAPCode: number;\n public DAPLCNum: number;\n public DAPDepoCode: string;\n\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n@Component({\n selector: 'app-inventory',\n templateUrl: './inventory.component.html',\n animations: [fadeInOut]\n})\nexport class InventoryComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n
\n

موجودی انبار کالای تامین کننده

\n
\n
\n
\n
\n \n
\n
\n","
\r\n
\r\n
\r\n
\r\n
\r\n

تماس با ما

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n شماره تماس\r\n
\r\n
    \r\n
  • \r\n دفتر مرکزی :\r\n 03136639000\r\n \r\n
  • \r\n
  • \r\n دفتر تهران :\r\n 02122653679 و\r\n 02175968 \r\n
  • \r\n
  • \r\n همه روزه از ساعت --- تا ساعت --- پاسخگوی شما هستیم\r\n
  • \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

فرم تماس

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\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 } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-client-contact',\r\n templateUrl: './client-contact.component.html',\r\n styleUrls: ['./client-contact.component.scss']\r\n})\r\nexport class ClientContactComponent {\r\n isContactPage: boolean;\r\n \r\n constructor(private avRoute: ActivatedRoute) {\r\n this.isContactPage = false;\r\n const url: string = avRoute.snapshot.url.join('');\r\n if (url=='contact') {\r\n this.isContactPage = true;\r\n }\r\n }\r\n \r\n \r\n}\r\n","\n\nexport class VMSaleSubSendProduct_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(SspartCode?: number, Sspcode?: number, Sspyear?: number, Ssppcode?: string, Sspcount?: number, Sspdes?: string, SspsendCount?: number, BarCode?: string) {\n this.SspartCode = SspartCode;\n this.Sspcode = Sspcode;\n this.Sspyear = Sspyear;\n this.Ssppcode = Ssppcode;\n this.Sspcount = Sspcount;\n this.Sspdes = Sspdes;\n this.SspsendCount = SspsendCount;\n this.barCode = BarCode;\n\n }\n public SspartCode: number;\n public Sspcode: number;\n public Sspyear: number;\n public Ssppcode: string;\n public Sspcount: number;\n public Sspdes: string;\n public SspsendCount: number;\n public barCode: string;\n}\n\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { Subscription, Observable, fromEvent, of, merge } from 'rxjs';\nimport { map, distinctUntilChanged } from 'rxjs/operators';\n\nrequire('chart.js');\n\n@Component({\n selector: 'statistics-demo',\n templateUrl: './statistics-demo.component.html',\n styleUrls: ['./statistics-demo.component.scss']\n})\nexport class StatisticsDemoComponent implements OnInit, OnDestroy {\n\n chartData = [\n { data: [65, 59, 80, 81, 56, 55], label: 'Series A' },\n { data: [28, 48, 40, 19, 86, 27], label: 'Series B' },\n { data: [18, 48, 77, 9, 100, 27], label: 'Series C' }\n ];\n chartLabels = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'];\n chartOptions = {\n responsive: true,\n title: {\n display: false,\n fontSize: 16,\n text: 'Important Stuff'\n }\n };\n chartColors = [\n { // grey\n backgroundColor: 'rgba(148,159,177,0.2)',\n borderColor: 'rgba(148,159,177,1)',\n pointBackgroundColor: 'rgba(148,159,177,1)',\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: 'rgba(148,159,177,0.8)'\n },\n { // dark grey\n backgroundColor: 'rgba(77,83,96,0.2)',\n borderColor: 'rgba(77,83,96,1)',\n pointBackgroundColor: 'rgba(77,83,96,1)',\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: 'rgba(77,83,96,1)'\n },\n { // something else\n backgroundColor: 'rgba(128,128,128,0.2)',\n borderColor: 'rgba(128,128,128,1)',\n pointBackgroundColor: 'rgba(128,128,128,1)',\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: 'rgba(128,128,128,0.8)'\n }\n ];\n chartLegend = true;\n chartType = 'line';\n\n timerReference: any;\n windowWidth$: Observable;\n windowWidthSub: Subscription;\n\n\n constructor(private alertService: AlertService) {\n\n }\n\n\n ngOnInit() {\n this.timerReference = setInterval(() => this.randomize(), 5000);\n\n const initialWidth$ = of(window.innerWidth);\n const resizedWidth$ = fromEvent(window, 'resize').pipe(map((event: any) => event.target.innerWidth as number));\n this.windowWidth$ = merge(initialWidth$, resizedWidth$).pipe(distinctUntilChanged());\n\n this.windowWidthSub = this.windowWidth$.subscribe(width => this.chartLegend = width < 600 ? false : true);\n }\n\n ngOnDestroy() {\n clearInterval(this.timerReference);\n this.windowWidthSub.unsubscribe();\n }\n\n\n\n randomize(): void {\n const _chartData = new Array(this.chartData.length);\n for (let i = 0; i < this.chartData.length; i++) {\n _chartData[i] = { data: new Array(this.chartData[i].data.length), label: this.chartData[i].label };\n\n for (let j = 0; j < this.chartData[i].data.length; j++) {\n _chartData[i].data[j] = Math.floor((Math.random() * 100) + 1);\n }\n }\n\n this.chartData = _chartData;\n }\n\n changeChartType(type: string) {\n this.chartType = type;\n }\n\n showMessage(msg: string): void {\n this.alertService.showMessage('Demo', msg, MessageSeverity.info);\n }\n\n showDialog(msg: string): void {\n this.alertService.showDialog(msg, DialogType.prompt, (val) => this.configure(true, val), () => this.configure(false));\n }\n\n configure(response: boolean, value?: string) {\n\n if (response) {\n\n this.alertService.showStickyMessage('Simulating...', '', MessageSeverity.wait);\n\n setTimeout(() => {\n\n this.alertService.resetStickyMessage();\n this.alertService.showMessage('Demo', `Your settings was successfully configured to \\\"${value}\\\"`, MessageSeverity.success);\n }, 2000);\n } else {\n this.alertService.showMessage('Demo', 'Operation cancelled by user', MessageSeverity.default);\n }\n }\n\n chartClicked(e): void {\n\n }\n\n chartHovered(e): void {\n\n }\n}\n","
\n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{label}}
{{d && d.label.split(' ').pop()}}{{d && d.data[j]}}
\n
\n \n
\n \n \n
\n \n \n
\n
\n","\n\nexport class SaleSubOrders {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(OpartCode?: number, OorderNum?: number, Oyear?: number, Pcode?: string, Oscount?: number, Osdes?: string, BarCode?: string) {\n this.OpartCode = OpartCode;\n this.OorderNum = OorderNum;\n this.Oyear = Oyear;\n this.Pcode = Pcode;\n this.Oscount = Oscount;\n this.Osdes = Osdes;\n this.barCode = BarCode;\n\n\n\n }\n public OpartCode: number;\n public OorderNum: number;\n public Oyear: number;\n public Pcode: string;\n public Oscount: number;\n public Osdes: string;\n public barCode: string;\n\n\n\n\n\n //public int OpartCode { get; set; }\n // public int OorderNum { get; set; }\n // public short Oyear { get; set; }\n // public string Pcode { get; set; }\n // public long Oscount { get; set; }\n // public string Osdes { get; set; }\n\n // public virtual DepoCode PcodeNavigation { get; set; }\n\n}\n","export class ReportCashierByDateModel {\r\n customerCode: number;\r\n reportDate: string;\r\n sumRecipt: number = 0;\r\n sumNaghd: number = 0;\r\n sumPos: number = 0;\r\n sumCheck: number = 0;\r\n sumHavaleh: number = 0;\r\n sumAccount: number = 0;\r\n sumDiffOld: number = 0;\r\n sumCashier: number = 0;\r\n sumCashierRecive: number = 0;\r\n sumCustomerAcc: number = 0;\r\n sumCustomer: number = 0;\r\n notAcceptedContractPrice: number = 0;\r\n acceptedContractPrice: number = 0;\r\n canceledContractPrice: number = 0;\r\n contractPrice: number = 0;\r\n countALL: number = 0;\r\n typeDoc: any;\r\n userId: string;\r\n checkoutCashDeskId: number;\r\n}\r\n","import {Injectable} from '@angular/core';\nimport {CanActivate, Router, ActivatedRouteSnapshot, RouterStateSnapshot, CanActivateChild, NavigationExtras, CanLoad, Route} from '@angular/router';\nimport {AuthService} from './auth.service';\n\n\n@Injectable()\nexport class AuthGuard implements CanActivate, CanActivateChild, CanLoad {\n constructor(private authService: AuthService, private router: Router) {\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\n\n const url: string = state.url;\n return this.checkLogin(url);\n }\n\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\n return this.canActivate(route, state);\n }\n\n canLoad(route: Route): boolean {\n\n const url = `/${route.path}`;\n return this.checkLogin(url);\n }\n\n checkLogin(url: string): boolean {\n\n if (this.authService.isLoggedIn) {\n return true;\n }\n\n this.authService.loginRedirectUrl = url;\n this.router.navigate(['/login']);\n\n return false;\n }\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class DepoAssignmentProduct {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(DAPYear?: number, DAPCode?: number, DAPDepCode?: string, DAPDateAssignment?: string, DAPSysDate?: string, DAPUserCode?: number, DAPTCode?: number\r\n , DAPPrice?: number\r\n , DAPCancelBit?: boolean\r\n , DAPCustomerMainCode?: number\r\n , DAPCustomerSubCode?: number\r\n , ContractCode?: number\r\n , ContractYear?: number\r\n , PartCode?: number\r\n\r\n ) {\r\n this.DAPYear = DAPYear;\r\n this.DAPCode = DAPCode;\r\n this.DAPDepCode = DAPDepCode;\r\n this.DAPDateAssignment = DAPDateAssignment;\r\n this.DAPSysDate = DAPSysDate;\r\n this.DAPUserCode = DAPUserCode;\r\n this.DAPTCode = DAPTCode;\r\n this.DAPPrice = DAPPrice;\r\n this.DAPCancelBit = DAPCancelBit;\r\n this.DAPCustomerMainCode = DAPCustomerMainCode;\r\n this.DAPCustomerSubCode = DAPCustomerSubCode;\r\n this.ContractCode = ContractCode;\r\n this.ContractYear = ContractYear;\r\n this.PartCode = PartCode;\r\n }\r\n public DAPYear: number;\r\n public DAPCode: number;\r\n public DAPDepCode: string;\r\n public DAPDateAssignment: string;\r\n public DAPSysDate: string;\r\n public DAPUserCode: number;\r\n public DAPTCode: number;\r\n public DAPPrice: number;\r\n public DAPCancelBit: boolean;\r\n public DAPCustomerMainCode: number;\r\n public DAPCustomerSubCode: number;\r\n public ContractCode: number;\r\n public ContractYear: number;\r\n public PartCode: 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 //public int OpartCode { get; set; }\r\n // public int OorderNum { get; set; }\r\n // public short Oyear { get; set; }\r\n // public string Pcode { get; set; }\r\n // public long Oscount { get; set; }\r\n // public string Osdes { get; set; }\r\n\r\n // public virtual DepoCode PcodeNavigation { get; set; }\r\n\r\n}\r\n","\n\nimport { SaleSubReceipt } from \"./SaleReceipts/SaleSubReceipt.model\";\n\nexport class VMUpdateSaleSubReceipt {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(oldSerial?: string, newContractCode?: number, saleSubReceipt?: SaleSubReceipt) {\n\n this.oldSerial = oldSerial;\n this.newContractCode = newContractCode;\n this.saleSubReceipt = saleSubReceipt;\n\n }\n\n public oldSerial: string;\n public newContractCode: number;\n public saleSubReceipt: SaleSubReceipt = new SaleSubReceipt();\n\n\n}\n","export enum RequestInvoiceEnum {\r\n requestInvoice = 0,\r\n requestInvoiceBack = 1\r\n}\r\n","\r\n// =============================\r\n// By ASafaei\r\n// \r\n// =============================\r\n\r\nimport { EventEmitter, Injectable, Output } from '@angular/core';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\nimport * as moment from 'jalali-moment';\r\n\r\n@Injectable()\r\nexport class SharedService {\r\n\r\n public messageSource = new BehaviorSubject('--');\r\n currentMessage = this.messageSource.asObservable();\r\n\r\n constructor() { }\r\n\r\n changeMessage(message: string) {\r\n this.messageSource.next(message)\r\n }\r\n\r\n getPriceToPercentage(currentPrice: number, maximumPrice: number): any {\r\n return (currentPrice / maximumPrice) * 100;\r\n }\r\n getPercentageToPrice(currentPercentage: number, maximumPrice: number): any {\r\n return (currentPercentage * maximumPrice) / 100;\r\n }\r\n getPercentageToPrice2(currentPercentage: number, maximumPrice: number): any {\r\n return (currentPercentage * maximumPrice) / 100;\r\n }\r\n\r\n toConvertCurrencyFormatter(value: number): any {\r\n\r\n var currencyFormatter = require('currency-formatter');\r\n return currencyFormatter.format(value, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n CurrencyFormatterConvertToNumber(value: any): any {\r\n\r\n var currencyFormatter = require('currency-formatter');\r\n return currencyFormatter.unformat(value, { code: 'USD' });\r\n }\r\n\r\n convert2english(string: string) {\r\n var len = string.length;\r\n var str = string;\r\n //for (var i = 0; i < len; i++) {\r\n // str = (string.replace('۰', '0').replace('۱', '1').replace('۲', '2').replace('۳', '3').replace('۴', '4').replace('۵', '5').replace('۶', '6').replace('۷', '7').replace('۸', '8').replace('۹', '9'));\r\n //}\r\n //return str;\r\n\r\n var\r\n persianNumbers = [/۰/g, /۱/g, /۲/g, /۳/g, /۴/g, /۵/g, /۶/g, /۷/g, /۸/g, /۹/g],\r\n arabicNumbers = [/٠/g, /١/g, /٢/g, /٣/g, /٤/g, /٥/g, /٦/g, /٧/g, /٨/g, /٩/g];\r\n for (var i = 0; i < 10; i++) {\r\n str = str.replace(persianNumbers[i], i.toString()).replace(arabicNumbers[i], i.toString());\r\n }\r\n\r\n return str;\r\n }\r\n\r\n checkDate(FristDate: moment.Moment): number {\r\n var nowDate = moment();\r\n var d1 = Number(FristDate.toDate().getDate().toLocaleString().replace('/', '').replace('-', ''));\r\n var d2 = Number(nowDate.toDate().getDate().toLocaleString().replace('/', '').replace('-', ''));\r\n if (d1 > d2) {\r\n return d1 - d2;\r\n }\r\n else {\r\n return 0;\r\n }\r\n }\r\n\r\n getDateToMoment(date: string): moment.Moment {\r\n\r\n var sdate0 = this.convert2english(date).replace('-', '/').replace('-', '/');\r\n var sdate = sdate0.split('/');\r\n var day = Number(sdate[2].toString()),\r\n month = Number(sdate[1].toString()),\r\n year = Number(sdate[0].toString());\r\n\r\n var date = year.toString() + '-' +\r\n ((month >= 1 && month <= 9) ? '0' + month.toString() : month.toString()) + '-' +\r\n ((day >= 1 && day <= 9) ? '0' + day.toString() : day.toString());\r\n\r\n return moment(date, 'jYYYY,jMM,jDD');\r\n }\r\n}\r\n","\n\nexport class SerialProduct {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(productCode?: string, serialCode?: string) {\n this.serialCode = serialCode;\n this.productCode = productCode;\n }\n public productCode: string;\n public serialCode: string;\n\n\n\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: 'input[numbersOnly]'\r\n})\r\nexport class NumberDirective {\r\n\r\n constructor(private _el: ElementRef) { }\r\n\r\n @HostListener('input', ['$event']) onInputChange(event) {\r\n const initalValue = this._el.nativeElement.value;\r\n this._el.nativeElement.value = initalValue.replace(/[^0-9]*/g, '');\r\n if (initalValue !== this._el.nativeElement.value) {\r\n event.stopPropagation();\r\n }\r\n }\r\n\r\n}\r\n","\n\nexport class SupliesOrderRelationReciept {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(soryear?: number, sorcode?: number, sorunitBuy?: number\n , sorkindRequest?: number\n , soryearReciept?: number\n , sorcodeReceipt?: number\n , sordepoReceipt?: string\n , sorprodactCode?: string\n , sorcount?: number\n , sorsysDate?: string\n , soruserCode?: number\n ) {\n this.soryear = soryear;\n this.sorcode = sorcode;\n this.sorunitBuy = sorunitBuy;\n this.sorkindRequest = sorkindRequest;\n this.soryearReciept = soryearReciept;\n this.sorcodeReceipt = sorcodeReceipt;\n this.sordepoReceipt = sordepoReceipt;\n this.sorprodactCode = sorprodactCode;\n this.sorcount = sorcount;\n this.sorsysDate = sorsysDate;\n this.soruserCode = soruserCode;\n }\n public soryear: number;\n public sorcode: number;\n public sorunitBuy: number;\n public sorkindRequest: number;\n public soryearReciept: number;\n public sorcodeReceipt: number;\n public sordepoReceipt: string;\n public sorprodactCode: string;\n public sorcount: number;\n public sorsysDate: string;\n public soruserCode: number;\n}\n","import { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'warehousestore',\r\n templateUrl: './warehousestore.component.html',\r\n animations: [fadeInOut]\r\n})\r\nexport class WarehouseStoreComponent {\r\n\r\n \r\n constructor() {\r\n\r\n \r\n }\r\n\r\n}\r\n","
\r\n
\r\n

\r\n \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 { ViewChild, OnInit, TemplateRef, ErrorHandler, Output, EventEmitter, Input } from '@angular/core';\r\nimport { Component } from '@angular/core';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { RequestInvoiceProduct } from '../../models/RequestInvoiceProduct.model';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { RequestInvoiceEnum } from '../../enums/request-invoice.enum';\r\n\r\n@Component({\r\n selector: 'request-invoice-product',\r\n templateUrl: './request-invoice-product.component.html',\r\n styleUrls: ['./request-invoice-product.component.scss']\r\n})\r\nexport class requestinvoiceproductComponent implements OnInit {\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private translationService: AppTranslationService,\r\n private excelService: ExcelService,\r\n private authService: AuthService) { }\r\n\r\n public isEditMode = true;\r\n rowsCache: RequestInvoiceProduct[] = [];\r\n public isError = false;\r\n rows: RequestInvoiceProduct[] = [];\r\n editingCName: { name: string };\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n columns: any[] = [];\r\n loadingIndicator: boolean;\r\n selected = [];\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n isSaving=false;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public REQPYear: number;\r\n public REQPCode: number;\r\n public REQPDealercode: string;\r\n public MoneySum: number;\r\n public REQDiscount: number;\r\n public REQDiscountMoney: number;\r\n public REQInvoiceNumber: number;\r\n public revertInvoiceNumber: number;\r\n public REQTax: number;\r\n public REQAllMoney: number;\r\n public REQInvoicePrice: number;\r\n public requestType: number = 0;\r\n public requestInvoiceId: number = 0;\r\n @Input() changeModal: ModalDirective;\r\n @Output() reloadData = new EventEmitter();\r\n \r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n\r\n\r\n ngOnInit() {\r\n this.LoadForm();\r\n\r\n }\r\n\r\n LoadForm() {\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n { prop: 'index', name: gT('requestInvoiceProduct.Index'), width: 70, cellTemplate: this.indexTemplate, canAutoResize: false, summaryFunc: cells => this.DetailSummery(cells) },\r\n { prop: 'reqpProductCode', name: gT('requestInvoiceProduct.ProductCode'), width: 150 },\r\n { prop: 'reqpName', name: gT('requestInvoiceProduct.ProductName'), width: 350 },\r\n { prop: 'reqpAmount', name: gT('requestInvoiceProduct.Number'), width: 100, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'reqpPrice', name: gT('requestInvoiceProduct.Amount'), width: 150, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'reqpPriceSum', name: gT('requestInvoiceProduct.TotalAmount'), width: 150, summaryFunc: cells => this.SumMoney(cells) }\r\n //{ prop: 'dapDateAssignment', name: gT('تاریخ حواله'), width: 200 },\r\n //{ prop: 'drtbBarCode', name: gT('بارکد'), width: 250 },\r\n //{ prop: 'drpCode', name: gT('شماره رسید'), width: 150 },\r\n //{ prop: 'soCode', name: gT('شماره قرارداد'), width: 150 },\r\n //{ prop: 'moneyBase', name: gT('مبلغ پایه'), width: 150 },\r\n //{ prop: 'spipPrice', name: gT('مبلغ پیش فاکتور'), width: 150 },\r\n //{ prop: 'pkName', name: gT('نام گروه'), width: 150 },\r\n //{ prop: 'depTitle', name: gT('نام انبار'), width: 150 },\r\n //{ prop: 'cName', name: gT('نام مشتری'), width: 150 }\r\n ];\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.loadingIndicator = true;\r\n\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n\r\n loaddata(requestType: number) {\r\n this.requestType = requestType;\r\n this.accountService.GetRequestInvoiceProduct(this.REQPYear, this.REQPCode, this.REQPDealercode, requestType)\r\n .subscribe(\r\n a => {\r\n this.MethodLoadProduct(a);\r\n }\r\n\r\n ,error => this.MethodError(error));\r\n }\r\n\r\n MethodLoadProduct(a: RequestInvoiceProduct[]): void {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n a.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (user.reqpPrice) {\r\n this.requestInvoiceId = user.requestInvoiceId\r\n user.reqpPrice = this.SumMoney([user.reqpPrice]);\r\n user.reqpPriceSum = this.SumMoney([user.reqpPriceSum]);\r\n }\r\n //if (user.reqDatetime != null) {\r\n // user.reqDatetime = new Date(user.reqDatetime.toString()).toLocaleDateString('fa-IR');\r\n //}\r\n //if (user.reqStatus == \"0\") {\r\n // user.reqStatus = \"عدم ارسال\";\r\n //}\r\n //else if (user.reqStatus == \"1\") {\r\n // user.reqStatus = \"ارسال شده\";\r\n //}\r\n });\r\n\r\n this.rowsCache = [...a];\r\n this.rows = a;\r\n }\r\n\r\n SaveRequestInsert() {\r\n if (this.requestType === 0) {\r\n this.accountService.UpdateRequestInvoice(this.REQPYear, this.REQPCode, this.REQPDealercode, this.REQTax, this.REQAllMoney, this.REQInvoiceNumber).subscribe(\r\n a => {\r\n this.reloadData.emit();\r\n this.changeModal.hide();\r\n this.alertService.showMessage('ذخیره', 'اطلاعات با موفقیت ذخیره گردید', MessageSeverity.success);\r\n this.isSaving = true;\r\n },\r\n error => {\r\n this.alertService.showMessage('خطا', 'مشکل در سیستم به وجود آمده است', MessageSeverity.error);\r\n });\r\n } else {\r\n this.accountService.updateRevertInvoiceEndpoin(this.requestInvoiceId, this.REQInvoiceNumber).subscribe(\r\n a => {\r\n this.reloadData.emit();\r\n this.changeModal.hide();\r\n this.alertService.showMessage('ذخیره', 'اطلاعات با موفقیت ذخیره گردید', MessageSeverity.success);\r\n this.isSaving = true;\r\n },\r\n error => {\r\n this.alertService.showMessage('خطا', 'مشکل در سیستم به وجود آمده است', MessageSeverity.error);\r\n });\r\n }\r\n }\r\n\r\n MethodError(error: any): void {\r\n throw new Error(error);\r\n }\r\n\r\n onSelect(row) {\r\n }\r\n\r\n\r\n trackByIdx(index: number, obj: any): any {\r\n return index;\r\n }\r\n\r\n ngAfterViewInit() {\r\n }\r\n\r\n resetForm(replace = false) { }\r\n\r\n reset() {\r\n //this.rowsCach = [];\r\n this.rows = [];\r\n this.isEditMode = false;\r\n this.REQPYear = 0;\r\n this.REQPCode = 0;\r\n this.REQPDealercode = \"\";\r\n this.MoneySum = 0;\r\n this.REQDiscount = 0;\r\n this.REQDiscountMoney = 0;\r\n this.REQInvoiceNumber = 0;\r\n this.REQTax = 0;\r\n this.REQAllMoney = 0;\r\n this.REQInvoicePrice = 0;\r\n\r\n this.isEditMode = true;\r\n this.rowsCache = [];\r\n this.isError = false;\r\n this.rows = [];\r\n this.editingCName = { name: \"\" }; \r\n this.loadingIndicator = false ;\r\n this.selected = [];\r\n this.summaryPosition = 'bottom';\r\n this.enableSummary = true;\r\n this.isSaving = false;\r\n }\r\n resetData() {\r\n this.reset();\r\n this.LoadForm();\r\n }\r\n\r\n exportAsXLSX(): void {\r\n this.excelService.exportAsExcelFile(this.rows, `لیست فاکتور های ${this.authService.currentUser.fullName}`);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\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 {ViewChild, OnInit, TemplateRef, Input} from '@angular/core';\r\nimport {Component} from '@angular/core';\r\nimport {Utilities} from '../../services/utilities';\r\nimport {SaleCustomer} from '../../models/SaleCustomer.model';\r\nimport {AccountService} from '../../services/account.service';\r\nimport {Permission} from '../../models/permission.model';\r\nimport {ModalDirective} from 'ngx-bootstrap/modal/public_api';\r\nimport {AppTranslationService} from '../../services/app-translation.service';\r\nimport {AlertService, MessageSeverity} from '../../services/alert.service';\r\nimport {AuthService} from '../../services/auth.service';\r\nimport {group} from '../../models/group.model';\r\nimport {Ostan} from '../../models/Ostan.model';\r\nimport {City} from '../../models/City.model';\r\nimport {PreInvoice} from '../../models/PreInvoice.model';\r\nimport {SaleNewContract} from '../../models/SaleNewContract.model';\r\nimport {ContractProduct} from '../../models/ContractProduct.model';\r\nimport {SalePreInvoiceForContracts} from '../../models/SalePreInvoiceForContracts.model';\r\nimport {PreInvoiceContract} from '../../models/PreInvoiceContract.model';\r\nimport {invpricecomponent} from './inv-price.component';\r\nimport {HesabKindBanks} from '../../models/HesabKindBanks.model';\r\nimport {SaleBankAccounts} from '../../models/SaleBankAccounts.model';\r\nimport {SalePreInvoiceForContractProductSelect} from '../../models/SalePreInvoiceForContractProductSelect.model';\r\nimport {CurrencyPipe} from '@angular/common';\r\nimport {DatePipe} from '@angular/common';\r\nimport {SaleBankAccountsView} from '../../models/SaleBankAccountsView.model';\r\nimport {InvInfoCComponent} from './inv-info-c.component';\r\nimport {MyAccountService} from '../../services/MyAccount.service';\r\nimport {ReportSaleCustomerInfoComponent} from './report-sale-customer-info.component';\r\nimport {IInstallments} from '../../models/installments.model';\r\nimport {IInstallmentsDetaile} from '../../models/installment-detail.model';\r\nimport {PricePaymentFormInfoComponent} from '../../components/controls/price-payment-form-info.component';\r\nimport {ColorSettingsService} from '../../services/color-settings';\r\nimport {RecordCustomerChecksInfoComponent} from './record-customer-checks-info.component';\r\nimport {SalePreInvoiceForContractCheckInfoModel} from '../../models/SalePreInvoiceForContractCheckInfo.model';\r\nimport {SalePreInvoiceForContractCheckInfoService} from '../../services/api-services/sale-preinvoice-for-contract-check-info-service';\r\nimport {forkJoin} from 'rxjs';\r\nimport {SaleSubReceiptSelect} from '../../models/SaleSubReceiptSelect.model';\r\nimport {InputPricePaymentFormInvoiceSaleModel} from '../../models/InputPricePaymentFormInvoiceSale.model';\r\nimport {ConfirmMessageModel} from '../../models/utilities/confirm-message.model';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {MatPaginator} from '@angular/material/paginator';\r\nimport {MatSort} from '@angular/material/sort';\r\nimport {CashDeskService} from '../../services/cash-desk-service/cash-desk.service';\r\nimport {CheckoutCashDeskModel} from '../../models/CashDesk/checkout-cash-desks.model';\r\nimport {ConfirmMessageEnum} from '../../enums/confirm-message.enum';\r\nimport {ShowUploadPage} from '../../enums/show-upload-page.enum';\r\nimport {SaleCustomerImageModel} from '../../models/SaleCustomerImage.model';\r\nimport {SaleCustomerImageInfosService} from '../../services/sale-customer-service/sale-customer-image-infos.service';\r\nimport {SaleClosingManagementService} from '../../services/base-services/sale-closing-management.service';\r\nimport {error} from 'console';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'inv-sale',\r\n templateUrl: './inv-sale.component.html',\r\n styleUrls: ['./inv-sale.component.scss'],\r\n providers: [DatePipe]\r\n})\r\nexport class invsalecomponent implements OnInit {\r\n PreTel: { name: string; };\r\n PreNathionalCode: { name: string; };\r\n PreCodePosti: { name: string; };\r\n PreTelHamrah: { name: string; };\r\n PreAddressstore: { name: string; };\r\n PreManageName: { name: string; };\r\n\r\n\r\n PreCustomerCode: { name: string; };\r\n PreNameGroup: { name: string; };\r\n\r\n // _currencyPipe: CurrencyPipe;\r\n // length: number;\r\n PreManageTel: { name: string; };\r\n // waiting: boolean = false;\r\n // idGroup: number;\r\n // summaryPosition = 'bottom';\r\n // enableSummary = true;\r\n // customerName: string = '';\r\n saleInvoiceDetail: PreInvoice = new PreInvoice();\r\n\r\n showInvoiceSale = false;\r\n // public dateObject: string;\r\n // public dateObjectto: string;\r\n // public dateObjectfrom: string;\r\n\r\n rowsCache: PreInvoice[] = [];\r\n // public AllpaySale: number = 0;\r\n // public spiPartCode = 5;\r\n public spiYear: number;\r\n public preInvoices: PreInvoice[] = [];\r\n rowsSalePreInvoiceForContractProductSelect: SalePreInvoiceForContractProductSelect[] = [];\r\n rowsSalePreInvoiceForContractProductSelectCash: SalePreInvoiceForContractProductSelect[] = [];\r\n SaleBankAccountsViewRows: SaleBankAccountsView[] = [];\r\n public installments: IInstallments;\r\n public installmentsDetail: IInstallmentsDetaile[] = [];\r\n public checkDetailList: SalePreInvoiceForContractCheckInfoModel[] = [];\r\n public saleReceiptList: SaleSubReceiptSelect[] = [];\r\n public invoiceSaleProducts: SalePreInvoiceForContractProductSelect[] = [];\r\n public checkoutCashDeskInDate: CheckoutCashDeskModel[] = [];\r\n public inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel = new InputPricePaymentFormInvoiceSaleModel();\r\n\r\n editingCName: { name: string };\r\n editingCCustomerName: { name: string };\r\n PreSeller: { name: string };\r\n PreAddress: { name: string; };\r\n PreDate: { name: string };\r\n PreNumberInvoice: { name: string };\r\n\r\n sbabankName: { name: string };\r\n sbaacountNum: { name: string };\r\n sbaNumberCard1: { name: string };\r\n sbaNumberCard2: { name: string };\r\n sbaNumberSheba: { name: string };\r\n\r\n public allhesabkindbank: HesabKindBanks[] = [];\r\n public allsalebankaccounts: SaleBankAccounts[] = [];\r\n public allbank: SaleBankAccounts[] = [];\r\n public SaleNewContractObj: SaleNewContract = new SaleNewContract();\r\n public SaleNewContractProductObj: ContractProduct = new ContractProduct();\r\n public SalePreInvoice: SalePreInvoiceForContracts = new SalePreInvoiceForContracts();\r\n public SalePreInvoiceSaleNewContract: PreInvoiceContract = new PreInvoiceContract();\r\n public salePreInvoice: PreInvoice = new PreInvoice();\r\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n public acceptInvoiceSale: boolean = false;\r\n public canceledInvoiceSale: boolean = false;\r\n public checkoutConfirm: boolean = false;\r\n public customerInfo: SaleCustomer;\r\n public customerImages: SaleCustomerImageModel[] = [];\r\n public applicantPage: number = ShowUploadPage.customers;\r\n\r\n public Ncpcodeobject: number;\r\n public formResetToggle = true;\r\n public showValidationErrors = false;\r\n public TypePrice: number = 1;\r\n public Cmain: number;\r\n public Csub: number;\r\n public form;\r\n columns: any[] = [];\r\n columnsPrint: any[] = [];\r\n columnsPrintCash: any[] = [];\r\n public customerInstallments: any;\r\n public showInstallments: boolean = false;\r\n loadingIndicator: boolean;\r\n reorderable: true;\r\n IsPrint: boolean = false;\r\n PreInvoiceObject: PreInvoice;\r\n Sale: SaleCustomer;\r\n allgroup: group[] = [];\r\n allOstan: Ostan[] = [];\r\n group: group;\r\n editedPreInvoice: PreInvoice;\r\n sourcePreInvoice: PreInvoice;\r\n public sourcePreInvoiceInfo: PreInvoice;\r\n editingFullName: { name: string };\r\n editingCUser: { name: string };\r\n selected = [];\r\n public tehranVillaCheck: boolean = true;\r\n serverDate: Date;\r\n listSalePreInvoice: PreInvoice[] = [];\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n\r\n public displayedColumns: string[] = ['spiCode', 'actions', 'nameTypePrice', 'cName', 'contractCode', 'spipDate', 'countProduct', 'status', 'sumPrice', 'installmentInterest'];//, 'customerCode', 'depoName', 'nameGroup'\r\n public invoiceSaleList: MatTableDataSource;\r\n public oldcheckDetailList: SalePreInvoiceForContractCheckInfoModel[];\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private accountService: AccountService,\r\n private translationService: AppTranslationService,\r\n private authService: AuthService,\r\n private myaccountService: MyAccountService,\r\n private colorSettingsService: ColorSettingsService,\r\n private salePerInvoiceForContractCheckInfoService: SalePreInvoiceForContractCheckInfoService,\r\n private saleCustomerImageInfosService: SaleCustomerImageInfosService,\r\n private saleClosingManagementService: SaleClosingManagementService,\r\n private cashDeskService: CashDeskService) {\r\n // this.spiYear = Number(this.authService.currentUser.phoneNumber);\r\n // this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n\r\n @ViewChild('indexTemplate', {static: true})\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModalprice', {static: false})\r\n editorModalprice: ModalDirective;\r\n\r\n @ViewChild('paymentInstallmentModal', {static: false})\r\n paymentInstallmentModal: ModalDirective;\r\n\r\n @ViewChild('recordCustomerCheck', {static: false})\r\n recordCustomerCheck: RecordCustomerChecksInfoComponent;\r\n\r\n @ViewChild('InvEditor', {static: true})\r\n InvEditor: InvInfoCComponent;\r\n\r\n @ViewChild('InvPrice', {static: true})\r\n InvPrice: invpricecomponent;\r\n\r\n @ViewChild('editorModal', {static: true})\r\n editorModal: ModalDirective;\r\n\r\n @ViewChild('priceEditor', {static: false})\r\n priceEditor: PricePaymentFormInfoComponent;\r\n\r\n @ViewChild('reportCustomerEditor', {static: false})\r\n reportCustomerEditor: ReportSaleCustomerInfoComponent;\r\n\r\n @ViewChild('editorModalReportCustomer', {static: false})\r\n editorModalReportCustomer: ModalDirective;\r\n\r\n ngOnInit() {\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columnsPrint = [\r\n {\r\n prop: 'index', name: gT('InvoiceSale.HomePage.Index'), width: 65, cellTemplate: this.indexTemplate, canAutoResize: false, summaryFunc: cells => {\r\n return \"جمع کل\";\r\n }\r\n },\r\n {prop: 'productName', name: gT('InvoiceSale.HomePage.DescriptionOfGoods'), width: 250, summaryFunc: () => null},\r\n {prop: 'spipAmount', name: gT('InvoiceSale.HomePage.Number'), width: 50, summaryFunc: () => null},\r\n {prop: 'spipPrice', name: gT('InvoiceSale.HomePage.UnitPrice'), width: 90, summaryFunc: () => null},\r\n {prop: 'spipDiscountPrice', name: gT('InvoiceSale.HomePage.DiscountAmount'), width: 93},\r\n {prop: 'spipDiscountPercent', name: gT('InvoiceSale.HomePage.DiscountPercent'), width: 93},\r\n //{ prop: 'spipSumDiscountPrice', name: gT('مبلغ کل تخفیف'), width: 100, summaryFunc: cells => null},\r\n //{ prop: 'spipSumPrice', name: gT('مبلغ کل'), width: 100, summaryFunc: () => null },\r\n {prop: 'spipPay', name: gT('InvoiceSale.HomePage.TotalAmountAfterDiscount'), width: 120, summaryFunc: cells => null},\r\n {prop: 'tax', name: gT('InvoiceSale.HomePage.Taxation'), width: 85, summaryFunc: () => null},\r\n {prop: 'pay', name: gT('InvoiceSale.HomePage.Payment'), width: 140, summaryFunc: cells => this.SumMoney(cells)},\r\n //{ prop: 'commodityId', name: gT('شناسه کالا'), width: 100, summaryFunc: cells => this.SumMoney(cells) },\r\n //{ prop: 'spipPay', name: gT('جمع کل'), width: 200, summaryFunc: cells => null }\r\n ];\r\n if (this.CanManagemanageInvoiceSale) {\r\n //this.columns.push({ name: '', width: 200, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"تاریخ میلادی\";\r\n });\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"اختلاف تاریخ\";\r\n });\r\n\r\n this.columnsPrint.push({name: '', width: 0, resizeable: false, canAutoResize: false, sortable: false, draggable: false});\r\n this.columnsPrintCash = this.columnsPrint;\r\n\r\n }\r\n this.serverDate = this.accountService.getServerDateTime();\r\n this.loadData();\r\n this.loadBank();\r\n this.loadHesabKind();\r\n this.loadSaleBankAccount();\r\n this.editingCUser = {name: this.authService.currentUser.fullName};\r\n this.accountService.getNameHeader(this.authService.currentUser.id).subscribe(\r\n res => this.editingCName = {name: res.cName},\r\n error => this.saveFailedHelper(error)\r\n );\r\n // this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\r\n // this.dateObjectfrom = this.serverDate.toLocaleDateString('fa-IR');\r\n // var yourDate = this.serverDate;\r\n // this.dateObjectto = new Date(yourDate.setDate(yourDate.getDate() + 2)).toLocaleDateString('fa-IR');\r\n\r\n // this.editingCCustomerName = { name: \"فروشگاه جاده ملارد\" };\r\n // this.PreSeller = { name: \"داوود جوون\" };\r\n // this.PreDate = { name: \"1399/12/01\" };\r\n // this.PreAddress = { name: \"سر پل ذهاب اسکندری\" };\r\n // this.PreTel = { name: \"01142225468\" };\r\n // this.PreNathionalCode = { name: \"5779968454\" };\r\n // this.PreCodePosti = { name: \"145789001\" };\r\n // this.PreTelHamrah = { name: \"\" };\r\n // this.PreAddressstore = { name: \"کرج\" };\r\n // this.PreManageName = { name: \"احسان جوادی\" };\r\n }\r\n\r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.invoiceSaleList.filter = filterValue.trim().toLowerCase();\r\n if (this.invoiceSaleList.paginator) {\r\n this.invoiceSaleList.paginator.firstPage();\r\n }\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null!, MessageSeverity.error);\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, {code: 'USD'})), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n\r\n refreshPreInvoiceData() {\r\n this.alertService.startLoadingMessage();\r\n let partCode = this.GetPartCode(this.Cmain);\r\n this.accountService.getPreInvoices(Number(this.authService.currentUser.phoneNumber), this.Cmain, partCode, 0).subscribe(\r\n results => this.onDataLoadSuccessful(results)),\r\n error => this.alertService.stopLoadingMessage();\r\n }\r\n\r\n //ToDo: انجام شود این تابع خام هست\r\n GetPartCode(Cmain: number) {\r\n return 4;\r\n }\r\n\r\n\r\n loadData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n if (this.canViewCustomer) {\r\n if (!this.authService.isSessionExpired) {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest(res));\r\n } else {\r\n this.alertService.showMessage('پایان مدت زمان ورود', `لطفا مجددا به حساب کاربری خود وارد شوید!`, MessageSeverity.warn);\r\n //this.router.navigate(['/login']);\r\n }\r\n }\r\n this.accountService.getostans().subscribe(res => this.onLoadostan(res));\r\n }\r\n\r\n MethodTest(cMainCode: number) {\r\n this.checkoutCashDeskStatus(cMainCode);\r\n this.InvEditor.Cmain = cMainCode;\r\n this.Cmain = cMainCode;\r\n this.loadingIndicator = true;\r\n this.accountService.GetSBACode(this.Cmain).subscribe(res => this.methodSBACode(res), error => this.onDataLoadFailed(error));\r\n this.accountService.GetCustomerAddress(cMainCode).subscribe(results => this.onDataLoadSuccessfulGetCustomer(results), error => this.onDataLoadFailed(error));\r\n //ToDo:Get PreInvoices\r\n this.accountService.getPreInvoices(Number(this.authService.currentUser.phoneNumber), cMainCode, 5, 0).subscribe(\r\n results => this.onDataLoadSuccessful(results),\r\n error => this.onDataLoadFailed(error));\r\n }\r\n\r\n methodSBACode(res: number): void {\r\n this.accountService.GetSaleBankAccountsList(res).subscribe(res => this.methodListSaleBank(res), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n methodListSaleBank(res: SaleBankAccountsView[]): void {\r\n res.forEach((user) => {\r\n this.sbabankName = {name: user.sbabankName.toString()};\r\n this.sbaacountNum = {name: user.sbaacountNum.toString()};\r\n this.sbaNumberCard1 = {name: user.sbaNumberCard1.toString()};\r\n this.sbaNumberSheba = {name: user.sbaNumberSheba.toString()};\r\n });\r\n }\r\n\r\n onDataLoadSuccessfulGetCustomer(results: SaleCustomer[]): void {\r\n results.forEach((user) => {\r\n this.PreAddressstore = {name: user.cAddress}; //\"کرج-جاده ملارد ابتدای پل ارتش پلاک 300\"\r\n this.PreManageName = {name: user.cAdminName}; //\"فریبرز مشایخی نظام آبادی\"\r\n this.PreManageTel = {name: user.cTel};//\"026-36505548\"\r\n this.editingCCustomerName = {name: user.cName};\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.InvEditor.changesSavedCallback = () => {\r\n this.editorModal.hide();\r\n this.loadData();\r\n };\r\n this.InvEditor.changesCancelledCallback = () => {\r\n this.InvEditor.resetInvosale();\r\n this.InvEditor.paymentType2.setValue(\"\");\r\n this.InvEditor.selectGroup1.setValue(\"\");\r\n this.InvEditor.selectGroup2.setValue(\"\");\r\n this.editedPreInvoice = null!;\r\n this.sourcePreInvoice = null!;\r\n this.editorModal.hide();\r\n };\r\n this.reportCustomerEditor.UpdateNationalCodeCallback = () => {\r\n this.editorModalReportCustomer.hide();\r\n };\r\n this.loadData();\r\n }\r\n\r\n onLoadcity(Ostans: City[]) {\r\n this.allOstan = Ostans;\r\n }\r\n\r\n onDataLoadSuccessful(objPreInvoice: PreInvoice[]) {\r\n this.listSalePreInvoice = objPreInvoice;\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n // this.serverDate = this.accountService.getServerDateTime();\r\n\r\n this.listSalePreInvoice.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1;\r\n user.datediffrent = this.IsOneDay(new Date(user.spiDate));\r\n });\r\n\r\n this.invoiceSaleList = new MatTableDataSource(this.listSalePreInvoice);\r\n this.invoiceSaleList.paginator = this.paginator;\r\n this.invoiceSaleList.sort = this.sort;\r\n }\r\n\r\n IsOneDay(dateInsert: Date) {\r\n var dd = this.dayDiff(this.serverDate, dateInsert);\r\n return dd;\r\n }\r\n\r\n dayDiff(date1: Date, date2: Date) {\r\n var diff = Math.abs(date1.getTime() - date2.getTime());\r\n var diffDays = Math.ceil(diff / (1000 * 3600 * 24));\r\n return diffDays;\r\n }\r\n\r\n onLoadostan(Ostans: Ostan[]) {\r\n this.allOstan = Ostans;\r\n }\r\n\r\n newCus() {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n this.Sale = this.InvEditor.newCustomer(this.allgroup, this.allOstan);\r\n this.editingCUser = {name: this.accountService.currentUser.fullName};\r\n this.InvEditor.CustomerClubObj.customerAddress = \"\";\r\n this.InvEditor.CustomerClubObj.customerMobile = \"\";\r\n this.InvEditor.CustomerClubObj.customerName = \"\";\r\n this.InvEditor.CustomerClubObj.customerID = 0;\r\n this.InvEditor.isEditing = false;\r\n this.InvEditor.preinvoicenew = true;\r\n this.InvEditor.EmptySearch();\r\n this.InvEditor.firstloadGroup();\r\n this.editorModal.show();\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n public spiCodeLocal: number;\r\n public spiYearLocal: number;\r\n public spiPartCodeLocal: number;\r\n public PriceKind: number;\r\n\r\n\r\n printContract() {\r\n window.print();\r\n }\r\n\r\n reprintContract(row: PreInvoice) {\r\n if (row.typePrice === 2) {\r\n this.accountService.getinstallmentsService(Number(this.authService.currentUser.phoneNumber), row.spiPartCode, row.spiCode).subscribe(\r\n (res: IInstallments) => {\r\n if (res != null) {\r\n this.installments = res;\r\n this.installmentsDetail = res.tbl_InstallmentsDetails;\r\n this.accountService.GetAllPreInvoiceSelectList(+this.authService.currentUser.phoneNumber, row.spiPartCode, row.spiCode, 1)\r\n .subscribe(results => {\r\n this.invoiceSaleProducts = results;\r\n this.saleInvoiceDetail = row;\r\n $('.contract-text').modal('show');\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n public AcceptPreInvoice(row: PreInvoice) {\r\n if (row.typePrice === 2) {\r\n $('.contract-text').modal('show');\r\n } else {\r\n if (this.checkoutCashDeskInDate.length <= 0) {\r\n this.accountService.UpdateAccept(row.spiYear, row.spiPartCode, row.spiCode).subscribe(\r\n res => this.savePreInvoiceSuccessHelperAccept(row),\r\n error => this.saveFailedHelper(error));\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم تایید پیش فاکتور';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به تایید پیش فاکتور نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n }\r\n }\r\n\r\n private savePreInvoiceSuccessHelperAccept(row: PreInvoice) {\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(\r\n res => this.methodCmain(res, row)\r\n );\r\n }\r\n\r\n methodCmain(CodeMain: number, row: PreInvoice) {\r\n this.Cmain = CodeMain;\r\n this.accountService.CreateContractForPerInvoiceProducts(Number(this.authService.currentUser.phoneNumber), row.spiPartCode, row.spiCode, Number(this.authService.currentUser.phoneNumber), false).subscribe(\r\n res => this.saveCreateContractForPerInvoiceProductsSuccessHelper(res)\r\n );\r\n }\r\n\r\n saveCreateContractForPerInvoiceProductsSuccessHelper(preInvoice: PreInvoice) {\r\n this.salePreInvoice = preInvoice;\r\n if (this.salePreInvoice != null) {\r\n if (this.salePreInvoice.contractCode != null && this.salePreInvoice.contractCode != 0) {\r\n this.Ncpcodeobject = this.salePreInvoice.contractCode;\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.title = 'تایید پیش فاکتور';\r\n this.confirmMessageObj.text = 'پیش فاکتور ' + this.salePreInvoice.spiCode + ' تایید و قبلا تبدیل به قرارداد شماره ' + this.salePreInvoice.contractCode + ' شده است آیا می خواهید عملیات پرداخت را انجام دهید؟';\r\n this.acceptInvoiceSale = true;\r\n }\r\n }\r\n }\r\n\r\n saveContract(event: boolean) {\r\n this.acceptInvoiceSale = false;\r\n if (event) {\r\n this.Ncpcodeobject = this.salePreInvoice.contractCode;\r\n this.SabtareshHelper(this.salePreInvoice);\r\n this.closePreContractModal();\r\n }\r\n this.loadData();\r\n }\r\n\r\n VoidPreInvoice(sPIYear: number, sPIPartCode: number, spiCode: number) {\r\n this.accountService.UpdateVoid(sPIYear, sPIPartCode, spiCode).subscribe(s => this.savefaild(), error => this.saveFailedHelper(error));\r\n }\r\n\r\n private savefaild(SalePreInvoice?: string) {\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n this.ngOnInit();\r\n this.alertService.showMessage('Success', ` بیش فاکتور با موفقیت ابطال شد`, MessageSeverity.success);\r\n }\r\n\r\n SabtareshHelper(salePreInvoice: PreInvoice) {\r\n this.accountService.GetNewCodeRecipt(Number(this.authService.currentUser.phoneNumber), salePreInvoice.spiPartCode, 1)\r\n .subscribe(res => {\r\n this.MethodloadNewCode(salePreInvoice);\r\n });\r\n }\r\n\r\n MethodloadNewCode(row: PreInvoice) {\r\n this.showPay(row);\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n private loadHesabKind() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getHesabKind().subscribe(results => this.onCurrentHesabKindDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private loadSaleBankAccount() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getBankAccount(1).subscribe(results => this.onCurrentBankAccountDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private loadBank() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getBankAccount(2).subscribe(results => this.onCurrentBankDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private onCurrentHesabKindDataLoadSuccessful(hesabKind: HesabKindBanks[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allhesabkindbank = hesabKind;\r\n }\r\n\r\n private onCurrentBankAccountDataLoadSuccessful(salebankacc: SaleBankAccounts[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allsalebankaccounts = salebankacc;\r\n }\r\n\r\n private onCurrentBankDataLoadSuccessful(salebank: SaleBankAccounts[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allbank = salebank;\r\n }\r\n\r\n deleteInvoiceSale(row: PreInvoice) {\r\n\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n this.salePreInvoice = row;\r\n if (!row.spiIsAccepted && !row.spiIsVoid) {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.title = 'ابطال پیش فاکتور';\r\n this.confirmMessageObj.text = 'آیا از ابطال پیش فاکتور \\\"' + row.spiCode + '\\\" اطمینان دارید?';\r\n this.canceledInvoiceSale = true;\r\n } else {\r\n this.alertService.showMessage('هشدار', 'امکان ابطال پیش فاکتور وجود ندارد.', MessageSeverity.warn);\r\n }\r\n\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n finalDeleteInvoiceSale(event: boolean) {\r\n this.canceledInvoiceSale = false;\r\n if (event) {\r\n this.deleteCustomerHelper(this.salePreInvoice);\r\n }\r\n }\r\n\r\n PrintMethod(Print: PreInvoice) {\r\n if (Print.typePrice == 2) {\r\n this.accountService.getinstallmentsService(Number(this.authService.currentUser.phoneNumber), Print.spiPartCode, Print.spiCode).subscribe(\r\n (res: IInstallments) => {\r\n this.installments = res;\r\n this.installmentsDetail = res.tbl_InstallmentsDetails;\r\n this.showInstallments = true;\r\n this.customerInstallments = this.installmentsDetail.map((val) => {\r\n val.dateInstallments = new Date(val.dateInstallments).toLocaleDateString(\"fa\");\r\n return val;\r\n });\r\n this.loadingIndicator = false;\r\n });\r\n } else {\r\n this.showInstallments = false;\r\n }\r\n this.IsPrint = true;\r\n this.PreSeller = {name: Print.cName};\r\n this.PreDate = {name: Print.spipDate};\r\n this.PreAddress = {name: Print.cAddress};\r\n this.PreTel = {name: Print.cTel};\r\n this.PreNumberInvoice = {name: Print.spiCode.toString()};\r\n this.PreNathionalCode = {name: Print.cPublicCode};\r\n this.tehranVillaCheck = true;\r\n if (Print.cPostalCode == null) {\r\n this.PreCodePosti = {name: \"\"};\r\n } else {\r\n this.PreCodePosti = {name: Print.cPostalCode};\r\n }\r\n this.PreTelHamrah = {name: \"\"};\r\n this.PreCustomerCode = {name: Print.spiSubCustomerCode.toString()};\r\n if (Print.priceKindName) {\r\n this.PreNameGroup = {name: Print.priceKindName.toString()};\r\n }\r\n\r\n if (Print != null && Print.contractCode != null && Print.contractCode > 0) {\r\n this.myaccountService.GetContractForCheckAccept(Number(this.authService.currentUser.phoneNumber), Print.spiPartCode, Print.contractCode)\r\n .subscribe(results => this.onCheckAcceptContract(results),\r\n error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n this.isAcceptContract = false;\r\n this.columnsPrintFilter(this.isAcceptContract);\r\n }\r\n this.accountService.GetAllPreInvoiceSelectList(Number(this.authService.currentUser.phoneNumber), Print.spiPartCode, Print.spiCode, 1)\r\n .subscribe(results => this.onLoadassProduct(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n onLoadassProduct(results: SalePreInvoiceForContractProductSelect[]): void {\r\n this.loadingIndicator = false;\r\n results.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n\r\n var currencyFormatter = require('currency-formatter');\r\n user.spipPrice = currencyFormatter.format(user.spipPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.spipSumPrice = currencyFormatter.format(user.spipSumPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.spipDiscountPercent = currencyFormatter.format(user.spipDiscountPercent, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.spipDiscountPrice = currencyFormatter.format(user.spipDiscountPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.spipSumDiscountPrice = currencyFormatter.format(user.spipSumDiscountPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.spipPay = currencyFormatter.format(user.spipPay, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.tax = currencyFormatter.format(user.tax, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.pay = currencyFormatter.format(user.pay, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n });\r\n this.rowsSalePreInvoiceForContractProductSelect = [...results];\r\n this.rowsSalePreInvoiceForContractProductSelectCash = results;\r\n }\r\n\r\n showPay(row: PreInvoice) {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n if (row.spiIsVoid || !row.spiIsAccepted) {\r\n if (!row.spiIsAccepted && !row.spiIsVoid) {\r\n this.alertService.showMessage('Warning', ' بیش فاکتور شماره ' + row.spiCode.toString() + ' تایید نشده است', MessageSeverity.warn);\r\n } else {\r\n this.alertService.showMessage('Warning', ' بیش فاکتور شماره ' + row.spiCode.toString() + ' ابطال شده است', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.salePerInvoiceForContractCheckInfoService.salePreInvoiceCheckInfoDetail = new SalePreInvoiceForContractCheckInfoModel();\r\n this.saleInvoiceDetail = row;\r\n this.inputPricePaymentFormInvoiceSale.sumPriceInvoice = row.sumPrice + row.installmentInterest;\r\n this.inputPricePaymentFormInvoiceSale.installmentInterest = row.installmentInterest;\r\n this.inputPricePaymentFormInvoiceSale.checkoutCashDesk = this.checkoutCashDeskInDate;\r\n let funcSaleReceiptList = this.loadReceipt(row);\r\n let funcContractStatus = this.contractStatus(row);\r\n let funcSalebank = this.loadBankInfo(1);\r\n let funcHesabKind = this.loadHesabKindInfo();\r\n let funcSalebankacc = this.loadBankInfo(2);\r\n let funcOldcheckDetailList = this.getOldcheckDetailList();\r\n\r\n forkJoin([funcSaleReceiptList, funcContractStatus, funcSalebank, funcHesabKind, funcSalebankacc, funcOldcheckDetailList]).subscribe(results => {\r\n this.inputPricePaymentFormInvoiceSale.saleReceiptList = results[0];\r\n this.inputPricePaymentFormInvoiceSale.contractStatus = results[1];\r\n this.inputPricePaymentFormInvoiceSale.salebank = results[2];\r\n this.inputPricePaymentFormInvoiceSale.hesabKind = results[3];\r\n this.inputPricePaymentFormInvoiceSale.saleBankAccounts = results[4];\r\n this.oldcheckDetailList = results[5];\r\n this.onSaleSubReceiptSelect(this.inputPricePaymentFormInvoiceSale.saleReceiptList);\r\n this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice = this.inputPricePaymentFormInvoiceSale.sumPriceInvoice - this.inputPricePaymentFormInvoiceSale.paymentInvoice;\r\n if (row.typePrice === 2) {\r\n let installmentData = this.getInstallmentData(row.spiPartCode);\r\n let salePreInvoiceContractCheckInfo = this.getSalePreInvoiceContractCheckInfo(row);\r\n forkJoin([installmentData, salePreInvoiceContractCheckInfo]).subscribe(\r\n results => {\r\n let resultInstallments: IInstallments = results[0];\r\n this.inputPricePaymentFormInvoiceSale.installmentsDetail = resultInstallments.tbl_InstallmentsDetails;\r\n this.inputPricePaymentFormInvoiceSale.checkDetailList = results[1];\r\n if (this.inputPricePaymentFormInvoiceSale.checkDetailList.length > 0) {\r\n this.salePerInvoiceForContractCheckInfoService.saveChechImageStatus = false;\r\n }\r\n this.showInvoiceSale = true;\r\n $('.price-payment-modal').modal('show');\r\n }, error => {\r\n this.alertService.showMessage('خطا', '', MessageSeverity.warn);\r\n });\r\n } else {\r\n this.inputPricePaymentFormInvoiceSale.installmentsDetail = [];\r\n this.inputPricePaymentFormInvoiceSale.checkDetailList = [];\r\n this.showInvoiceSale = true;\r\n $('.price-payment-modal').modal('show');\r\n }\r\n });\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n getOldcheckDetailList() {\r\n return this.salePerInvoiceForContractCheckInfoService.getAllContractCheckInfoListByYear(+this.authService.currentUser.phoneNumber);\r\n }\r\n\r\n onSaleSubReceiptSelect(salebank: SaleSubReceiptSelect[]) {\r\n var AllBedPay = 0;\r\n salebank.forEach((user) => {\r\n AllBedPay += user.rsPrice;\r\n });\r\n this.inputPricePaymentFormInvoiceSale.paymentInvoice = AllBedPay;\r\n this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice = this.inputPricePaymentFormInvoiceSale.sumPriceInvoice - this.inputPricePaymentFormInvoiceSale.paymentInvoice;\r\n }\r\n\r\n MethodGetRnum(loadNewCode: number) {\r\n this.priceEditor.NumberSanad = {name: loadNewCode.toString()};\r\n this.priceEditor.ReceiptNum = loadNewCode;\r\n this.priceEditor.loadReceipt();\r\n this.editorModalprice.show();\r\n }\r\n\r\n deleteCustomerHelper(row: PreInvoice) {\r\n this.spiCodeLocal = row.spiCode;\r\n this.spiYearLocal = row.spiYear;\r\n this.spiPartCodeLocal = row.spiPartCode;\r\n this.VoidPreInvoice(this.spiYearLocal, this.spiPartCodeLocal, this.spiCodeLocal);\r\n }\r\n\r\n newCustomer() {\r\n this.editingCName = null!;\r\n this.sourcePreInvoice = null!;\r\n this.InvEditor.CustomerClubObj = null!;\r\n this.InvEditor.CustomerClubObj.customerAddress = null!;\r\n this.InvEditor.CustomerClubObj.customerID = null!;\r\n this.InvEditor.CustomerClubObj.customerMobile = null!;\r\n this.InvEditor.CustomerClubObj.customerName = null!;\r\n this.InvEditor.isEditing = false;\r\n this.editorModal.show();\r\n }\r\n\r\n back() {\r\n this.IsPrint = false;\r\n this.loadData();\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.InvEditor.resetForm();\r\n this.reportCustomerEditor.updateNationalCodeForm.reset();\r\n }\r\n\r\n printTitle: boolean = false;\r\n isAcceptContract = false;\r\n\r\n onCheckAcceptContract(result: SaleNewContract) {\r\n if (result != null) {\r\n this.isAcceptContract = result.ncisAccepted;\r\n } else {\r\n this.isAcceptContract = false;\r\n }\r\n this.columnsPrintFilter(this.isAcceptContract);\r\n }\r\n\r\n columnsPrintFilter(isAcceptContract: boolean) {\r\n this.printTitle = isAcceptContract;\r\n this.columnsPrint = [];\r\n this.columnsPrint = isAcceptContract ? this.columnsPrintCash : this.columnsPrintCash.filter(x => x.prop !== 'spipDiscountPrice' && x.prop !== 'spipDiscountPercent' && x.prop !== 'spipPay');\r\n }\r\n\r\n ShowReportCustomer(row: PreInvoice) {\r\n if (row == null || row == undefined) {\r\n\r\n } else {\r\n this.reportCustomerEditor.resetData();\r\n this.reportCustomerEditor.PreInvoiceObj = row;\r\n var custmer = row.customerCode.split('-');\r\n this.reportCustomerEditor.depocode = row.depoCode != null && row.depoCode != undefined ? row.depoCode.toString() : '';\r\n this.reportCustomerEditor.deponame = row.depoName != null && row.depoName != undefined ? row.depoName.toString() : '';\r\n this.reportCustomerEditor.partcode = row.spiPartCode;\r\n this.reportCustomerEditor.cMain = Number(custmer[0]);\r\n this.reportCustomerEditor.cSub = row.spiSubCustomerCode;\r\n this.reportCustomerEditor.ncCode = row.contractCode != null && row.contractCode != undefined ? row.contractCode.toString() : '';\r\n this.reportCustomerEditor.spiCode = row.spiCode != null && row.spiCode != undefined ? row.spiCode.toString() : '';\r\n this.reportCustomerEditor.sPIYear = row.spiYear;\r\n this.reportCustomerEditor.sPIPartCode = row.spiPartCode;\r\n this.reportCustomerEditor.customerId = row.idSaleCustomerGroup;\r\n //this.reportCustomerEditor.newprice(this.allbank, this.allsalebankaccounts, this.allhesabkindbank);\r\n this.reportCustomerEditor.AllBed = 0;\r\n this.reportCustomerEditor.Allremain = Number(this.reportCustomerEditor.AllBed - this.reportCustomerEditor.AllBes);\r\n\r\n this.reportCustomerEditor.loadReportCustomer();\r\n this.editorModalReportCustomer.show();\r\n\r\n }\r\n }\r\n\r\n get canAssignRoles() {\r\n return this.accountService.userHasPermission(Permission.assignRolesPermission);\r\n }\r\n\r\n get CanManagemanageInvoiceSale() {\r\n return this.accountService.userHasPermission(Permission.manageInvoiceSalePermisson);\r\n }\r\n\r\n get canViewCustomer() {\r\n return this.accountService.userHasPermission(Permission.ViewCustomerPermission);\r\n }\r\n\r\n emptySumm() {\r\n return null;\r\n }\r\n\r\n changeColor(value) {\r\n return this.colorSettingsService.changeColor(value);\r\n }\r\n\r\n getReprintContractStyle(row: PreInvoice) {\r\n let className = this.colorSettingsService.paymentType(row.typePrice) + ' ' + 'reprint-click';\r\n return className;\r\n }\r\n\r\n getTooltipReprintContract(row: PreInvoice) {\r\n return row.typePrice == 2 ? 'چاپ مجدد پیش قراراداد' : '';\r\n ;\r\n }\r\n\r\n\r\n getInstallment(row: PreInvoice) {\r\n if (row.typePrice == 2) {\r\n this.paymentInstallmentModal.show();\r\n this.accountService.getinstallmentsService(Number(this.authService.currentUser.phoneNumber), row.spiPartCode, row.spiCode).subscribe(\r\n (res: IInstallments) => {\r\n this.installments = res;\r\n this.installmentsDetail = res.tbl_InstallmentsDetails;\r\n this.recordCustomerCheck.installmentData = this.installmentsDetail.map((val) => {\r\n val.dateInstallments = new Date(val.dateInstallments).toLocaleDateString(\"fa\");\r\n return val;\r\n });\r\n });\r\n } else {\r\n this.alertService.showMessage('هشدار', 'پیش فاکتور موجود شامل اقساط نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n getInstallmentData(partcode: number) {\r\n return this.accountService.getinstallmentsService(Number(this.authService.currentUser.phoneNumber), partcode, this.saleInvoiceDetail.spiCode);\r\n }\r\n\r\n getSalePreInvoiceContractCheckInfo(row) {\r\n return this.salePerInvoiceForContractCheckInfoService.getSalePreInvoiceForContractCheckInfoList(row.spiCode, row.contractCode, +this.authService.currentUser.phoneNumber);\r\n }\r\n\r\n loadReceipt(row: PreInvoice) {\r\n return this.accountService.GetSaleSubReceiptSelect(this.saleInvoiceDetail.contractCode, Number(this.authService.currentUser.phoneNumber), row.spiPartCode, 1);\r\n }\r\n\r\n loadBankInfo(value: number) {\r\n return this.accountService.getBankAccount(value);\r\n }\r\n\r\n contractStatus(row: PreInvoice) {\r\n return this.accountService.GetStatusAccept(+this.accountService.currentUser.phoneNumber, row.spiPartCode, this.saleInvoiceDetail.contractCode);\r\n }\r\n\r\n loadHesabKindInfo() {\r\n return this.accountService.getHesabKind();\r\n }\r\n\r\n checkStatusUploadCustomerDocuments(event: PreInvoice) {\r\n this.acceptSaleCustomer(event);\r\n }\r\n\r\n acceptSaleCustomer(event: PreInvoice) {\r\n this.accountService.UpdateAccept(event.spiYear, event.spiPartCode, event.spiCode).subscribe(\r\n res => {\r\n this.accountService.CreateContractForPerInvoiceProducts(Number(this.authService.currentUser.phoneNumber), event.spiPartCode, event.spiCode, Number(this.authService.currentUser.phoneNumber), false).subscribe(\r\n res => {\r\n if (res != null) {\r\n this.loadData();\r\n this.closePreContractModal();\r\n this.showPay(res);\r\n }\r\n }\r\n );\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n closePreContractModalEmit(preInvoice: PreInvoice) {\r\n $('.contract-text').modal('hide');\r\n this.customerImages = [];\r\n this.getCustomerImages(preInvoice.spiCustomerCode, preInvoice.spiSubCustomerCode);\r\n this.customerInfo = new SaleCustomer();\r\n this.customerInfo.cName = preInvoice.cName;\r\n this.customerInfo.cMainCode = preInvoice.spiCustomerCode;\r\n this.customerInfo.cPublicCode = preInvoice.cPublicCode;\r\n this.customerInfo.cSubCode = preInvoice.spiSubCustomerCode;\r\n this.customerInfo.saleCustomerImageInfos = null!;\r\n $('.customerImageInfo').modal('show');\r\n }\r\n\r\n getCustomerImages(customerCode: number, subCustomerCode: number) {\r\n this.saleCustomerImageInfosService.getCustomerImageInfos(customerCode, subCustomerCode).subscribe(\r\n (res: SaleCustomerImageModel[]) => {\r\n this.customerImages = res;\r\n });\r\n }\r\n\r\n customerImageAfterUploadImage() {\r\n this.getCustomerImages(this.customerInfo.cMainCode, this.customerInfo.cSubCode);\r\n }\r\n\r\n closePreContractModal() {\r\n $('.contract-text').modal('hide');\r\n }\r\n\r\n checkoutCashDeskStatus(cMainCode: number) {\r\n let dateOfNow = this.serverDate.toLocaleDateString('en').split('/').join('-');\r\n this.cashDeskService.allCheckoutCashDesks(cMainCode, dateOfNow, dateOfNow).subscribe(\r\n (res: CheckoutCashDeskModel[]) => {\r\n this.checkoutCashDeskInDate = res;\r\n }\r\n );\r\n }\r\n\r\n closeInvoiceSaleModal(row: PreInvoice) {\r\n this.editorModal.hide();\r\n this.refreshPreInvoiceData();\r\n this.showPay(row);\r\n }\r\n\r\n\r\n closeInvoiceSale(row: PreInvoice) {\r\n this.editorModal.hide();\r\n this.refreshPreInvoiceData();\r\n }\r\n\r\n\r\n closePricePaymentModal() {\r\n this.inputPricePaymentFormInvoiceSale.installmentsDetail = [];\r\n this.inputPricePaymentFormInvoiceSale.checkDetailList = [];\r\n this.salePerInvoiceForContractCheckInfoService.saveChechImageStatus = true;\r\n this.showInvoiceSale = false;\r\n $('.price-payment-modal').modal('hide');\r\n }\r\n\r\n showCheckoutConfirm(event: boolean) {\r\n this.checkoutConfirm = event;\r\n }\r\n\r\n closeCustomerImageModal() {\r\n $('.customerImageInfo').modal('hide');\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n جستجو\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
پیش فاکتور {{row.spiCode}}
... \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
نوع فروش \r\n {{row.nameTypePrice}}\r\n
نام مشتری {{row.cName}}
قرارداد {{row.contractCode}}
تاریخ {{row.spipDate}}
تعداد کالا {{row.countProduct}}
وضعیت \r\n {{row.status}}\r\n
مبلغ پیش فاکتور {{row.sumPrice | number}}
کارمزد اقساط {{row.installmentInterest | number}}
کد مشتری {{row.customerCode}}
نام انبار {{row.depoName}}
گروه قیمتی {{row.nameGroup}}
داده با مشخصات وارد شده یافت نگردید.\"{{input.value}}\"
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
پیش فاکتور
\r\n
صورت حساب فروش
\r\n
\r\n
\r\n
\r\n {{\r\n'InvoiceSale.editor.PreStoreName' |\r\n translate:editingCCustomerName\r\n }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
آدرس: تهران-خیابان ولیعصر-روبه روی سازمان صدا و سیما - کوچه شادی -پلاک 10
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.PreNumberInvoice' | translate:PreNumberInvoice}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
تلفن:021-22653679
\r\n
\r\n
\r\n
کداقتصادی:411476319377
\r\n
\r\n\r\n
\r\n
کد پستی :1966763311
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreDate' | translate:PreDate}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreSeller' | translate:PreSeller}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreCustomerCode' | translate:PreCustomerCode}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreNameGroup' | translate:PreNameGroup}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreAddress' | translate:PreAddress}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreTel' | translate:PreTel}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreNathionalCode' | translate:PreNathionalCode}}
\r\n
\r\n\r\n
\r\n
{{'InvoiceSale.editor.PreCodePosti' | translate:PreCodePosti}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n بهای فروش کالاها به شرح\r\n ذیل می باشد:\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

پیش پرداخت: {{installments.prePayment | number}} ریال

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

مانده پرداخت: {{installments.remainingPayment | number}} ریال

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

تعداد اقساط: {{installments.numberInstallments}}

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

کارمزد اقساط: {{installments.installmentInterest | number}} ریال

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

\r\n \r\n پرداخت نهایی:\r\n {{installments.finalAmount | 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
{{'InvoiceSale.editor.sbabankName' | translate:sbabankName}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.sbaacountNum' | translate:sbaacountNum}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.sbaNumberSheba' | translate:sbaNumberSheba}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.sbaNumberCard1' | translate:sbaNumberCard1}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.PreAddressstore' | translate:PreAddressstore}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.PreManageName' | translate:PreManageName}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.PreManageTel' | translate:PreManageTel}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n ثبت پیش فاکتور\r\n

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

فرم پرداخت

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

گزارش تراز مشتری

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

اطلاعات مشتری

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\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, Input, TemplateRef } from '@angular/core';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport * as moment from 'jalali-moment';\r\nimport { error } from 'jquery';\r\nimport { Router } from '@angular/router';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { Injectable } from '@angular/core'; \r\nimport { MyAccountService } from '../../services/MyAccount.service'; \r\nimport { DepoCode } from '../../models/DepoCode.model';\r\n\r\n\r\n@Component({\r\n selector: 'goods-info-details',\r\n templateUrl: './goods-info-details.component.html'\r\n})\r\nexport class GoodsInfoDetailsComponent {\r\n\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n\r\n public isEditMode = true;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public formResetToggle = true;\r\n public comment: string = \"-\"; \r\n public cName: string = \"-\"; \r\n public csubName: string = \"-\"; \r\n public depocode: string = \"-\";\r\n public productcode: string = \"-\";\r\n public productname: string = \"-\";\r\n public barcode: string = \"-\";\r\n\r\n public SalePrice: string = \"0\"; \r\n public productCount: string = \"0\"; \r\n public fromDateTime: string = \"0\";\r\n public toDateTime: string = \"0\"; \r\n public maximumUnitSalePriceAfterDiscount: string = \"0\";\r\n public discountPriceFromMaximumUnitSalePriceAfterDiscount: string = \"0\";\r\n public approvedDiscountValuePercent: string = \"0\";\r\n public approvedDiscountValuePrice: string = \"0\";\r\n public storeBaseCommissionAfterDiscount: string = \"0\";\r\n public totaltax: string = \"0\";\r\n public totalPrice: string = \"0\";\r\n public discountValuePercent: string = \"0\";\r\n public discountValuePrice: string = \"0\";\r\n\r\n\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public rowProduct: DepoCode = new DepoCode(); \r\n \r\n public DiscountKind: string = \"\";\r\n public DiscountApplication: string = \"\";\r\n public DiscountAmount: string = \"\";\r\n\r\n loadingIndicator: boolean;\r\n\r\n serverDate: Date;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n \r\n constructor(private alertService: AlertService, private accountService: AccountService, private translationService: AppTranslationService, private myCompanyService: MyCompanyService\r\n , private myaccountService: MyAccountService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n this.LoadForm();\r\n }\r\n\r\n LoadForm() {\r\n if (!this.isGeneralEditor) {\r\n\r\n }\r\n \r\n }\r\n \r\n reset() { \r\n this.isEditMode = false;\r\n this.sPIPartCode = 0;\r\n }\r\n resetData() {\r\n this.reset();\r\n this.LoadForm();\r\n }\r\n \r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
کد کالا: {{productcode}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
تعداد کالا: {{productCount}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
نام کالا: {{productname}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
بارکد کالا: {{barcode}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{csubName}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\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 class Address {\r\n constructor( aaddress?: string, alat?: string,\r\n along?:string,apostalCode?:string,aCustomerID?:number){\r\n\r\n this.aaddress= aaddress;\r\n this.alat=alat;\r\n this.along=along;\r\n this.apostalCode=apostalCode;\r\n this.aCustomerID =aCustomerID;\r\n }\r\n public aId: number;\r\n public aaddress: string;\r\n public alat: string;\r\n public along:string;\r\n public apostalCode:string;\r\n public aCustomerID:number;\r\n}\r\n","import { Component, OnInit, Input, ViewChild, OnChanges } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { fadeInOut } from '../../../services/animations';\r\nimport { ReportCashierByDateModel } from '../../../models/CashDesk/report-cashier-by-date.model';\r\nimport * as moment from 'jalali-moment';\r\nimport { ReportSaleCashDeskModel } from '../../../models/CashDesk/report-sale-cash-desk.model';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { VMReportCashierResultDetail } from '../../../models/VMReportCashierResult.model';\r\nimport { animate, state, style, transition, trigger } from '@angular/animations';\r\n\r\n@Component({\r\n selector: 'report-sale-cash-desk',\r\n templateUrl: './report-sale-cash-desk.component.html',\r\n styleUrls: ['./report-sale-cash-desk.component.scss'],\r\n animations: [\r\n fadeInOut,\r\n trigger('detailExpand', [\r\n state('collapsed', style({ height: '0px', minHeight: '0' })),\r\n state('expanded', style({ height: '*' })),\r\n transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\r\n ]),\r\n ],\r\n}) \r\nexport class ReportSaleCashDeskComponent implements OnInit, OnChanges {\r\n public displayedColumns: string[] = ['detail', 'index', 'ncCode', 'ncDate', 'cName', 'sumProductInvoiced', 'sumPriceContracted', 'sumPayment'];\r\n public displayedSubColumns: string[] = ['index', 'productName', 'productCode', 'paymentType', 'price', 'totalAmount','productCount'];\r\n public cashDeskDetail: ReportCashierByDateModel = new ReportCashierByDateModel();\r\n public expandedElement: VMReportCashierResultDetail[] = [];\r\n public cashDeskDate = moment();\r\n public cashDate: string = '';\r\n public columns: any[] = [];\r\n\r\n @Input() reportSaleCashDesk: ReportSaleCashDeskModel = new ReportSaleCashDeskModel();\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n\r\n @ViewChild(MatSort) sort: MatSort;\r\n\r\n constructor(private route: ActivatedRoute) { }\r\n\r\n ngOnChanges() {\r\n this.reportSaleCashDesk.reportContractsSaleReciptCash.paginator = this.paginator;\r\n this.reportSaleCashDesk.reportContractsSaleReciptCash.sort = this.sort;\r\n }\r\n \r\n ngOnInit() {\r\n this.cashDate = this.route.snapshot.paramMap.get('cashDate');\r\n this.cashDate = moment(this.cashDate).locale('fa').format('YYYY/MM/DD').replace('-', '/');\r\n this.cashDeskDate = moment(this.cashDate, 'jYYYY,jMM,jDD');\r\n }\r\n\r\n trackByFn(index: number, item: any) {\r\n return index;\r\n }\r\n\r\n expandRow(index) {\r\n console.log(index);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

\r\n \r\n گزارش قرارداد های صندوق\r\n

\r\n
\r\n
\r\n \r\n تاریخ\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
ردیف{{ i + 1 }}
جزئیات\r\n {{expandedElement === row ? 'expand_less' : 'expand_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\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
ردیف {{i + 1}}
نام کالا {{row.productName}}
کد کالا {{row.productCode}}
نوع پرداختی {{row.paymentType}}
مبلغ {{row.price | number}}
مبلغ کل {{row.totalAmount | number}}
تعداد {{row.productCount}}
\r\n
\r\n\r\n
\r\n
شماره قرارداد {{row.ncCode}}
تاریخ قرارداد {{row.ncDate}}
مشتری {{row.cName}}
تعداد اقلام {{row.sumProductInvoiced}}
مبلغ قرارداد {{row.sumPriceContracted | number}}
مبلغ پرداختی {{row.sumPayment | 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","import { Component, OnInit, AfterViewInit, TemplateRef, ViewChild, Input } from '@angular/core';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AppTranslationService } from '../../services/app-translation.service';\nimport { AccountService } from '../../services/account.service';\nimport { Utilities } from '../../services/utilities';\nimport { Role } from '../../models/role.model';\nimport { Permission } from '../../models/permission.model';\nimport { RoleEditorComponent } from './role-editor.component';\n\n\n@Component({\n selector: 'roles-management',\n templateUrl: './roles-management.component.html',\n styleUrls: ['./roles-management.component.scss']\n})\nexport class RolesManagementComponent implements OnInit, AfterViewInit {\n columns: any[] = [];\n rows: Role[] = [];\n rowsCache: Role[] = [];\n allPermissions: Permission[] = [];\n editedRole: Role;\n sourceRole: Role;\n editingRoleName: { name: string };\n loadingIndicator: boolean;\n\n\n\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n\n @ViewChild('editorModal', { static: true })\n editorModal: ModalDirective;\n\n @ViewChild('roleEditor', { static: true })\n roleEditor: RoleEditorComponent;\n\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private accountService: AccountService) {\n }\n\n\n ngOnInit() {\n\n const gT = (key: string) => this.translationService.getTranslation(key);\n\n this.columns = [\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\n { prop: 'name', name: gT('roles.management.Name'), width: 180 },\n { prop: 'description', name: gT('roles.management.Description'), width: 320 },\n { prop: 'usersCount', name: gT('roles.management.Users'), width: 50 },\n { name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\n ];\n\n this.loadData();\n }\n\n\n\n\n\n ngAfterViewInit() {\n\n this.roleEditor.changesSavedCallback = () => {\n this.addNewRoleToList();\n this.editorModal.hide();\n };\n\n this.roleEditor.changesCancelledCallback = () => {\n this.editedRole = null;\n this.sourceRole = null;\n this.editorModal.hide();\n };\n }\n\n\n addNewRoleToList() {\n if (this.sourceRole) {\n Object.assign(this.sourceRole, this.editedRole);\n\n let sourceIndex = this.rowsCache.indexOf(this.sourceRole, 0);\n if (sourceIndex > -1) {\n Utilities.moveArrayItem(this.rowsCache, sourceIndex, 0);\n }\n\n sourceIndex = this.rows.indexOf(this.sourceRole, 0);\n if (sourceIndex > -1) {\n Utilities.moveArrayItem(this.rows, sourceIndex, 0);\n }\n\n this.editedRole = null;\n this.sourceRole = null;\n } else {\n const role = new Role();\n Object.assign(role, this.editedRole);\n this.editedRole = null;\n\n let maxIndex = 0;\n for (const r of this.rowsCache) {\n if ((r as any).index > maxIndex) {\n maxIndex = (r as any).index;\n }\n }\n\n (role as any).index = maxIndex + 1;\n\n this.rowsCache.splice(0, 0, role);\n this.rows.splice(0, 0, role);\n this.rows = [...this.rows];\n }\n }\n\n\n\n\n loadData() {\n this.alertService.startLoadingMessage();\n this.loadingIndicator = true;\n\n this.accountService.getRolesAndPermissions()\n .subscribe(results => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n const roles = results[0];\n const permissions = results[1];\n\n roles.forEach((role, index, roles) => {\n (role as any).index = index + 1;\n });\n\n\n this.rowsCache = [...roles];\n this.rows = roles;\n\n this.allPermissions = permissions;\n },\n error => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve roles from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n });\n }\n\n\n onSearchChanged(value: string) {\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.name, r.description));\n }\n\n\n onEditorModalHidden() {\n this.editingRoleName = null;\n this.roleEditor.resetForm(true);\n }\n\n\n newRole() {\n this.editingRoleName = null;\n this.sourceRole = null;\n this.editedRole = this.roleEditor.newRole(this.allPermissions);\n this.editorModal.show();\n }\n\n\n editRole(row: Role) {\n this.editingRoleName = { name: row.name };\n this.sourceRole = row;\n this.editedRole = this.roleEditor.editRole(row, this.allPermissions);\n this.editorModal.show();\n }\n\n deleteRole(row: Role) {\n this.alertService.showDialog('Are you sure you want to delete the \\\"' + row.name + '\\\" role?', DialogType.confirm, () => this.deleteRoleHelper(row));\n }\n\n\n deleteRoleHelper(row: Role) {\n\n this.alertService.startLoadingMessage('Deleting...');\n this.loadingIndicator = true;\n\n this.accountService.deleteRole(row)\n .subscribe(results => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.rowsCache = this.rowsCache.filter(item => item !== row);\n this.rows = this.rows.filter(item => item !== row);\n },\n error => {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the role.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n });\n }\n\n\n get canManageRoles() {\n return this.accountService.userHasPermission(Permission.manageRolesPermission);\n }\n\n}\n","
\n
\n
\n
\n >\n
\n
\n \n
\n\n \n \n\n \n {{value}}\n \n\n\n \n {{'roles.management.Edit' | translate}}\n {{'roles.management.Details' | translate}}\n {{canManageRoles ? '|' : ''}}\n {{'roles.management.Delete' | translate}}\n \n\n\n
\n
\n
\n
\n

{{'roles.management.RoleDetails' | translate:editingRoleName}}

\n

{{editingRoleName ? ('roles.management.EditRole' | translate:editingRoleName) : ('roles.management.NewRole' | translate)}}

\n \n
\n
\n \n
\n
\n
\n
\n
\n","\n\nimport { Injectable } from '@angular/core';\nimport { Observable, interval } from 'rxjs';\nimport { map, flatMap, startWith } from 'rxjs/operators';\n\nimport { AuthService } from './auth.service';\nimport { NotificationEndpoint } from './notification-endpoint.service';\nimport { Notification } from '../models/notification.model';\n\n@Injectable()\nexport class NotificationService {\n\n private lastNotificationDate: Date;\n private _recentNotifications: Notification[];\n\n get currentUser() {\n return this.authService.currentUser;\n }\n\n get recentNotifications() {\n return this._recentNotifications;\n }\n\n set recentNotifications(notifications: Notification[]) {\n this._recentNotifications = notifications;\n }\n\n\n\n constructor(private notificationEndpoint: NotificationEndpoint, private authService: AuthService) {\n\n }\n\n\n getNotification(notificationId?: number) {\n\n return this.notificationEndpoint.getNotificationEndpoint(notificationId).pipe(\n map(response => Notification.Create(response)));\n }\n\n\n getNotifications(page: number, pageSize: number) {\n\n return this.notificationEndpoint.getNotificationsEndpoint(page, pageSize).pipe(\n map(response => {\n return this.getNotificationsFromResponse(response);\n }));\n }\n\n\n getUnreadNotifications(userId?: string) {\n\n return this.notificationEndpoint.getUnreadNotificationsEndpoint(userId).pipe(\n map(response => this.getNotificationsFromResponse(response)));\n }\n\n\n getNewNotifications() {\n return this.notificationEndpoint.getNewNotificationsEndpoint(this.lastNotificationDate).pipe(\n map(response => this.processNewNotificationsFromResponse(response)));\n }\n\n\n getNewNotificationsPeriodically() {\n return interval(10000).pipe(\n startWith(0),\n flatMap(() => {\n return this.notificationEndpoint.getNewNotificationsEndpoint(this.lastNotificationDate).pipe(\n map(response => this.processNewNotificationsFromResponse(response)));\n }));\n }\n\n\n\n\n pinUnpinNotification(notificationOrNotificationId: number | Notification, isPinned?: boolean): Observable {\n\n if (typeof notificationOrNotificationId === 'number' || notificationOrNotificationId instanceof Number) {\n return this.notificationEndpoint.getPinUnpinNotificationEndpoint(notificationOrNotificationId as number, isPinned);\n } else {\n return this.pinUnpinNotification(notificationOrNotificationId.id);\n }\n }\n\n\n readUnreadNotification(notificationIds: number[], isRead: boolean): Observable {\n\n return this.notificationEndpoint.getReadUnreadNotificationEndpoint(notificationIds, isRead);\n }\n\n\n\n\n deleteNotification(notificationOrNotificationId: number | Notification): Observable {\n\n if (typeof notificationOrNotificationId === 'number' || notificationOrNotificationId instanceof Number) {\n return this.notificationEndpoint.getDeleteNotificationEndpoint(notificationOrNotificationId as number).pipe(\n map(response => {\n this.recentNotifications = this.recentNotifications.filter(n => n.id != notificationOrNotificationId);\n return Notification.Create(response);\n }));\n } else {\n return this.deleteNotification(notificationOrNotificationId.id);\n }\n }\n\n\n\n\n private processNewNotificationsFromResponse(response) {\n const notifications = this.getNotificationsFromResponse(response);\n\n for (const n of notifications) {\n if (n.date > this.lastNotificationDate) {\n this.lastNotificationDate = n.date;\n }\n }\n\n return notifications;\n }\n\n\n private getNotificationsFromResponse(response) {\n const notifications: Notification[] = [];\n\n for (const i in response) {\n notifications[i] = Notification.Create(response[i]);\n }\n\n notifications.sort((a, b) => b.date.valueOf() - a.date.valueOf());\n notifications.sort((a, b) => (a.isPinned === b.isPinned) ? 0 : a.isPinned ? -1 : 1);\n\n this.recentNotifications = notifications;\n\n return notifications;\n }\n}\n","import {Component, OnInit, ViewChild, Input, TemplateRef, EventEmitter, Output, OnChanges} from '@angular/core';\nimport {AccountService} from '../../services/account.service';\nimport {SaleReceipt} from '../../models/SaleReceipts/SaleReceipt.model';\nimport * as moment from 'jalali-moment';\nimport {PreInvoice} from '../../models/PreInvoice.model';\nimport {SalePreInvoiceForContractCheckInfoModel} from '../../models/SalePreInvoiceForContractCheckInfo.model';\nimport {SharedService} from '../../services/Shared.service';\nimport {InputPricePaymentFormInvoiceSaleModel} from '../../models/InputPricePaymentFormInvoiceSale.model';\n\ndeclare var $: any;\n\n@Component({\n selector: 'app-sale-receipt-customer',\n templateUrl: './sale-receipt-customer.component.html',\n styleUrls: ['./sale-receipt-customer.component.scss']\n})\nexport class SaleReceiptCustomerComponent implements OnInit {\n\n public dateObject: string;\n public dateObjectRSDate = moment();\n serverDate: Date;\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\n\n @ViewChild('indexTemplate', {static: true}) indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', {static: true}) actionsTemplate: TemplateRef;\n @Input() oldcheckDetailList: SalePreInvoiceForContractCheckInfoModel[];\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;\n @Input() isViewOnly: boolean;\n @Input() isGeneralEditor = false;\n @Output() paymentPriceSuccess = new EventEmitter();\n @ViewChild('f', {static: false})\n public form;\n\n constructor(private accountService: AccountService,\n private sharedService: SharedService) {\n this.serverDate = this.accountService.getServerDateTime();\n }\n\n ngOnChanges() {\n $('.nav-tabs li a[href=\"#posPaymentTab\"]').tab('show');\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\n }\n\n ngOnInit() {\n this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\n this.dateObjectRSDate = this.sharedService.getDateToMoment(this.dateObject);\n }\n\n statusSaveSaleReceipt(saleReceiptStatus: boolean) {\n if (saleReceiptStatus) {\n this.paymentPriceSuccess.emit(this.saleInvoiceDetail);\n }\n }\n}\n","
\n
\n
\n
\n \n \n \n
\n
\n \n
\n \n
\n \n
\n \n
\n \n
\n \n
\n \n
\n
\n
\n
\n
\n
\n\n","\n\nimport { Injectable } from '@angular/core';\nimport { HttpResponseBase, HttpResponse, HttpErrorResponse } from '@angular/common/http';\n\n@Injectable()\nexport class Utilities {\n public static readonly captionAndMessageSeparator = ':';\n public static readonly noNetworkMessageCaption = 'No Network';\n public static readonly noNetworkMessageDetail = 'The server cannot be reached';\n public static readonly accessDeniedMessageCaption = 'Access Denied!';\n public static readonly accessDeniedMessageDetail = '';\n public static readonly notFoundMessageCaption = 'Not Found';\n public static readonly notFoundMessageDetail = 'The target resource cannot be found';\n\n public static cookies =\n {\n getItem: (sKey) => {\n return decodeURIComponent(document.cookie.replace(new RegExp('(?:(?:^|.*;)\\\\s*' + encodeURIComponent(sKey).replace(/[\\-\\.\\+\\*]/g, '\\\\$&') + '\\\\s*\\\\=\\\\s*([^;]*).*$)|^.*$'), '$1')) || null;\n },\n setItem: (sKey, sValue, vEnd, sPath, sDomain, bSecure) => {\n if (!sKey || /^(?:expires|max\\-age|path|domain|secure)$/i.test(sKey)) {\n return false;\n }\n\n let sExpires = '';\n\n if (vEnd) {\n switch (vEnd.constructor) {\n case Number:\n sExpires = vEnd === Infinity ? '; expires=Fri, 31 Dec 9999 23:59:59 GMT' : '; max-age=' + vEnd;\n break;\n case String:\n sExpires = '; expires=' + vEnd;\n break;\n case Date:\n sExpires = '; expires=' + vEnd.toUTCString();\n break;\n }\n }\n\n document.cookie = encodeURIComponent(sKey) + '=' + encodeURIComponent(sValue) + sExpires + (sDomain ? '; domain=' + sDomain : '') + (sPath ? '; path=' + sPath : '') + (bSecure ? '; secure' : '');\n return true;\n },\n removeItem: (sKey, sPath, sDomain) => {\n if (!sKey) {\n return false;\n }\n document.cookie = encodeURIComponent(sKey) + '=; expires=Thu, 01 Jan 1970 00:00:00 GMT' + (sDomain ? '; domain=' + sDomain : '') + (sPath ? '; path=' + sPath : '');\n return true;\n },\n hasItem: (sKey) => {\n return (new RegExp('(?:^|;\\\\s*)' + encodeURIComponent(sKey).replace(/[\\-\\.\\+\\*]/g, '\\\\$&') + '\\\\s*\\\\=')).test(document.cookie);\n },\n keys: () => {\n const aKeys = document.cookie.replace(/((?:^|\\s*;)[^\\=]+)(?=;|$)|^\\s*|\\s*(?:\\=[^;]*)?(?:\\1|$)/g, '').split(/\\s*(?:\\=[^;]*)?;\\s*/);\n for (let nIdx = 0; nIdx < aKeys.length; nIdx++) { aKeys[nIdx] = decodeURIComponent(aKeys[nIdx]); }\n return aKeys;\n }\n };\n\n public static getHttpResponseMessages(data: HttpResponseBase | any): string[] {\n const responses: string[] = [];\n\n if (data instanceof HttpResponseBase) {\n if (this.checkNoNetwork(data)) {\n responses.push(`${this.noNetworkMessageCaption}${this.captionAndMessageSeparator} ${this.noNetworkMessageDetail}`);\n } else {\n const responseObject = this.getResponseBody(data);\n\n if (responseObject && (typeof responseObject === 'object' || responseObject instanceof Object)) {\n\n for (const key in responseObject) {\n if (key) {\n responses.push(`${key}${this.captionAndMessageSeparator} ${responseObject[key]}`);\n } else if (responseObject[key]) {\n responses.push(responseObject[key].toString());\n }\n }\n }\n }\n\n if (!responses.length) {\n if ((data as any).body) {\n responses.push(`body: ${(data as any).body}`);\n }\n\n if ((data as any).error) {\n responses.push(`error: ${(data as any).error}`);\n }\n }\n }\n\n if (!responses.length) {\n if (this.getResponseBody(data)) {\n responses.push(this.getResponseBody(data).toString());\n } else {\n responses.push(data.toString());\n }\n }\n\n if (this.checkAccessDenied(data)) {\n responses.splice(0, 0, `${this.accessDeniedMessageCaption}${this.captionAndMessageSeparator} ${this.accessDeniedMessageDetail}`);\n }\n\n if (this.checkNotFound(data)) {\n let message = `${this.notFoundMessageCaption}${this.captionAndMessageSeparator} ${this.notFoundMessageDetail}`;\n if (data.url) {\n message += `. ${data.url}`;\n }\n\n responses.splice(0, 0, message);\n }\n\n return responses;\n }\n\n public static getHttpResponseMessage(data: HttpResponseBase | any): string {\n const httpMessage =\n Utilities.findHttpResponseMessage(Utilities.noNetworkMessageCaption, data) ||\n Utilities.findHttpResponseMessage(Utilities.notFoundMessageCaption, data) ||\n Utilities.findHttpResponseMessage('error_description', data) ||\n Utilities.findHttpResponseMessage('error', data) ||\n Utilities.getHttpResponseMessages(data).join();\n\n return httpMessage;\n }\n\n public static findHttpResponseMessage(messageToFind: string, data: HttpResponse | any, seachInCaptionOnly = true, includeCaptionInResult = false): string {\n const searchString = messageToFind.toLowerCase();\n const httpMessages = this.getHttpResponseMessages(data);\n\n for (const message of httpMessages) {\n const fullMessage = Utilities.splitInTwo(message, this.captionAndMessageSeparator);\n\n if (fullMessage.firstPart && fullMessage.firstPart.toLowerCase().indexOf(searchString) != -1) {\n return includeCaptionInResult ? message : fullMessage.secondPart || fullMessage.firstPart;\n }\n }\n\n if (!seachInCaptionOnly) {\n for (const message of httpMessages) {\n\n if (message.toLowerCase().indexOf(searchString) != -1) {\n if (includeCaptionInResult) {\n return message;\n } else {\n const fullMessage = Utilities.splitInTwo(message, this.captionAndMessageSeparator);\n return fullMessage.secondPart || fullMessage.firstPart;\n }\n }\n }\n }\n\n return null;\n }\n\n public static getResponseBody(response: HttpResponseBase) {\n if (response instanceof HttpResponse) {\n return response.body;\n }\n\n if (response instanceof HttpErrorResponse) {\n return response.error || response.message || response.statusText;\n }\n }\n\n public static checkNoNetwork(response: HttpResponseBase) {\n if (response instanceof HttpResponseBase) {\n return response.status == 0;\n }\n\n return false;\n }\n\n public static checkAccessDenied(response: HttpResponseBase) {\n if (response instanceof HttpResponseBase) {\n return response.status == 403;\n }\n\n return false;\n }\n\n public static checkNotFound(response: HttpResponseBase) {\n if (response instanceof HttpResponseBase) {\n return response.status == 404;\n }\n\n return false;\n }\n\n public static checkIsLocalHost(url: string, base?: string) {\n if (url) {\n const location = new URL(url, base);\n return location.hostname === 'localhost' || location.hostname === '127.0.0.1';\n }\n\n return false;\n }\n\n public static getQueryParamsFromString(paramString: string) {\n\n if (!paramString) {\n return null;\n }\n\n const params: { [key: string]: string } = {};\n\n for (const param of paramString.split('&')) {\n const keyValue = Utilities.splitInTwo(param, '=');\n params[keyValue.firstPart] = keyValue.secondPart;\n }\n\n return params;\n }\n\n public static splitInTwo(text: string, separator: string): { firstPart: string, secondPart: string } {\n const separatorIndex = text.indexOf(separator);\n\n if (separatorIndex == -1) {\n return { firstPart: text, secondPart: null };\n }\n\n const part1 = text.substr(0, separatorIndex).trim();\n const part2 = text.substr(separatorIndex + 1).trim();\n\n return { firstPart: part1, secondPart: part2 };\n }\n\n public static safeStringify(object) {\n\n let result: string;\n\n try {\n result = JSON.stringify(object);\n return result;\n } catch (error) {\n\n }\n\n const simpleObject = {};\n\n for (const prop in object) {\n if (!object.hasOwnProperty(prop)) {\n continue;\n }\n if (typeof (object[prop]) == 'object') {\n continue;\n }\n if (typeof (object[prop]) == 'function') {\n continue;\n }\n simpleObject[prop] = object[prop];\n }\n\n result = '[***Sanitized Object***]: ' + JSON.stringify(simpleObject);\n\n return result;\n }\n\n public static JsonTryParse(value: string) {\n try {\n return JSON.parse(value);\n } catch (e) {\n if (value === 'undefined') {\n return void 0;\n }\n return value;\n }\n }\n\n public static TestIsObjectEmpty(obj: any) {\n for (const prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n\n return true;\n }\n\n public static TestIsUndefined(value: any) {\n return typeof value === 'undefined';\n // return value === undefined;\n }\n\n public static TestIsString(value: any) {\n return typeof value === 'string' || value instanceof String;\n }\n\n public static capitalizeFirstLetter(text: string) {\n if (text) {\n return text.charAt(0).toUpperCase() + text.slice(1);\n } else {\n return text;\n }\n }\n\n public static toTitleCase(text: string) {\n return text.replace(/\\w\\S*/g, (subString) => {\n return subString.charAt(0).toUpperCase() + subString.substr(1).toLowerCase();\n });\n }\n\n public static toLowerCase(items: string);\n public static toLowerCase(items: string[]);\n public static toLowerCase(items: any): string | string[] {\n\n if (items instanceof Array) {\n const loweredRoles: string[] = [];\n\n for (let i = 0; i < items.length; i++) {\n loweredRoles[i] = items[i].toLowerCase();\n }\n\n return loweredRoles;\n } else if (typeof items === 'string' || items instanceof String) {\n return items.toLowerCase();\n }\n }\n\n public static uniqueId() {\n return this.randomNumber(1000000, 9000000).toString();\n }\n\n public static randomNumber(min: number, max: number) {\n return Math.floor(Math.random() * (max - min + 1) + min);\n }\n\n //ToDo: تغییر برای پابلیش\n public static baseUrl() {\n let base = '';\n if (window.location.origin) {\n // base = window.location.origin + '/backend';\n base = window.location.origin;\n } else {\n base = window.location.protocol + '//' + window.location.hostname + (window.location.port ? ':' + window.location.port : '');\n }\n let base2 = base.replace(/\\/$/, '')\n return base2;\n }\n\n public static printDateOnly(date: Date) {\n\n date = new Date(date);\n\n const dayNames = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');\n const monthNames = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');\n\n const dayOfWeek = date.getDay();\n const dayOfMonth = date.getDate();\n let sup = '';\n const month = date.getMonth();\n const year = date.getFullYear();\n\n if (dayOfMonth == 1 || dayOfMonth == 21 || dayOfMonth == 31) {\n sup = 'st';\n } else if (dayOfMonth == 2 || dayOfMonth == 22) {\n sup = 'nd';\n } else if (dayOfMonth == 3 || dayOfMonth == 23) {\n sup = 'rd';\n } else {\n sup = 'th';\n }\n\n const dateString = dayNames[dayOfWeek] + ', ' + dayOfMonth + sup + ' ' + monthNames[month] + ' ' + year;\n\n return dateString;\n }\n\n public static printTimeOnly(date: Date) {\n\n date = new Date(date);\n\n let period = '';\n let minute = date.getMinutes().toString();\n let hour = date.getHours();\n\n period = hour < 12 ? 'AM' : 'PM';\n\n if (hour == 0) {\n hour = 12;\n }\n if (hour > 12) {\n hour = hour - 12;\n }\n\n if (minute.length == 1) {\n minute = '0' + minute;\n }\n\n const timeString = hour + ':' + minute + ' ' + period;\n\n\n return timeString;\n }\n\n public static printDate(date: Date, separator = 'at') {\n return `${Utilities.printDateOnly(date)} ${separator} ${Utilities.printTimeOnly(date)}`;\n }\n\n public static printFriendlyDate(date: Date, separator = '-') {\n const today = new Date(); today.setHours(0, 0, 0, 0);\n const yesterday = new Date(today); yesterday.setDate(yesterday.getDate() - 1);\n const test = new Date(date.getFullYear(), date.getMonth(), date.getDate());\n\n if (test.toDateString() == today.toDateString()) {\n return `Today ${separator} ${Utilities.printTimeOnly(date)}`;\n }\n if (test.toDateString() == yesterday.toDateString()) {\n return `Yesterday ${separator} ${Utilities.printTimeOnly(date)}`;\n } else {\n return Utilities.printDate(date, separator);\n }\n }\n\n public static printShortDate(date: Date, separator = '/', dateTimeSeparator = '-') {\n\n let day = date.getDate().toString();\n let month = (date.getMonth() + 1).toString();\n const year = date.getFullYear();\n\n if (day.length == 1) {\n day = '0' + day;\n }\n\n if (month.length == 1) {\n month = '0' + month;\n }\n\n return `${month}${separator}${day}${separator}${year} ${dateTimeSeparator} ${Utilities.printTimeOnly(date)}`;\n }\n\n public static parseDate(date) {\n\n if (date) {\n\n if (date instanceof Date) {\n return date;\n }\n\n if (typeof date === 'string' || date instanceof String) {\n if (date.search(/[a-su-z+]/i) == -1) {\n date = date + 'Z';\n }\n\n return new Date(date);\n }\n\n if (typeof date === 'number' || date instanceof Number) {\n return new Date(date as any);\n }\n }\n }\n\n public static printDuration(start: Date, end: Date) {\n\n start = new Date(start);\n end = new Date(end);\n\n // get total seconds between the times\n let delta = Math.abs(start.valueOf() - end.valueOf()) / 1000;\n\n // calculate (and subtract) whole days\n const days = Math.floor(delta / 86400);\n delta -= days * 86400;\n\n // calculate (and subtract) whole hours\n const hours = Math.floor(delta / 3600) % 24;\n delta -= hours * 3600;\n\n // calculate (and subtract) whole minutes\n const minutes = Math.floor(delta / 60) % 60;\n delta -= minutes * 60;\n\n // what's left is seconds\n const seconds = delta % 60; // in theory the modulus is not required\n\n\n let printedDays = '';\n\n if (days) {\n printedDays = `${days} days`;\n }\n\n if (hours) {\n printedDays += printedDays ? `, ${hours} hours` : `${hours} hours`;\n }\n\n if (minutes) {\n printedDays += printedDays ? `, ${minutes} minutes` : `${minutes} minutes`;\n }\n\n if (seconds) {\n printedDays += printedDays ? ` and ${seconds} seconds` : `${seconds} seconds`;\n }\n\n\n if (!printedDays) {\n printedDays = '0';\n }\n\n return printedDays;\n }\n\n public static getAge(birthDate, otherDate) {\n birthDate = new Date(birthDate);\n otherDate = new Date(otherDate);\n\n let years = (otherDate.getFullYear() - birthDate.getFullYear());\n\n if (otherDate.getMonth() < birthDate.getMonth() ||\n otherDate.getMonth() == birthDate.getMonth() && otherDate.getDate() < birthDate.getDate()) {\n years--;\n }\n\n return years;\n }\n\n public static searchArray(searchTerm: string, caseSensitive: boolean, ...values: any[]) {\n if (!searchTerm) {\n return true;\n }\n\n let filter = searchTerm.trim();\n let data = values.join();\n\n if (!caseSensitive) {\n filter = filter.toLowerCase();\n data = data.toLowerCase();\n }\n\n return data.indexOf(filter) != -1;\n }\n\n public static moveArrayItem(array: any[], oldIndex, newIndex) {\n\n if (oldIndex < 0) {\n return;\n }\n\n if (newIndex < 0) {\n newIndex += array.length;\n }\n\n if (newIndex >= array.length) {\n let k = newIndex - array.length;\n while ((k--) + 1) {\n array.push(undefined);\n }\n }\n\n array.splice(newIndex, 0, array.splice(oldIndex, 1)[0]);\n }\n\n public static expandCamelCase(text: string) {\n\n if (!text) {\n return text;\n }\n\n return text.replace(/([A-Z][a-z]+)/g, ' $1')\n .replace(/([A-Z][A-Z]+)/g, ' $1')\n .replace(/([^A-Za-z ]+)/g, ' $1');\n }\n\n public static testIsAbsoluteUrl(url: string) {\n\n const r = new RegExp('^(?:[a-z]+:)?//', 'i');\n return r.test(url);\n }\n\n public static convertToAbsoluteUrl(url: string) {\n\n return Utilities.testIsAbsoluteUrl(url) ? url : '//' + url;\n }\n\n public static removeNulls(obj) {\n const isArray = obj instanceof Array;\n for (const k in obj) {\n if (obj[k] === null) {\n isArray ? obj.splice(+k, 1) : delete obj[k];\n } else if (typeof obj[k] == 'object') {\n Utilities.removeNulls(obj[k]);\n }\n if (isArray && (obj.length == +k)) {\n Utilities.removeNulls(obj);\n }\n }\n\n return obj;\n }\n\n public static debounce(func: (...args) => any, wait: number, immediate?: boolean) {\n let timeout;\n\n return function () {\n const context = this;\n const args_ = arguments;\n\n const later = function () {\n timeout = null;\n if (!immediate) {\n func.apply(context, args_);\n }\n };\n\n const callNow = immediate && !timeout;\n\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n\n if (callNow) {\n func.apply(context, args_);\n }\n };\n }\n}\n","\n\nimport { Directive, ElementRef, OnInit } from '@angular/core';\n\n\n@Directive({\n selector: '[autofocus]'\n})\nexport class AutofocusDirective implements OnInit {\n constructor(public elementRef: ElementRef) { }\n\n ngOnInit() {\n setTimeout(() => this.elementRef.nativeElement.focus(), 500);\n }\n}\n","import { AfterViewInit, Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { BarcodeListModel } from '../../models/utilities/barcode-list.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { fadeInOut } from '../../services/animations';\nimport { ColorSettingsService } from '../../services/color-settings';\r\n\n@Component({\n selector: 'barcode-list-modal',\n templateUrl: './barcode-list-modal.component.html',\n styleUrls: ['./barcode-list-modal.component.scss'],\n animations: [fadeInOut]\n})\nexport class BarcodeListModalComponent implements OnInit, OnChanges {\n public displayedColumns: string[] = ['index', 'barcode', 'actions'];\n public barcodeListData: MatTableDataSource\n public selectBarcodeList: string[] = [];\n\n @Input() barcodeList: BarcodeListModel[];\n @Output() barcodeSelect = new EventEmitter();\n\n constructor(private colorSettingService: ColorSettingsService,\n private alertService: AlertService) { }\n\n ngOnChanges() {\n this.barcodeListData = new MatTableDataSource(this.barcodeList);\n this.selectBarcodeList = [];\n }\n\n ngOnInit() { }\n\n selectBarcode(row: BarcodeListModel) {\n let findBarcode = this.selectBarcodeList.find(x => x === row.barcode);\n if (findBarcode === undefined) {\n row.isSelect = 1;\n this.selectBarcodeList.push(row.barcode);\n } else {\n this.alertService.showMessage('اخطار', 'بارکد انتخابی را قبلا انتخاب کرده اید.', MessageSeverity.error);\r\n }\n }\n\n sendBarcodes() {\n this.barcodeSelect.emit(this.selectBarcodeList);\r\n this.selectBarcodeList = [];\r\n }\n\n backgroundChange(row: BarcodeListModel) {\n return this.colorSettingService.changeColorBarcode(row.isSelect);\r\n }\n\n}\n","
\n
\n
\n
\n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n\n \n \n\n
ردیف {{ i + 1 }}
بارکد {{ row.barcode }}
... \n
\n \n
\n
\n\n
\n
\n\n
\n \n
\n
\n
\n","\n\nexport class PubDrivers {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(dccode?: number, dcode?: number, Dname?: string, DStore?: boolean) {\n this.dccode = dccode;\n this.dcode = dcode;\n this.Dname = Dname;\n this.DStore = DStore;\n\n }\n public dccode: number;\n public dcode: number;\n public Dname: string;\n public DStore: boolean;\n\n}\n","\n\nexport class SaleLoadingCommand {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(Lcnum?: number, Lcyear?: number, LcdateLoading?: string, LcpartCode?: number, LcnumberSendProduct?: number, LcdepoCode?: number, Lcfor?: string, Ccode?: number, LcdriverCode?: number, Lcdestination?: string, LccancelBit?: boolean, LcsysDate?: string, Lcuser?: number, LcdepoCodeFact?: number, LoadNumber?: number) {\n this.Lcnum = Lcnum;\n this.Lcyear = Lcyear;\n this.LcdateLoading = LcdateLoading;\n this.LcpartCode = LcpartCode;\n this.LcnumberSendProduct = LcnumberSendProduct;\n this.LcdepoCode = LcdepoCode;\n this.Lcfor = Lcfor;\n this.Ccode = Ccode;\n this.LcdriverCode = LcdriverCode;\n this.Lcdestination = Lcdestination;\n this.LccancelBit = LccancelBit;\n this.LcsysDate = LcsysDate;\n this.Lcuser = Lcuser;\n this.LcdepoCodeFact = LcdepoCodeFact;\n this.LoadNumber = LoadNumber;\n\n }\n public Lcnum: number;\n public Lcyear: number;\n public LcdateLoading: string;\n public LcpartCode: number;\n public LcnumberSendProduct: number;\n public LcdepoCode: number;\n public Lcfor: string;\n public Ccode: number;\n public LcdriverCode: number;\n public Lcdestination: string;\n public LccancelBit: boolean;\n public LcsysDate: string;\n public Lcuser: number;\n public LcdepoCodeFact: number;\n public LoadNumber: number;\n}\n","\n\nimport { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nimport { Utilities } from './utilities';\n\n@Injectable()\n/**\n* Provides a wrapper for accessing the web storage API and synchronizing session storage across tabs/windows.\n*/\nexport class LocalStoreManager {\n private static syncListenerInitialised = false;\n\n public static readonly DBKEY_USER_DATA = 'user_data';\n private static readonly DBKEY_SYNC_KEYS = 'sync_keys';\n private syncKeys: string[] = [];\n private initEvent = new Subject();\n\n private reservedKeys: string[] =\n [\n 'sync_keys',\n 'addToSyncKeys',\n 'removeFromSyncKeys',\n 'getSessionStorage',\n 'setSessionStorage',\n 'addToSessionStorage',\n 'removeFromSessionStorage',\n 'clearAllSessionsStorage'\n ];\n\n\n public initialiseStorageSyncListener() {\n if (LocalStoreManager.syncListenerInitialised == true) {\n return;\n }\n\n LocalStoreManager.syncListenerInitialised = true;\n window.addEventListener('storage', this.sessionStorageTransferHandler, false);\n this.syncSessionStorage();\n }\n\n public deinitialiseStorageSyncListener() {\n window.removeEventListener('storage', this.sessionStorageTransferHandler, false);\n LocalStoreManager.syncListenerInitialised = false;\n }\n\n public clearAllStorage() {\n this.clearAllSessionsStorage();\n this.clearLocalStorage();\n }\n\n public clearAllSessionsStorage() {\n this.clearInstanceSessionStorage();\n localStorage.removeItem(LocalStoreManager.DBKEY_SYNC_KEYS);\n\n localStorage.setItem('clearAllSessionsStorage', '_dummy');\n localStorage.removeItem('clearAllSessionsStorage');\n }\n\n public clearInstanceSessionStorage() {\n sessionStorage.clear();\n this.syncKeys = [];\n }\n\n public clearLocalStorage() {\n localStorage.clear();\n }\n\n public saveSessionData(data: any, key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n this.removeFromSyncKeys(key);\n localStorage.removeItem(key);\n this.sessionStorageSetItem(key, data);\n }\n\n public saveSyncedSessionData(data: any, key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n localStorage.removeItem(key);\n this.addToSessionStorage(data, key);\n }\n\n public savePermanentData(data: any, key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n this.removeFromSessionStorage(key);\n this.localStorageSetItem(key, data);\n }\n\n public moveDataToSessionStorage(key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n const data = this.getData(key);\n\n if (data == null) {\n return;\n }\n\n this.saveSessionData(data, key);\n }\n\n public moveDataToSyncedSessionStorage(key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n const data = this.getData(key);\n\n if (data == null) {\n return;\n }\n\n this.saveSyncedSessionData(data, key);\n }\n\n public moveDataToPermanentStorage(key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n const data = this.getData(key);\n\n if (data == null) {\n return;\n }\n\n this.savePermanentData(data, key);\n }\n\n public exists(key = LocalStoreManager.DBKEY_USER_DATA) {\n let data = sessionStorage.getItem(key);\n\n if (data == null) {\n data = localStorage.getItem(key);\n }\n\n return data != null;\n }\n\n public getData(key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n let data = this.sessionStorageGetItem(key);\n\n if (data == null) {\n data = this.localStorageGetItem(key);\n }\n\n return data;\n }\n\n public getDataObject(key = LocalStoreManager.DBKEY_USER_DATA, isDateType = false): T {\n let data = this.getData(key);\n\n if (data != null) {\n if (isDateType) {\n data = new Date(data);\n }\n return data as T;\n } else {\n return null;\n }\n }\n\n public deleteData(key = LocalStoreManager.DBKEY_USER_DATA) {\n this.testForInvalidKeys(key);\n\n this.removeFromSessionStorage(key);\n localStorage.removeItem(key);\n }\n\n public getInitEvent(): Observable<{}> {\n return this.initEvent.asObservable();\n }\n\n private sessionStorageTransferHandler = (event: StorageEvent) => {\n if (!event.newValue) {\n return;\n }\n\n if (event.key == 'getSessionStorage') {\n if (sessionStorage.length) {\n this.localStorageSetItem('setSessionStorage', sessionStorage);\n localStorage.removeItem('setSessionStorage');\n }\n } else if (event.key == 'setSessionStorage') {\n\n if (!this.syncKeys.length) {\n this.loadSyncKeys();\n }\n const data = JSON.parse(event.newValue);\n // console.info(\"Set => Key: Transfer setSessionStorage\" + \", data: \" + JSON.stringify(data));\n\n for (const key in data) {\n\n if (this.syncKeysContains(key)) {\n this.sessionStorageSetItem(key, JSON.parse(data[key]));\n }\n }\n\n this.onInit();\n } else if (event.key == 'addToSessionStorage') {\n\n const data = JSON.parse(event.newValue);\n\n // console.warn(\"Set => Key: Transfer addToSessionStorage\" + \", data: \" + JSON.stringify(data));\n\n this.addToSessionStorageHelper(data.data, data.key);\n } else if (event.key == 'removeFromSessionStorage') {\n\n this.removeFromSessionStorageHelper(event.newValue);\n } else if (event.key == 'clearAllSessionsStorage' && sessionStorage.length) {\n this.clearInstanceSessionStorage();\n } else if (event.key == 'addToSyncKeys') {\n this.addToSyncKeysHelper(event.newValue);\n } else if (event.key == 'removeFromSyncKeys') {\n this.removeFromSyncKeysHelper(event.newValue);\n }\n }\n\n private syncSessionStorage() {\n localStorage.setItem('getSessionStorage', '_dummy');\n localStorage.removeItem('getSessionStorage');\n }\n\n private addToSessionStorage(data: any, key: string) {\n this.addToSessionStorageHelper(data, key);\n this.addToSyncKeysBackup(key);\n\n this.localStorageSetItem('addToSessionStorage', { key, data });\n localStorage.removeItem('addToSessionStorage');\n }\n\n private addToSessionStorageHelper(data: any, key: string) {\n this.addToSyncKeysHelper(key);\n this.sessionStorageSetItem(key, data);\n }\n\n private removeFromSessionStorage(keyToRemove: string) {\n this.removeFromSessionStorageHelper(keyToRemove);\n this.removeFromSyncKeysBackup(keyToRemove);\n\n localStorage.setItem('removeFromSessionStorage', keyToRemove);\n localStorage.removeItem('removeFromSessionStorage');\n }\n\n private removeFromSessionStorageHelper(keyToRemove: string) {\n\n sessionStorage.removeItem(keyToRemove);\n this.removeFromSyncKeysHelper(keyToRemove);\n }\n\n private testForInvalidKeys(key: string) {\n if (!key) {\n throw new Error('key cannot be empty');\n }\n\n if (this.reservedKeys.some(x => x == key)) {\n throw new Error(`The storage key \"${key}\" is reserved and cannot be used. Please use a different key`);\n }\n }\n\n private syncKeysContains(key: string) {\n\n return this.syncKeys.some(x => x == key);\n }\n\n private loadSyncKeys() {\n if (this.syncKeys.length) {\n return;\n }\n\n this.syncKeys = this.getSyncKeysFromStorage();\n }\n\n private getSyncKeysFromStorage(defaultValue: string[] = []): string[] {\n const data = this.localStorageGetItem(LocalStoreManager.DBKEY_SYNC_KEYS);\n\n if (data == null) {\n return defaultValue;\n } else {\n return data as string[];\n }\n }\n\n private addToSyncKeys(key: string) {\n this.addToSyncKeysHelper(key);\n this.addToSyncKeysBackup(key);\n\n localStorage.setItem('addToSyncKeys', key);\n localStorage.removeItem('addToSyncKeys');\n }\n\n private addToSyncKeysBackup(key: string) {\n const storedSyncKeys = this.getSyncKeysFromStorage();\n\n if (!storedSyncKeys.some(x => x == key)) {\n storedSyncKeys.push(key);\n this.localStorageSetItem(LocalStoreManager.DBKEY_SYNC_KEYS, storedSyncKeys);\n }\n }\n\n private removeFromSyncKeysBackup(key: string) {\n const storedSyncKeys = this.getSyncKeysFromStorage();\n\n const index = storedSyncKeys.indexOf(key);\n\n if (index > -1) {\n storedSyncKeys.splice(index, 1);\n this.localStorageSetItem(LocalStoreManager.DBKEY_SYNC_KEYS, storedSyncKeys);\n }\n }\n\n private addToSyncKeysHelper(key: string) {\n if (!this.syncKeysContains(key)) {\n this.syncKeys.push(key);\n }\n }\n\n private removeFromSyncKeys(key: string) {\n this.removeFromSyncKeysHelper(key);\n this.removeFromSyncKeysBackup(key);\n\n localStorage.setItem('removeFromSyncKeys', key);\n localStorage.removeItem('removeFromSyncKeys');\n }\n\n private removeFromSyncKeysHelper(key: string) {\n const index = this.syncKeys.indexOf(key);\n\n if (index > -1) {\n this.syncKeys.splice(index, 1);\n }\n }\n\n private localStorageSetItem(key: string, data: any) {\n localStorage.setItem(key, JSON.stringify(data));\n }\n\n private sessionStorageSetItem(key: string, data: any) {\n sessionStorage.setItem(key, JSON.stringify(data));\n }\n\n private localStorageGetItem(key: string) {\n return Utilities.JsonTryParse(localStorage.getItem(key));\n }\n\n private sessionStorageGetItem(key: string) {\n return Utilities.JsonTryParse(sessionStorage.getItem(key));\n }\n\n private onInit() {\n setTimeout(() => {\n this.initEvent.next();\n this.initEvent.complete();\n });\n }\n}\n","export enum CustomerDocumentStatusEnum {\r\n \"بررسی نشده\" = 1,\r\n \"تایید شده\" = 2,\r\n \"عدم تایید\" = 3,\r\n \"مدارک ناقص\" = 4,\r\n \"بدون مدارک\" = 5,\r\n \"تایید نهایی\" = 6\r\n}\r\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'car',\n templateUrl: './car.component.html',\n styleUrls: ['./car.component.scss'],\n animations: [fadeInOut]\n})\nexport class carComponent {\n}\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 } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'returned',\r\n templateUrl: './returned.component.html',\r\n animations: [fadeInOut]\r\n})\r\nexport class returnedComponent {\r\n\r\n}\r\n","
\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 } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'previews-print',\n templateUrl: './previews-print.component.html',\n animations: [fadeInOut]\n})\nexport class PreviewsPrintComponent {\n\n\n\n constructor() {\n }\n}\n","
\r\n

استیمول پرینت

\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n","import { Component, OnInit, Output, EventEmitter, Inject } from '@angular/core';\r\nimport { HttpEventType, HttpClient } from '@angular/common/http'; \r\nimport { UploaderService } from '../../services/uploader.service ';\r\n\r\n@Component({\r\n selector: 'app-image-uploader',\r\n templateUrl: './image-uploader.component.html',\r\n styleUrls: ['./image-uploader.component.css']\r\n})\r\nexport class ImageUploaderComponent implements OnInit {\r\n progress: number;\r\n infoMessage: any;\r\n isUploading: boolean = false;\r\n file: File;\r\n files: Array = [];\r\n isValidSize = false;\r\n isValidWH = false;\r\n width: number;\r\n height: number;\r\n imageUrl: string | ArrayBuffer = \"http://placehold.it/330x330\";\r\n fileName: any = \"تصویری انتخاب نشده است\";\r\n images: Array = [];\r\n public message: string;\r\n @Output() public onUploadFinished: EventEmitter| undefined > = new EventEmitter();\r\n\r\n constructor(private uploader: UploaderService, private http: HttpClient) { }\r\n\r\n ngOnInit() {\r\n this.uploader.progressSource.subscribe(progress => {\r\n this.progress = progress;\r\n });\r\n }\r\n\r\n public getImageDimenstion(imgUrl,file) {\r\n var img = new Image();\r\n img.src = imgUrl;\r\n img.onload = (event) => {\r\n let loadedImage: any = event.currentTarget;\r\n this.width = loadedImage.width;\r\n this.height = loadedImage.height;\r\n if (this.IsValidSize(this.width, this.height) && this.isValidWH) {\r\n if (this.files.findIndex(a => a.name === file.name) ==-1) {\r\n this.images.push(imgUrl);\r\n this.files.push(file);\r\n this.onUploadFinished.emit(this.files);\r\n }\r\n }\r\n };\r\n }\r\n removeImage(i) {\r\n this.files.splice(i, 1);\r\n this.images.splice(i, 1);\r\n this.fileName = \"\";\r\n this.onUploadFinished.emit(this.files);\r\n }\r\n IsValidSize(wid, hei) {\r\n if (wid <= 330 && hei <= 330) {\r\n this.isValidWH = true;\r\n return true;\r\n }\r\n else {\r\n this.isValidWH = false;\r\n return false;\r\n }\r\n }\r\n public onChange(files) {\r\n if (files.length === 0) {\r\n return;\r\n }\r\n if (files[0]) {\r\n this.file = files[0];\r\n this.fileName = files[0].name;\r\n const reader = new FileReader();\r\n reader.readAsDataURL(this.file);\r\n var kbSize = Math.floor(this.file.size) / 1024;\r\n if (kbSize >= 300) {\r\n this.isValidSize = false;\r\n }\r\n else {\r\n this.isValidSize = true;\r\n }\r\n reader.onload = event => {\r\n this.imageUrl = reader.result;\r\n this.getImageDimenstion(this.imageUrl, files[0]);\r\n };\r\n }\r\n }\r\n onUpload() {\r\n this.infoMessage = null;\r\n this.progress = 0;\r\n this.isUploading = true;\r\n this.uploader.upload(this.file).subscribe(message => {\r\n this.isUploading = false;\r\n this.infoMessage = message;\r\n });\r\n }\r\n public reset() {\r\n this.files = [];\r\n this.images = [];\r\n this.fileName=\"\";\r\n }\r\n public getImages(){\r\n return this.images;\r\n }\r\n}\r\n","
\r\n
\r\n

\r\n لطفا عکس با حجم مناسب انتخاب کنید 300KB\r\n

\r\n

\r\n لطفا عکس با اندازه مناسب انتخاب کنید 330در330\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n \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 { SaleCustomerImageInfoEntityModel } from \"./SaleCustomerImageInfoEntity.model\";\r\n\r\nexport class SaleCustomer {\n cMainCode: number;\n cSubCode: number;\n cName: string;\n cPublicCode: string;\n cTel: string;\n cStatusId: number;\n cStatusType: string;\n cAddress: string;\n cEcoCode: string;\n cRegisterCode: string;\n cPostalCode: string;\n cOstan: string;\n cCity: string;\n cCityCode: number;\n cRepresentCode: number;\n cAdminName: string;\n cOwnerCode: number;\n saleCustomerImageInfos: SaleCustomerImageInfoEntityModel[];\n group: string[];\n}\n","import {map} from 'rxjs/operators';\r\n// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport {Injectable} from '@angular/core';\r\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\r\nimport {Observable} from 'rxjs';\r\nimport {catchError} from 'rxjs/operators';\r\n\r\nimport {AuthService} from './auth.service';\r\nimport {EndpointBase} from './endpoint-base.service';\r\nimport {ConfigurationService} from './configuration.service';\r\nimport {RequestInvoiceModel} from '../models/RequestInvoices.model';\r\n\r\n@Injectable()\r\nexport class AccountEndpoint extends EndpointBase {\r\n private readonly _GetTikets: string = '/api/Tikets';\r\n private readonly _usersUrl: string = '/api/account/users';\r\n private readonly _getUserUrl: string = '/api/account/getUser';\r\n private readonly _userByUserNameUrl: string = '/api/account/users/username';\r\n private readonly _currentUserUrl: string = '/api/account/users/me';\r\n private readonly _currentUserPreferencesUrl: string = '/api/account/users/me/preferences';\r\n private readonly _unblockUserUrl: string = '/api/account/users/unblock';\r\n private readonly _rolesUrl: string = '/api/account/roles';\r\n private readonly _roleByRoleNameUrl: string = '/api/account/roles/name';\r\n private readonly _permissionsUrl: string = '/api/account/permissions';\r\n private readonly _CMainCodeByUserId: string = '/api/Account/main';\r\n private readonly _SDCodeByUserId: string = '/api/Account/SDCode';\r\n private readonly _TiketsInsert: string = '/api/Tikets';\r\n private readonly _GetAssigneSalerUrl: string = '/api/SaleCustomers/GetAssigneSaler';\r\n private readonly _GetSBACodeUrl: string = '/api/SaleCustomers/GetSBACode';\r\n private readonly _GetNtswByTrackingCode: string = '';\r\n private readonly _GetNtswWithOutTrackingCode: string = '';\r\n private readonly _GetRepresentCode: string = '/api/DepoCodes/GetRepresentCode';\r\n private readonly _GetcheckDepoRecieptPermanentURL: string = '/api/DepoCodes/GetcheckDepoRecieptPermanent';\r\n private readonly _RevertDetailRepeateurl: string = '/api/DepoCodes/RevertDetailRepeate';\r\n private readonly _GetCustomerClub: string = '/api/CustomerClubs/GetCustomerClub';\r\n private readonly _SupliesDealerListurl: string = '/api/DepoCodes/SupliesDealerList';\r\n private readonly _GetDepoRecieptPermanentsExist: string = '/api/DepoRecieptPermanents/GetDepoRecieptPermanentsExist';\r\n private readonly _SalePriceKindsurl: string = '/api/SalePriceKinds';\r\n private readonly _SalePriceKind_SupliesDealer: string = '/api/SalePriceKinds/GetSalePriceKind_SupliesDealer';\r\n private readonly _DepoAssignmentProductBarCodesUrl: string = '/api/DepoAssignmentProductBarCodes';\r\n private readonly _CsubCodeByUserId: string = '/api/Account/sub';\r\n private readonly _CheckExistReceiptUrl: string = '/api/DepoCodes/CheckExistReceipt';\r\n private readonly _GetCustomerAddressUrl: string = '/api/DepoCodes/GetCustomerAddress';\r\n private readonly _GetCountProductDealerCodeUrl: string = '/api/DepoCodes/GetCountProductDealerCode';\r\n private readonly _CheckSerialRevertUrl: string = '/api/DepoCodes/CheckSerialRevert';\r\n private readonly _CheckExsitInvoiceAssUrl: string = '/api/DepoCodes/CheckExsitInvoiceAss';\r\n private readonly _saveCustomerClubUrl: string = '/api/CustomerClubs';\r\n private readonly _saveAddressUrl: string = '/api/Addresses';\r\n private readonly _saveCustomerUrl: string = '/api/SaleCustomers/Register';\r\n private readonly _InsertHesabTafziliUrl: string = '/api/DepoCodes/insertHesabTafzil';\r\n private readonly _UpdateRequestInvoiceUrl: string = '/api/DepoCodes/UpdateRequestInvoice';\r\n private readonly _InsertRevertiUrl: string = '/api/DepoCodes/insertRevert';\r\n private readonly _SaleCustomerUrl: string = '/api/SaleCustomers';\r\n private readonly _SaleSubOrdersUrl: string = '/api/SaleSubOrders';\r\n private readonly _GroupUrl: string = '/api/Groups';\r\n private readonly _GetGroupsNewUrl: string = '/api/Groups/GetGroupsNew';\r\n private readonly _GetGroupswithcMainCode: string = '/api/SalePriceKinds/GetSalePriceKindwithCOMCMainCode';\r\n private readonly _GetgroupswithSaleCustomerItemPriceKind: string = '/api/SalePriceKinds/GetSalePriceKindwithSaleCustomerItemPriceKin';\r\n private readonly _ProductSupliesDealersUrl: string = '/api/ProductSupliesDealers';\r\n private readonly _ProductSupliesDealerImagesUrl: string = '/api/ProductSupliesDealerImages';\r\n private readonly _ProductSupliesDealerImagesFolderInsertUrl: string = '/api/Image';\r\n private readonly _ProductSupliesDealerImagesDeleteUrl: string = '/api/Image/deleteImage';\r\n private readonly _GetRequestInvoiceProductUrl: string = '/api/RequestInvoiceProducts/GetRequestInvoiceProductNew';\r\n private readonly _editCustomerUrl: string = '/api/SaleCustomers/saleedit';\r\n private readonly _deleteCustomerUrl: string = '/api/SaleCustomers/saledelete';\r\n private readonly _checkCustomerUrl: string = '/api/SaleCustomers/CheckCustomer';\r\n private readonly _PubOstanUrl: string = '/api/PubOstans';\r\n private readonly _PubCitiesUrl: string = '/api/PubCities';\r\n private readonly _RequestInvoiceUrl: string = '/api/RequestInvoices';\r\n private readonly _PostRequestInvoiceUrl: string = '/api/RequestInvoices/Insert-RequestInvoices';\r\n private readonly _UpdateRevertInvoiceUrl: string = '/api/RequestInvoices/Update-Request-Invoices';\r\n private readonly _DepoProductUnitsUrl: string = '/api/DepoProductUnits';\r\n private readonly _SalesUrl: string = '/api/account/Sales';\r\n private readonly _NameHeadUrl: string = '/api/SaleCustomers/NameHead';\r\n private readonly _GroupNameUrl: string = '/api/Commissions/Group';\r\n private readonly _DepoCodeListUrl: string = '/api/DepoCodes/Depo';\r\n private readonly _GetSaleSelectSubUrl: string = '/api/DepoCodes/GetSaleSelectSub';\r\n private readonly _GetSaleSelectSubBarCodeUrl: string = '/api/DepoCodes/GetSaleSelectSubBarCode';\r\n private readonly _GetRemindWithVouchersUrl: string = '/api/DepoCodes/GetRemindWithVouchers';\r\n private readonly _GetStatusAcceptUrl: string = '/api/DepoCodes/GetStatusAccept';\r\n private readonly _GetSupliesOrderNewsUrl: string = '/api/SupliesOrderNews/GetSupliesOrderNews';\r\n private readonly _getGetReportDebtNewResultMethodUrl: string = '/api/SupliesOrderNews/getGetReportDebtNewResultMethod';\r\n private readonly _getGetReportDebtNewGroupResultMethodUrl: string = '/api/SupliesOrderNews/getGetReportDebtNewGroupResultMethod';\r\n private readonly _getGetReportDebtNewGroupResultMethodByInvoiceNumberUrl: string = '/api/SupliesOrderNews/getGetReportDebtNewGroupResultMethodByInvoiceNumber';\r\n private readonly _GetSupliesContractReportUrl: string = '/api/SupliesOrderNews/GetSupliesContractReport';\r\n private readonly _GetSupliesContractReportWithDealerCodeUrl: string = '/api/SupliesOrderNews/GetSupliesContractReportWithDealerCodeUrl';\r\n private readonly _GetSupliesContractReportWithDealerCode_ProductCodeUrl: string = '/api/SupliesOrderNews/GetSupliesContractReportWithDealerCode_ProductCode';\r\n private readonly _GetSupliesContractReportMoneySiteUrl: string = '/api/SupliesOrderNews/GetSupliesContractReportMoneySite';\r\n private readonly _DeposListUrl: string = '/api/TakhsisDepoCustomers/Takhsis';\r\n private readonly _GetCustomerClubWithUrl: string = '/api/Customer/GetCustomerClubWith';\r\n private readonly _DeposListUrlOwner: string = '/api/TakhsisDepoCustomers/Owner';\r\n private readonly _DepoListTarazUrl: string = '/api/DepoCodes/TarazDepo';\r\n private readonly _DepoTarazwithcomDetail: string = '/api/DepoCodes/TarazDepoWithcomDetail';\r\n private readonly _VirtualWarehouseInventory: string = '/api/DepoCodes/GetVirtualWarehouseInventory';\r\n\r\n\r\n private readonly _MethodGetDepoTarazwithcomDetailByDCCodeUrl: string = '/api/DepoCodes/MethodGetDepoTarazwithcomDetailByDCCode';\r\n private readonly _GetInvoiceReportSite: string = 'api/ReportStore/GetReport';\r\n private readonly _DepoTarazwithcomDetailBarcode: string = '/api/DepoCodes/TarazDepoWithcomDetailBarcode';\r\n private readonly _DepoTarazwithcomDetailSearchScan: string = '/api/DepoCodes/TarazDepoWithcomDetailSearchScan';\r\n private readonly _DepoTarazNewPivotDepos: string = '/api/DepoCodes/GetDepoTarazNewPivotDepos';\r\n private readonly _TarazDepoBaseUrl: string = '/api/DepoCodes/TarazDepoBase';\r\n private readonly _GetSaleBankAccountsUrl: string = '/api/SaleBankAccounts/GetSaleBankAccounts';\r\n private readonly _GetSubSendProductUrl: string = '/api/DepoCodes/GetSubSendProduct';\r\n private readonly _SaleReceiptChekHesabSanadUrl: string = '/api/DepoCodes/SaleReceiptChekHesabSanad';\r\n private readonly _GetAcceptContractCheckUrl: string = '/api/DepoCodes/GetAcceptContractCheck';\r\n private readonly _GetSaleSubReceiptSelectUrl: string = '/api/DepoCodes/GetSaleSubReceiptSelect';\r\n private readonly _GetAssProductListUrl: string = '/api/DepoCodes/GetAssProductList';\r\n private readonly _GetDepoRecieptTemporaryListUrl: string = '/api/DepoCodes/GetDepoRecieptTemporaryList';\r\n private readonly _GetDepoAssignmentWithSerialListUrl: string = '/api/DepoCodes/GetDepoAssignmentWithSerialList';\r\n private readonly _GetSaleLoadingUrl: string = '/api/DepoCodes/GetSaleLoading';\r\n private readonly _GetDepoByCommissionMoneyUrl: string = '/api/DepoCodes/GetDepoByCommissionMoney';\r\n private readonly _GetDepoByCommissionMoneyAcceptUrl: string = '/api/DepoCodes/GetDepoByCommissionMoneyAccept';\r\n private readonly _GetDepoByCommissionMoneyAcceptByDCDealerCodeUrl: string = '/api/DepoCodes/GetDepoByCommissionMoneyAcceptByDCDealerCode';\r\n private readonly _GetDepoAssignmentByAcceptUrl: string = '/api/DepoCodes/GetDepoAssignmentByAccept';\r\n private readonly _GetLastSerialUrl: string = '/api/DepoCodes/GetLastSerial';\r\n private readonly _PreInvoiceUrl: string = '/api/DepoCodes/PreInvoice';\r\n private readonly _ContractProductUrl: string = '/api/SaleNewContractProducts/ContractProduct';\r\n private readonly _ContractProductInsertUrl: string = '/api/SaleNewContractProducts';\r\n private readonly _SupliesDealerMoneysInsertUrl: string = '/api/SupliesDealerMoneys';\r\n private readonly _SupliesOrderRelationRecieptsInsertUrl: string = '/api/SupliesOrderRelationReciepts';\r\n private readonly _DepoRevertToDepoCustomersUrl: string = '/api/DepoRevertToDepoCustomers';\r\n private readonly _DepoAssignmentProductInsertUrl: string = '/api/DepoAssignmentProducts';\r\n private readonly _RequestInvoicesInsertUrl: string = '/api/RequestInvoices';\r\n private readonly _RequestInvoiceProductsInsertUrl: string = '/api/RequestInvoiceProducts';\r\n private readonly _RequestInvoiceProductBarCodesInsertUrl: string = '/api/RequestInvoiceProductBarCodes';\r\n private readonly _AdjustmentsInsertUrl: string = '/api/Adjustments';\r\n private readonly _GetOffsetContractUrl: string = '/api/Adjustments/GetOffsetContract';\r\n private readonly _GetAimsetContractUrl: string = '/api/Adjustments/GetAimsetContract';\r\n private readonly _DepoAssignmentProductLoadingInsertUrl: string = '/api/DepoAssignmentProductNumberLoadings';\r\n private readonly _DepoAssignmentProductDetailInsertUrl: string = '/api/DepoAssignmentProductDetails';\r\n private readonly _GetRequestInvoiceByGroupResultsUrl: string = '/api/DepoCodes/GetRequestInvoiceByGroupResults';\r\n private readonly _ProductSupliesDealersInsertUrl: string = '/api/ProductSupliesDealers';\r\n private readonly _ProductSupliesDealersUpdateUrl: string = '/api/ProductSupliesDealers/PutProductSupliesDealers';\r\n private readonly _ProductSupliesDealerImagesInsertUrl: string = '/api/ProductSupliesDealerImages';\r\n private readonly _DepoRecieptPermanentsUrl: string = '/api/DepoRecieptPermanents';\r\n private readonly _DepoRecieptPermanentDetailsUrl: string = '/api/DepoRecieptPermanentDetails';\r\n private readonly _SaleSubReceiptInsertUrl: string = '/api/SaleSubReceipts';\r\n private readonly _SaleSubReceiptsInsertUrl: string = '/api/SaleSubReceipts/PostSaleSubReceipts';\r\n private readonly _SaleLoadingCommandBarCodesInsertUrl: string = '/api/SaleLoadingCommandBarCodes';\r\n private readonly _SaleLoadingCommandBarCodesInsertPostArrayUrl: string = '/api/SaleLoadingCommandBarCodes/PostArray';\r\n private readonly _TemprorySerialsInsertUrl: string = '/api/TemprorySerials';\r\n private readonly _DepoRialReceiptInsertUrl: string = '/api/DepoRialReceipts';\r\n private readonly _TemprorySerialsGetUrl: string = '/api/TemprorySerials';\r\n private readonly _PreInvoiceInsertUrl: string = '/api/DepoCodes/PreInvoiceInsert';\r\n private readonly _DepoRevertToDepoCustomerDetailInsertUrl: string = '/api/DepoRevertToDepoCustomerDetails';\r\n private readonly _GetNewCodeUrl: string = '/api/DepoCodes/GetNewCode';\r\n private readonly _GetSDCodeUrl: string = '/api/DepoCodes/GetSDCode';\r\n private readonly _GetTaxPriceTotalUrl: string = '/api/DepoCodes/GetTaxPriceTotal';\r\n private readonly _GetNewCodeDepoRecieptPermanentUrl: string = '/api/DepoCodes/GetNewCodeDepoRecieptPermanent';\r\n private readonly _GetOrdernum: string = '/api/SaleNewContracts/Getordernum';\r\n private readonly _GetSerialStatue: string = '/api/SaleLoadingSelcetForScanners/ChkExistSerial';\r\n\r\n private readonly _GetCheckExistBarCode: string = '/api/SaleLoadingSelcetForScanners/CheckExistBarCode';\r\n private readonly _GetNewCarsCodeUrl: string = '/api/DepoCodes/GetNewCarsCode';\r\n private readonly _GetNewDriverCodeUrl: string = '/api/DepoCodes/GetNewDriverCode';\r\n private readonly _GetStatusNumberUrl: string = '/api/DepoCodes/StatusNumber';\r\n private readonly _GetSaleNewContract_PrintInvoiceUrl: string = '/api/SaleNewContracts/GetSaleNewContract_PrintInvoice';\r\n private readonly _GetNewCodeLoading: string = '/api/DepoCodes/GetNewCodeLoading';\r\n private readonly _GetNewCodeassignmentLoading: string = '/api/DepoAssignmentProducts/GetNewCode';\r\n private readonly _NewAssignmentProducts: string = '/api/DepoAssignmentProducts/newAssignmentProducts';\r\n private readonly _NewAssignmentProductsNextAccept: string = '/api/DepoAssignmentProducts/NewAssignmentProductsNextAccept';\r\n private readonly _NewPreInvoice: string = '/api/SalePreInvoiceForContracts/newPreInvoice';\r\n private readonly _InsertNewPreInvoice: string = '/api/SalePreInvoiceForContracts/insert-sale-pre-invoice-for-contract';\r\n private readonly _NewSaleOrder: string = '/api/SaleOrders/newSaleOrder';\r\n private readonly _NewSaleSendProduct: string = '/api/SaleSendProducts/newSaleSendProduct';\r\n private readonly _NewSaleLoadingCommand: string = '/api/SaleLoadingCommands/newSaleLoadingCommand';\r\n private readonly _NewAssignmentProductsNextPayment: string = '/api/DepoAssignmentProducts/newAssignmentProductsNextPayment';\r\n private readonly _NewAssignmentLoadingNextSendProduct: string = '/api/DepoAssignmentProducts/newAssignmentProductsNextSendProduct';\r\n private readonly _CreateContractForPerInvoiceProducts: string = '/api/SalePreInvoiceForContracts/CreateContractForPerInvoiceProducts';\r\n private readonly _GetGetDapCodeProductLoading: string = '/api/DepoAssignmentProductDetails/GetDAPCodeProduct';\r\n private readonly _GetDepoRecieptTemporaryNewDetail: string = '/api/DepoCodes/GetDepoRecieptTemporaryDetailProduct';\r\n private readonly _GetDepoRecieptTemporaryDetail: string = '/api/DepoCodes/GetDepoRecieptTemporaryDetail';\r\n private readonly _GetCodeSPICode: string = '/api/SalePreInvoice_SaleNewContract/GetCodeSPICode';\r\n private readonly _GetDepoTarazNewResult: string = '/api/DepoCodes/GetDepoTarazNewResult';\r\n private readonly _GetDepoTarazNewResult2: string = '/api/DepoCodes/GetDepoTarazNewResult2';\r\n private readonly _GetDepoCodeDealerCodeUrl: string = '/api/DepoCodes/GetDepoCodeDealerCode';\r\n private readonly _GetProductSupliesDealerUrl: string = '/api/ProductSupliesDealers/GetProductSupliesDealer';\r\n private readonly _GetProductSupliesDealerImageUrl: string = '/api/Image/getImage';\r\n private readonly _GetProductSupliesDealerFileImageUrl: string = '/api/Image/getImageFile';\r\n private readonly _GetProductSupliesDealerImageUrlfromsup: string = '/api/ProductSupliesDealerImages/GetProductSupliesDealerImage';\r\n private readonly _GetDirectory: string = '/api/DepoCodes/GetCurrent';\r\n private readonly _GetRNum: string = '/api/DepoCodes/GetRNum';\r\n private readonly _DeleteTemproryUrl: string = '/api/TemprorySerials/DeleteTemprory';\r\n private readonly _AddressCustomerUrl: string = '/api/Addresses/GetCustomerByCMainCode';\r\n\r\n private readonly _GetNewCodeReciptUrl: string = '/api/DepoCodes/GetNewCodeRecipt';\r\n private readonly _GetNewCodeRevertUrl: string = '/api/DepoCodes/GetNewCodeRevert';\r\n private readonly _GetNewCodeContractUrl: string = '/api/DepoCodes/NewContract';\r\n private readonly _GetNewCodesalepriceUrl: string = '/api/DepoCodes/GetNewCodesaleprice';\r\n private readonly _GetPreInvoiceProducttUrl: string = '/api/SalePreInvoiceForContractProducts/GetProduct';\r\n private readonly _getPreInvoiceUrl: string = '/api/SalePreInvoiceForContracts/PreInvoice';\r\n private readonly _DeletePreInvoiceUrl: string = '/api/SalePreInvoiceForContracts/DeletePreInvoice';\r\n private readonly _DeleteSendProductUrl: string = '/api/SaleSendProducts/DeleteSendProduct';\r\n private readonly _DeleteOrderUrl: string = '/api/SaleOrders/DeleteOrder';\r\n private readonly _DeleteSaleLoadingCommandBarCodeUrl: string = '/api/SaleLoadingCommands/DeleteSaleLoadingCommandBarCode';\r\n private readonly _GetPreInvoiceUrl: string = '/api/SalePreInvoiceForContracts/GetPreInvoice';\r\n private readonly _GetAllReport: string = '/api/DepoCodes/GetReceipt';\r\n private readonly _GetAllReportSite: string = '/api/DepoCodes/GetReceiptSite';\r\n private readonly _GetAllReportsettlement: string = '/api/DepoCodes/GetReceiptSettlement';\r\n private readonly _GetReceiptSettlementSimilar: string = '/api/DepoCodes/GetReceiptSettlementSimilar';\r\n private readonly _GetAllPreInvoiceSelectList: string = '/api/DepoCodes/PreInvoiceSelectList';\r\n private readonly _GetAllSerial: string = '/api/TemprorySerials';\r\n private readonly _GetLoadingDetail: string = '/api/SaleLoadingSelcetForScanners/GetLoadingDetail';\r\n private readonly _GetNewCodeOrderUrl: string = '/api/DepoCodes/GetNewCodeOrder';\r\n private readonly _GetNewCodeDepoRecieptTemporaryUrl: string = '/api/DepoCodes/GetNewCodeDepoRecieptTemporary';\r\n private readonly _GetGetNewCodeRequestInvoiceUrl: string = '/api/DepoCodes/GetNewCodeRequestInvoice';\r\n private readonly _GetDealerSaleResultsMethod: string = '/api/DepoCodes/GetDealerSaleResultsMethod';\r\n private readonly _getDealerSaleGroupResultsMethod: string = '/api/DepoCodes/getDealerSaleGroupResultsMethod';\r\n private readonly _GetOOrderNumUrl: string = '/api/DepoCodes/GetOOrderNum';\r\n private readonly _GetNewCodesspUrl: string = '/api/DepoCodes/GetNewCodessp';\r\n private readonly _GetNewCodeDepoAssignmentUrl: string = '/api/DepoCodes/GetNewCodeDepoAssignment';\r\n private readonly _GetNewCodeCustomerClubUrl: string = '/api/DepoCodes/GetNewCodeCustomerClub';\r\n private readonly _GetNewCodeInvoiceUrl: string = '/api/DepoCodes/GetNewCodeInvoice';\r\n private readonly _GetSaleContractToInvoiceSelectUrl: string = '/api/DepoCodes/GetSaleContractToInvoiceSelectResult';\r\n private readonly _SaleNewContractSelectListUrl: string = '/api/DepoCodes/SaleNewContractSelectList';\r\n private readonly _SalePreInvoiceForContractsInsertUrl: string = '/api/SalePreInvoiceForContracts';\r\n private readonly _SaleSendProductsInsertUrl: string = '/api/SaleSendProducts';\r\n private readonly _DepoCodeInsertUrl: string = '/api/DepoCodes';\r\n private readonly _DepoRecieptPermanentBarCodesInsertUrl: string = '/api/DepoRecieptPermanentBarCodes';\r\n private readonly _SaleNewContractsInsertUrl: string = '/api/SaleNewContracts';\r\n private readonly _SaleSubSendProductsInsertUrl: string = '/api/SaleSubSendProducts';\r\n private readonly _SaleLoadingCommandsInsertUrl: string = '/api/SaleLoadingCommands';\r\n private readonly _SupliesDealerCommissionDetailsInsertUrl: string = '/api/SupliesDealerCommissionDetails';\r\n private readonly _updatecommissionUrl: string = '/api/DepoCodes/updatecommission';\r\n private readonly _dateUrl: string = '/api/ServerDateTime/getServerDateTime';\r\n private readonly _DepoAssignmentsInsertUrl: string = '/api/DepoAssignments';\r\n private readonly _DepoAssignmentDetailsInsertUrl: string = '/api/DepoAssignmentDetails';\r\n private readonly _DepoAssignmentBarCodesInsertUrl: string = '/api/DepoAssignmentBarCodes';\r\n private readonly _DepoAssignment_RequestAssignmentInsertUrl: string = '/api/DepoAssignment_RequestAssignment';\r\n private readonly _DepoRecieptTemporaryNewsInsertUrl: string = '/api/DepoRecieptTemporaryNews';\r\n private readonly _SalePricesInsertUrl: string = '/api/SalePrices';\r\n private readonly _SalePricesRejectUrl: string = '/api/SalePrices';\r\n private readonly _DepoRecieptTemporaryDetailNewsInsertUrl: string = '/api/DepoRecieptTemporaryDetailNews';\r\n private readonly _DepoRecieptTemporaryBarCodesInsertUrl: string = '/api/DepoRecieptTemporaryBarCodes';\r\n private readonly _DepoRelreciepAssignmenInsertUrl: string = '/api/DepoRelreciepAssignmen';\r\n private readonly _SaleSubLoadingCommandsInsertUrl: string = '/api/SaleSubLoadingCommands';\r\n private readonly _SalePreInvoice_SaleNewContractUrl: string = '/api/SalePreInvoice_SaleNewContract';\r\n private readonly _SaleNewContractsGet: string = '/api/SaleNewContracts/NewContract';\r\n private readonly _CustomerClubsInsertUrl: string = '/api/CustomerClubs';\r\n private readonly _CustomerSalePreInvoicesInsertUrl: string = '/api/CustomerSalePreInvoices';\r\n private readonly _UpdateNationalInsertUrl: string = '/api/CustomerClubs/UpdateNational';\r\n private readonly _SaleInvoicesInsertUrl: string = '/api/SaleInvoices';\r\n private readonly _SaleInvoiceDetailsInsertUrl: string = '/api/SaleInvoiceDetails';\r\n private readonly _SaleOrdersInsertUrl: string = '/api/SaleOrders';\r\n private readonly _PubCarsInsertUrl: string = '/api/PubCars';\r\n private readonly _GetAcceptContract: string = '/api/DepoCodes/GetAcceptContract';\r\n private readonly _GetDepoRecieptTemporaryBarCode: string = '/api/DepoCodes/GetDepoRecieptTemporaryBarCode';\r\n private readonly _GetDepoRecieptTemporaryBarCodeCheckSerialurl: string = '/api/DepoCodes/GetDepoRecieptTemporaryBarCodeCheckSerial';\r\n private readonly _GetProductCodeWithBarcodeurl: string = '/api/DepoCodes/GetDepoViewBarcodeInDepo';\r\n private readonly _GetProductCodeWithProductCodeurl: string = '/api/DepoCodes/GetDepoViewBarcodeInDepoByProductCode';\r\n private readonly _PubDriverInsertUrl: string = '/api/PubDrivers';\r\n private readonly _PubDriverListUrl: string = '/api/DepoCodes/GetDriver';\r\n private readonly _GetCarsPropertiesUrl: string = '/api/DepoCodes/GetCarsProperties';\r\n private readonly _GetPubDriversUrl: string = '/api/DepoCodes/GetPubDrivers';\r\n private readonly _GetRequestAssignmentDetailSelectUrl: string = '/api/DepoCodes/GetRequestAssignmentDetailSelect';\r\n private readonly _GetSuppliersSaleByWhereResultMethod: string = '/api/SupliesOrderNews/GetSuppliersSaleByWhereResultMethod';\r\n private readonly _getSuppliersSaleByWhereGroupResultsUrl: string = '/api/SupliesOrderNews/getSuppliersSaleByWhereGroupResults';\r\n private readonly _SalePreInvoiceForContractProductInsertUrl: string = '/api/SalePreInvoiceForContractProducts';\r\n private readonly _UpdateAccept: string = '/api/DepoCodes/Updatea';\r\n private readonly _UpdatePreinvoiceVoid: string = '/api/DepoCodes/UpdatePreinvoiceVoid';\r\n private readonly _UpdateProductSupliesDealerUrl: string = '/api/ProductSupliesDealers/UpdateProductSupliesDealer';\r\n private readonly _VoidAccept: string = '/api/DepoCodes/Updateb';\r\n private readonly _UpdateAcceptContract: string = '/api/SaleNewContracts/Updateca';\r\n private readonly _Updatechangestatus: string = '/api/SaleNewContracts/changestatus';\r\n private readonly _VoidAcceptContract: string = '/api/SaleNewContracts/Updatecb';\r\n private readonly _HesabKindList: string = '/api/HesabKindBanks';\r\n private readonly _SaleBankAccountList: string = '/api/SaleBankAccounts/BankAccount';\r\n private readonly _SaleLoadingSelcetForScannersList: string = '/api/SaleLoadingSelcetForScanners/GetLoading';\r\n private readonly _AllowInsertSaleRecepitByRSerial: string = '/api/SaleSubReceipts/AllowInsertSaleRecepitByRSerial';\r\n private readonly _PubCarKindsList: string = '/api/PubCarKinds';\r\n private readonly _PubCarsList: string = '/api/PubCars';\r\n private readonly _StoreList: string = '/api/Depos11';\r\n private readonly _TbiInstallments: string = '/api/Tbl_Installments';\r\n private readonly _GetTbl_Installments: string = '/api/Tbl_Installments/GetTbl_Installments';\r\n private readonly _GetRequestRevertFromSale: string = '/api/DepoRevertToDepoCustomers/GetRevertByDealerCode';\r\n private readonly _GetUpdateNationalCode: string = '/api/CustomerClubs/UpdateNational/';\r\n private readonly _GetDepoViewDescription: string = '/api/DepoCodes/GetDepoViewDesc/';\r\n private readonly _GetDepoReverToDepoes: string = '/api/DepoRevertToDepoes/GetDepoRevertToDepo';\r\n private readonly _GetDepoRevertToDepoDetailBarcode: string = '/api/DepoRevertToDepoes/DepoRevertToDepoDetailBarcode';\r\n private readonly _PostDepoReverToDepoes: string = '/api/DepoRevertToDepoes/';\r\n private readonly _GetDepoUserSelectsAllSite: string = '/api/DepoCodes/GetDepoUserSelectsAllSite/';\r\n private readonly _GetDepoUnitUserSelect: string = '/api/DepoCodes/GetDepoUnitUserSelect/';\r\n private readonly _GetSaleSelectAllLoadedCountRegist: string = '/api/DepoCodes/GetSaleSelectAllLoadedCountRegist';\r\n private readonly _CustomerClubList: string = '/api/CustomerClubs';\r\n private readonly _HesabSanads: string = '/api/HesabSanads';\r\n private readonly _GetSalePartitions: string = '/api/SalePartitions';\r\n private readonly _GetDepoCodes: string = '/api/DepoCodes';\r\n private readonly _GetNotAccessSalePartions: string = '/api/SalePartitions/GetNotAccessSalePartions';\r\n private readonly _GetAccessSalePartions: string = '/api/SalePartitions/GetAccessSalePartions';\r\n private readonly _PostAccessSalePartions: string = '/api/AccessSalePartions';\r\n private readonly _DeleteAccessSalePartions: string = '/api/AccessSalePartions/DeleteAccessSalePartion';\r\n private readonly _GetSaleSelectAllLoadedCountRegistDetailUrl: string = '/api/DepoCodes/GetSaleSelectAllLoadedCountRegistDetail';\r\n\r\n\r\n get GetDepoTarazNewResult() {\r\n return this.configurations.baseUrl + this._GetDepoTarazNewResult;\r\n }\r\n\r\n get GetSaleSelectAllLoadedCountRegistDetailUrl() {\r\n return this.configurations.baseUrl + this._GetSaleSelectAllLoadedCountRegistDetailUrl;\r\n }\r\n\r\n get GetDepoTarazNewResult2() {\r\n return this.configurations.baseUrl + this._GetDepoTarazNewResult2;\r\n }\r\n\r\n get GetDepoCodeDealerCodeUrl() {\r\n return this.configurations.baseUrl + this._GetDepoCodeDealerCodeUrl;\r\n }\r\n\r\n get SaleInvoicesInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleInvoicesInsertUrl;\r\n }\r\n\r\n get SaleInvoiceDetailsInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleInvoiceDetailsInsertUrl;\r\n }\r\n\r\n get UpdateNationalInsertUrl() {\r\n return this.configurations.baseUrl + this._UpdateNationalInsertUrl;\r\n }\r\n\r\n get GetCustomerClubUrl() {\r\n return this.configurations.baseUrl + this._GetCustomerClub;\r\n }\r\n\r\n get GetInvoiceReportSiteUrl() {\r\n return this.configurations.baseUrl + this._GetInvoiceReportSite;\r\n }\r\n\r\n get getDealerSaleGroupResultsMethodUrl() {\r\n return this.configurations.baseUrl + this._getDealerSaleGroupResultsMethod;\r\n }\r\n\r\n get GetDealerSaleResultsMethodUrl() {\r\n return this.configurations.baseUrl + this._GetDealerSaleResultsMethod;\r\n }\r\n\r\n get GetProductSupliesDealerUrl() {\r\n return this.configurations.baseUrl + this._GetProductSupliesDealerUrl;\r\n }\r\n\r\n get GetProductSupliesDealerImageUrl() {\r\n return this.configurations.baseUrl + this._GetProductSupliesDealerImageUrl;\r\n }\r\n\r\n get GetProductSupliesDealerFileImageUrl() {\r\n return this.configurations.baseUrl + this._GetProductSupliesDealerFileImageUrl;\r\n }\r\n\r\n get GetProductSupliesDealerfromSupImageUrl() {\r\n return this.configurations.baseUrl + this._GetProductSupliesDealerImageUrlfromsup;\r\n }\r\n\r\n get GetDirectory() {\r\n return this.configurations.baseUrl + this._GetDirectory;\r\n }\r\n\r\n get GetOrdernum() {\r\n return this.configurations.baseUrl + this._GetOrdernum;\r\n }\r\n\r\n get GetAcceptContract() {\r\n return this.configurations.baseUrl + this._GetAcceptContract;\r\n }\r\n\r\n get GetDepoRecieptTemporaryBarCode() {\r\n return this.configurations.baseUrl + this._GetDepoRecieptTemporaryBarCode;\r\n }\r\n\r\n get GetDepoRecieptTemporaryBarCodeCheckSerialurl() {\r\n return this.configurations.baseUrl + this._GetDepoRecieptTemporaryBarCodeCheckSerialurl;\r\n }\r\n\r\n get GetProductCodeWithBarcodeurl() {\r\n return this.configurations.baseUrl + this._GetProductCodeWithBarcodeurl;\r\n }\r\n\r\n get GetProductCodeWithProductCodeurl() {\r\n return this.configurations.baseUrl + this._GetProductCodeWithProductCodeurl;\r\n }\r\n\r\n get saveCustomerClubUrl() {\r\n return this.configurations.baseUrl + this._saveCustomerClubUrl;\r\n }\r\n\r\n get GetRepresentCode() {\r\n return this.configurations.baseUrl + this._GetRepresentCode;\r\n }\r\n\r\n get saveAddressUrl() {\r\n return this.configurations.baseUrl + this._saveAddressUrl;\r\n }\r\n\r\n get GetcheckDepoRecieptPermanentURL() {\r\n return this.configurations.baseUrl + this._GetcheckDepoRecieptPermanentURL;\r\n }\r\n\r\n get RevertDetailRepeateurl() {\r\n return this.configurations.baseUrl + this._RevertDetailRepeateurl;\r\n }\r\n\r\n get SupliesDealerListurl() {\r\n return this.configurations.baseUrl + this._SupliesDealerListurl;\r\n }\r\n\r\n get SalePriceKindsurl() {\r\n return this.configurations.baseUrl + this._SalePriceKindsurl;\r\n }\r\n\r\n get SalePriceKind_SupliesDealerurl() {\r\n return this.configurations.baseUrl + this._SalePriceKind_SupliesDealer;\r\n }\r\n\r\n get DepoAssignmentProductBarCodesUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignmentProductBarCodesUrl;\r\n }\r\n\r\n get GetDepoRecieptPermanentsExist() {\r\n return this.configurations.baseUrl + this._GetDepoRecieptPermanentsExist;\r\n };\r\n\r\n get GetTaxPriceTotalUrl() {\r\n return this.configurations.baseUrl + this._GetTaxPriceTotalUrl;\r\n }\r\n\r\n get GetDepoRecieptTemporaryDetail() {\r\n return this.configurations.baseUrl + this._GetDepoRecieptTemporaryDetail;\r\n }\r\n\r\n get GetSerialStatue() {\r\n return this.configurations.baseUrl + this._GetSerialStatue;\r\n }\r\n\r\n get GetCheckExistBarCode() {\r\n return this.configurations.baseUrl + this._GetCheckExistBarCode;\r\n }\r\n\r\n get GetNewCodeDepoRecieptPermanenturl() {\r\n return this.configurations.baseUrl + this._GetNewCodeDepoRecieptPermanentUrl;\r\n }\r\n\r\n get GetLoadingDetail() {\r\n return this.configurations.baseUrl + this._GetLoadingDetail;\r\n }\r\n\r\n get GetNewCodeLoadingurl() {\r\n return this.configurations.baseUrl + this._GetNewCodeLoading;\r\n }\r\n\r\n get NewAssignmentLoading() {\r\n return this.configurations.baseUrl + this._NewAssignmentProducts;\r\n }\r\n\r\n get NewAssignmentLoadingNextAccept() {\r\n return this.configurations.baseUrl + this._NewAssignmentProductsNextAccept;\r\n }\r\n\r\n get NewPreInvoice() {\r\n return this.configurations.baseUrl + this._NewPreInvoice;\r\n }\r\n\r\n get InsertNewPreInvoice() {\r\n return this.configurations.baseUrl + this._InsertNewPreInvoice;\r\n }\r\n\r\n get NewSaleOrder() {\r\n return this.configurations.baseUrl + this._NewSaleOrder;\r\n }\r\n\r\n get NewSaleSendProduct() {\r\n return this.configurations.baseUrl + this._NewSaleSendProduct;\r\n }\r\n\r\n get NewSaleLoadingCommand() {\r\n return this.configurations.baseUrl + this._NewSaleLoadingCommand;\r\n }\r\n\r\n get NewAssignmentLoadingNextPayment() {\r\n return this.configurations.baseUrl + this._NewAssignmentProductsNextPayment;\r\n }\r\n\r\n get NewAssignmentLoadingNextSendProduct() {\r\n return this.configurations.baseUrl + this._NewAssignmentLoadingNextSendProduct;\r\n }\r\n\r\n get CreateContractForPerInvoiceProductsurl() {\r\n return this.configurations.baseUrl + this._CreateContractForPerInvoiceProducts;\r\n }\r\n\r\n get GetNewCodeassignmentLoading() {\r\n return this.configurations.baseUrl + this._GetNewCodeassignmentLoading;\r\n }\r\n\r\n get GetGetDapCodeProductLoading() {\r\n return this.configurations.baseUrl + this._GetGetDapCodeProductLoading;\r\n }\r\n\r\n get GetCodeSPICode() {\r\n return this.configurations.baseUrl + this._GetCodeSPICode;\r\n }\r\n\r\n get GetDepoRecieptTemporaryNewDetail() {\r\n return this.configurations.baseUrl + this._GetDepoRecieptTemporaryNewDetail;\r\n }\r\n\r\n get GetRNum() {\r\n return this.configurations.baseUrl + this._GetRNum;\r\n }\r\n\r\n get TemprorySerialsGetUrl() {\r\n return this.configurations.baseUrl + this._TemprorySerialsGetUrl;\r\n }\r\n\r\n get DeleteTemproryUrl() {\r\n return this.configurations.baseUrl + this._DeleteTemproryUrl;\r\n }\r\n\r\n get AddressCustomerUrl() {\r\n return this.configurations.baseUrl + this._AddressCustomerUrl;\r\n }\r\n\r\n get GetLastSerialUrl() {\r\n return this.configurations.baseUrl + this._GetLastSerialUrl;\r\n }\r\n\r\n get SaleLoadingSelcetForScannersList() {\r\n return this.configurations.baseUrl + this._SaleLoadingSelcetForScannersList;\r\n }\r\n\r\n get SaleSubSendProductsInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleSubSendProductsInsertUrl;\r\n }\r\n\r\n get SaleSubLoadingCommandsInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleSubLoadingCommandsInsertUrl;\r\n }\r\n\r\n get SaleSubOrdersUrl() {\r\n return this.configurations.baseUrl + this._SaleSubOrdersUrl;\r\n }\r\n\r\n get GetStatusNumberUrl() {\r\n return this.configurations.baseUrl + this._GetStatusNumberUrl;\r\n }\r\n\r\n get GetSaleNewContract_PrintInvoiceUrl() {\r\n return this.configurations.baseUrl + this._GetSaleNewContract_PrintInvoiceUrl;\r\n }\r\n\r\n get GetPreInvoiceProducttUrl() {\r\n return this.configurations.baseUrl + this._GetPreInvoiceProducttUrl;\r\n }\r\n\r\n get getPreInvoicetUrl() {\r\n return this.configurations.baseUrl + this._getPreInvoiceUrl;\r\n }\r\n\r\n get GetPreInvoicetUrl() {\r\n return this.configurations.baseUrl + this._GetPreInvoiceUrl;\r\n }\r\n\r\n get DeletePreInvoicetUrl() {\r\n return this.configurations.baseUrl + this._DeletePreInvoiceUrl;\r\n }\r\n\r\n get DeleteSendProductUrl() {\r\n return this.configurations.baseUrl + this._DeleteSendProductUrl;\r\n }\r\n\r\n get DeleteOrderUrl() {\r\n return this.configurations.baseUrl + this._DeleteOrderUrl;\r\n }\r\n\r\n get DeleteSaleLoadingCommandBarCodeUrl() {\r\n return this.configurations.baseUrl + this._DeleteSaleLoadingCommandBarCodeUrl;\r\n }\r\n\r\n get usersUrl() {\r\n return this.configurations.baseUrl + this._usersUrl;\r\n }\r\n\r\n get getUserUrl() {\r\n return this.configurations.baseUrl + this._getUserUrl;\r\n }\r\n\r\n get GetAllReport() {\r\n return this.configurations.baseUrl + this._GetAllReport;\r\n }\r\n\r\n get GetAllReportSite() {\r\n return this.configurations.baseUrl + this._GetAllReportSite;\r\n }\r\n\r\n get GetAllReportsettlement() {\r\n return this.configurations.baseUrl + this._GetAllReportsettlement;\r\n }\r\n\r\n get GetReceiptSettlementSimilar() {\r\n return this.configurations.baseUrl + this._GetReceiptSettlementSimilar;\r\n }\r\n\r\n get GetAllPreInvoiceSelectList() {\r\n return this.configurations.baseUrl + this._GetAllPreInvoiceSelectList;\r\n }\r\n\r\n get GetAllSerial() {\r\n return this.configurations.baseUrl + this._GetAllSerial;\r\n }\r\n\r\n get userByUserNameUrl() {\r\n return this.configurations.baseUrl + this._userByUserNameUrl;\r\n }\r\n\r\n get currentUserUrl() {\r\n return this.configurations.baseUrl + this._currentUserUrl;\r\n }\r\n\r\n get currentUserPreferencesUrl() {\r\n return this.configurations.baseUrl + this._currentUserPreferencesUrl;\r\n }\r\n\r\n get unblockUserUrl() {\r\n return this.configurations.baseUrl + this._unblockUserUrl;\r\n }\r\n\r\n get rolesUrl() {\r\n return this.configurations.baseUrl + this._rolesUrl;\r\n }\r\n\r\n get GetRemindWithVouchersUrl() {\r\n return this.configurations.baseUrl + this._GetRemindWithVouchersUrl;\r\n }\r\n\r\n get GetStatusAcceptUrl() {\r\n return this.configurations.baseUrl + this._GetStatusAcceptUrl;\r\n }\r\n\r\n get UpdateRequestInvoiceUrl() {\r\n return this.configurations.baseUrl + this._UpdateRequestInvoiceUrl;\r\n }\r\n\r\n get GetRequestInvoiceByGroupResultsUrl() {\r\n return this.configurations.baseUrl + this._GetRequestInvoiceByGroupResultsUrl;\r\n }\r\n\r\n get GetSupliesOrderNewsUrl() {\r\n return this.configurations.baseUrl + this._GetSupliesOrderNewsUrl;\r\n }\r\n\r\n get getGetReportDebtNewResultMethodUrl() {\r\n return this.configurations.baseUrl + this._getGetReportDebtNewResultMethodUrl;\r\n }\r\n\r\n get getGetReportDebtNewGroupResultMethodUrl() {\r\n return this.configurations.baseUrl + this._getGetReportDebtNewGroupResultMethodUrl;\r\n }\r\n\r\n get getGetReportDebtNewGroupResultMethodByInvoiceNumberUrl() {\r\n return this.configurations.baseUrl + this._getGetReportDebtNewGroupResultMethodByInvoiceNumberUrl;\r\n }\r\n\r\n get GetSupliesContractReportUrl() {\r\n return this.configurations.baseUrl + this._GetSupliesContractReportUrl;\r\n }\r\n\r\n get GetSupliesContractReportWithDealerCodeUrl() {\r\n return this.configurations.baseUrl + this._GetSupliesContractReportWithDealerCodeUrl;\r\n }\r\n\r\n get GetSupliesContractReportWithDealerCode_ProductCodeUrl() {\r\n return this.configurations.baseUrl + this._GetSupliesContractReportWithDealerCode_ProductCodeUrl;\r\n }\r\n\r\n get GetSupliesContractReportMoneySiteUrl() {\r\n return this.configurations.baseUrl + this._GetSupliesContractReportMoneySiteUrl;\r\n }\r\n\r\n get roleByRoleNameUrl() {\r\n return this.configurations.baseUrl + this._roleByRoleNameUrl;\r\n }\r\n\r\n get permissionsUrl() {\r\n return this.configurations.baseUrl + this._permissionsUrl;\r\n }\r\n\r\n get CMainCodeByUserId() {\r\n return this.configurations.baseUrl + this._CMainCodeByUserId;\r\n }\r\n\r\n get SDCodeByUserId() {\r\n return this.configurations.baseUrl + this._SDCodeByUserId;\r\n }\r\n\r\n get GetAssigneSalerUrl() {\r\n return this.configurations.baseUrl + this._GetAssigneSalerUrl;\r\n }\r\n\r\n get GetSBACodeUrl() {\r\n return this.configurations.baseUrl + this._GetSBACodeUrl;\r\n }\r\n\r\n get CsubCodeByUserId() {\r\n return this.configurations.baseUrl + this._CsubCodeByUserId;\r\n }\r\n\r\n get CheckExistReceiptUrl() {\r\n return this.configurations.baseUrl + this._CheckExistReceiptUrl;\r\n }\r\n\r\n get GetCustomerAddressUrl() {\r\n return this.configurations.baseUrl + this._GetCustomerAddressUrl;\r\n }\r\n\r\n get GetCountProductDealerCodeUrl() {\r\n return this.configurations.baseUrl + this._GetCountProductDealerCodeUrl;\r\n }\r\n\r\n get CheckSerialRevertUrl() {\r\n return this.configurations.baseUrl + this._CheckSerialRevertUrl;\r\n }\r\n\r\n get CheckExsitInvoiceAssUrl() {\r\n return this.configurations.baseUrl + this._CheckExsitInvoiceAssUrl;\r\n }\r\n\r\n get groupUrl() {\r\n return this.configurations.baseUrl + this._GroupUrl;\r\n }\r\n\r\n get GetGroupsNewUrl() {\r\n return this.configurations.baseUrl + this._GetGroupsNewUrl;\r\n }\r\n\r\n get GetGroupswithcMainCode() {\r\n return this.configurations.baseUrl + this._GetGroupswithcMainCode;\r\n }\r\n\r\n get GetgroupswithSaleCustomerItemPriceKind() {\r\n return this.configurations.baseUrl + this._GetgroupswithSaleCustomerItemPriceKind;\r\n }\r\n\r\n get ProductSupliesDealersUrl() {\r\n return this.configurations.baseUrl + this._ProductSupliesDealersUrl;\r\n }\r\n\r\n get ProductSupliesDealerImagesUrl() {\r\n return this.configurations.baseUrl + this._ProductSupliesDealerImagesUrl;\r\n }\r\n\r\n get GetRequestInvoiceProductUrl() {\r\n return this.configurations.baseUrl + this._GetRequestInvoiceProductUrl;\r\n }\r\n\r\n get SaleCustomerUrl() {\r\n return this.configurations.baseUrl + this._SaleCustomerUrl;\r\n }\r\n\r\n get editCustomerUrl() {\r\n return this.configurations.baseUrl + this._editCustomerUrl;\r\n }\r\n\r\n get deleteCustomerUrl() {\r\n return this.configurations.baseUrl + this._deleteCustomerUrl;\r\n }\r\n\r\n get checkCustomerUrl() {\r\n return this.configurations.baseUrl + this._checkCustomerUrl;\r\n }\r\n\r\n get PubOstanUrl() {\r\n return this.configurations.baseUrl + this._PubOstanUrl;\r\n }\r\n\r\n get PubCitiesUrl() {\r\n return this.configurations.baseUrl + this._PubCitiesUrl;\r\n }\r\n\r\n get RequestInvoiceUrl() {\r\n return this.configurations.baseUrl + this._RequestInvoiceUrl;\r\n }\r\n\r\n get PostRequestInvoiceUrl() {\r\n return this.configurations.baseUrl + this._PostRequestInvoiceUrl;\r\n }\r\n\r\n get UpdateRevertInvoiceUrl() {\r\n return this.configurations.baseUrl + this._UpdateRevertInvoiceUrl;\r\n }\r\n\r\n get DepoProductUnitsUrl() {\r\n return this.configurations.baseUrl + this._DepoProductUnitsUrl;\r\n }\r\n\r\n get SalesUrl() {\r\n return this.configurations.baseUrl + this._SalesUrl;\r\n }\r\n\r\n get NameHeadUrl() {\r\n return this.configurations.baseUrl + this._NameHeadUrl;\r\n }\r\n\r\n get GroupNameUrl() {\r\n return this.configurations.baseUrl + this._GroupNameUrl;\r\n }\r\n\r\n get DepoCodeListUrl() {\r\n return this.configurations.baseUrl + this._DepoCodeListUrl;\r\n }\r\n\r\n get GetSaleSelectSubUrl() {\r\n return this.configurations.baseUrl + this._GetSaleSelectSubUrl;\r\n }\r\n\r\n get GetSaleSelectSubBarCodeUrl() {\r\n return this.configurations.baseUrl + this._GetSaleSelectSubBarCodeUrl;\r\n }\r\n\r\n get DeposListUrl() {\r\n return this.configurations.baseUrl + this._DeposListUrl;\r\n }\r\n\r\n get GetCustomerClubWithUrl() {\r\n return this.configurations.baseUrl + this._GetCustomerClubWithUrl;\r\n }\r\n\r\n get DeposListUrlOwner() {\r\n return this.configurations.baseUrl + this._DeposListUrlOwner;\r\n }\r\n\r\n get DepoListTarazUrl() {\r\n return this.configurations.baseUrl + this._DepoListTarazUrl;\r\n }\r\n\r\n get DepoTarazwithcomDetail() {\r\n return this.configurations.baseUrl + this._DepoTarazwithcomDetail;\r\n }\r\n\r\n get VirtualWarehouseInventory() {\r\n return this.configurations.baseUrl + this._VirtualWarehouseInventory;\r\n }\r\n\r\n\r\n get MethodGetDepoTarazwithcomDetailByDCCodeUrl() {\r\n return this.configurations.baseUrl + this._MethodGetDepoTarazwithcomDetailByDCCodeUrl;\r\n }\r\n\r\n get DepoTarazwithcomDetailBarcode() {\r\n return this.configurations.baseUrl + this._DepoTarazwithcomDetailBarcode;\r\n }\r\n\r\n get DepoTarazwithcomDetailSearchScan() {\r\n return this.configurations.baseUrl + this._DepoTarazwithcomDetailSearchScan;\r\n }\r\n\r\n get DepoTarazNewPivotDepos() {\r\n return this.configurations.baseUrl + this._DepoTarazNewPivotDepos;\r\n }\r\n\r\n get TarazDepoBaseUrl() {\r\n return this.configurations.baseUrl + this._TarazDepoBaseUrl;\r\n }\r\n\r\n get GetSaleBankAccountsUrl() {\r\n return this.configurations.baseUrl + this._GetSaleBankAccountsUrl;\r\n }\r\n\r\n get GetSubSendProductUrl() {\r\n return this.configurations.baseUrl + this._GetSubSendProductUrl;\r\n }\r\n\r\n get SaleReceiptChekHesabSanadUrl() {\r\n return this.configurations.baseUrl + this._SaleReceiptChekHesabSanadUrl;\r\n }\r\n\r\n get GetAcceptContractCheckUrl() {\r\n return this.configurations.baseUrl + this._GetAcceptContractCheckUrl;\r\n }\r\n\r\n get GetSaleSubReceiptSelectUrl() {\r\n return this.configurations.baseUrl + this._GetSaleSubReceiptSelectUrl;\r\n }\r\n\r\n get GetAssProductListUrl() {\r\n return this.configurations.baseUrl + this._GetAssProductListUrl;\r\n }\r\n\r\n get GetDepoRecieptTemporaryListUrl() {\r\n return this.configurations.baseUrl + this._GetDepoRecieptTemporaryListUrl;\r\n }\r\n\r\n get GetDepoAssignmentWithSerialListUrl() {\r\n return this.configurations.baseUrl + this._GetDepoAssignmentWithSerialListUrl;\r\n }\r\n\r\n get GetSaleLoadingUrl() {\r\n return this.configurations.baseUrl + this._GetSaleLoadingUrl;\r\n }\r\n\r\n get GetDepoByCommissionMoneyUrl() {\r\n return this.configurations.baseUrl + this._GetDepoByCommissionMoneyUrl;\r\n }\r\n\r\n get GetDepoByCommissionMoneyAcceptUrl() {\r\n return this.configurations.baseUrl + this._GetDepoByCommissionMoneyAcceptUrl;\r\n }\r\n\r\n get GetDepoByCommissionMoneyAcceptByDCDealerCodeUrl() {\r\n return this.configurations.baseUrl + this._GetDepoByCommissionMoneyAcceptByDCDealerCodeUrl;\r\n }\r\n\r\n get GetDepoAssignmentByAcceptUrl() {\r\n return this.configurations.baseUrl + this._GetDepoAssignmentByAcceptUrl;\r\n }\r\n\r\n get PreInvoiceUrl() {\r\n return this.configurations.baseUrl + this._PreInvoiceUrl;\r\n }\r\n\r\n get ContractProductUrl() {\r\n return this.configurations.baseUrl + this._ContractProductUrl;\r\n }\r\n\r\n get PreInvoiceInsertUrl() {\r\n return this.configurations.baseUrl + this._PreInvoiceInsertUrl;\r\n }\r\n\r\n get DepoRevertToDepoCustomerDetailInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoRevertToDepoCustomerDetailInsertUrl;\r\n }\r\n\r\n get GetNewCodeUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeUrl;\r\n }\r\n\r\n get GetSDCodeUrl() {\r\n return this.configurations.baseUrl + this._GetSDCodeUrl;\r\n }\r\n\r\n get GetNewCarsCodeUrl() {\r\n return this.configurations.baseUrl + this._GetNewCarsCodeUrl;\r\n }\r\n\r\n get GetNewDriverCodeUrl() {\r\n return this.configurations.baseUrl + this._GetNewDriverCodeUrl;\r\n }\r\n\r\n get GetNewCodeOrderUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeOrderUrl;\r\n }\r\n\r\n get GetNewCodeDepoRecieptTemporaryUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeDepoRecieptTemporaryUrl;\r\n }\r\n\r\n get GetGetNewCodeRequestInvoiceUrl() {\r\n return this.configurations.baseUrl + this._GetGetNewCodeRequestInvoiceUrl;\r\n }\r\n\r\n get GetOOrderNumUrl() {\r\n return this.configurations.baseUrl + this._GetOOrderNumUrl;\r\n }\r\n\r\n get GetNewCodesspUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodesspUrl;\r\n }\r\n\r\n get GetNewCodeDepoAssignmentUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeDepoAssignmentUrl;\r\n }\r\n\r\n get GetNewCodeCustomerClubUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeCustomerClubUrl;\r\n }\r\n\r\n get GetNewCodeInvoiceUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeInvoiceUrl;\r\n }\r\n\r\n get GetSaleContractToInvoiceSelectUrl() {\r\n return this.configurations.baseUrl + this._GetSaleContractToInvoiceSelectUrl;\r\n }\r\n\r\n get SaleNewContractSelectListUrl() {\r\n return this.configurations.baseUrl + this._SaleNewContractSelectListUrl;\r\n }\r\n\r\n get GetNewCodeReciptUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeReciptUrl;\r\n }\r\n\r\n get GetNewCodeRevertUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeRevertUrl;\r\n }\r\n\r\n get GetNewCodeContractUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodeContractUrl;\r\n }\r\n\r\n get GetNewCodesalepriceUrl() {\r\n return this.configurations.baseUrl + this._GetNewCodesalepriceUrl;\r\n }\r\n\r\n get SalePreInvoiceForContractsInsertUrl() {\r\n return this.configurations.baseUrl + this._SalePreInvoiceForContractsInsertUrl;\r\n }\r\n\r\n get SalePreInvoiceForContractProductInsertUrl() {\r\n return this.configurations.baseUrl + this._SalePreInvoiceForContractProductInsertUrl;\r\n }\r\n\r\n get UpdateAccept() {\r\n return this.configurations.baseUrl + this._UpdateAccept;\r\n }\r\n\r\n get UpdatePreinvoiceVoid() {\r\n return this.configurations.baseUrl + this._UpdatePreinvoiceVoid;\r\n }\r\n\r\n get UpdateProductSupliesDealerUrl() {\r\n return this.configurations.baseUrl + this._UpdateProductSupliesDealerUrl;\r\n }\r\n\r\n get VoidAccept() {\r\n return this.configurations.baseUrl + this._VoidAccept;\r\n }\r\n\r\n get UpdateAcceptContract() {\r\n return this.configurations.baseUrl + this._UpdateAcceptContract;\r\n }\r\n\r\n get Updatechangestatus() {\r\n return this.configurations.baseUrl + this._Updatechangestatus;\r\n }\r\n\r\n get VoidAcceptContract() {\r\n return this.configurations.baseUrl + this._VoidAcceptContract;\r\n }\r\n\r\n get HesabKindList() {\r\n return this.configurations.baseUrl + this._HesabKindList;\r\n }\r\n\r\n get SaleBankAccountList() {\r\n return this.configurations.baseUrl + this._SaleBankAccountList;\r\n }\r\n\r\n get AllowInsertSaleRecepitByRSerial() {\r\n return this.configurations.baseUrl + this._AllowInsertSaleRecepitByRSerial;\r\n }\r\n\r\n get PubCarKindsList() {\r\n return this.configurations.baseUrl + this._PubCarKindsList;\r\n }\r\n\r\n get PubCarsList() {\r\n return this.configurations.baseUrl + this._PubCarsList;\r\n }\r\n\r\n get PubDriverListUrl() {\r\n return this.configurations.baseUrl + this._PubDriverListUrl;\r\n }\r\n\r\n get GetCarsPropertiesUrl() {\r\n return this.configurations.baseUrl + this._GetCarsPropertiesUrl;\r\n }\r\n\r\n get GetPubDriversUrl() {\r\n return this.configurations.baseUrl + this._GetPubDriversUrl;\r\n }\r\n\r\n get GetRequestAssignmentDetailSelectUrl() {\r\n return this.configurations.baseUrl + this._GetRequestAssignmentDetailSelectUrl;\r\n }\r\n\r\n get SaleNewContractsInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleNewContractsInsertUrl;\r\n }\r\n\r\n get SaleNewContractsGet() {\r\n return this.configurations.baseUrl + this._SaleNewContractsGet;\r\n }\r\n\r\n get SaleOrdersInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleOrdersInsertUrl;\r\n }\r\n\r\n get CustomerClubsInsertUrl() {\r\n return this.configurations.baseUrl + this._CustomerClubsInsertUrl;\r\n }\r\n\r\n get CustomerSalePreInvoicesInsertUrl() {\r\n return this.configurations.baseUrl + this._CustomerSalePreInvoicesInsertUrl;\r\n }\r\n\r\n get PubCarsInsertUrl() {\r\n return this.configurations.baseUrl + this._PubCarsInsertUrl;\r\n }\r\n\r\n get PubDriverInsertUrl() {\r\n return this.configurations.baseUrl + this._PubDriverInsertUrl;\r\n }\r\n\r\n get ContractProductInsertUrl() {\r\n return this.configurations.baseUrl + this._ContractProductInsertUrl;\r\n }\r\n\r\n get SupliesDealerMoneysInsertUrl() {\r\n return this.configurations.baseUrl + this._SupliesDealerMoneysInsertUrl;\r\n }\r\n\r\n get SupliesOrderRelationRecieptsInsertUrl() {\r\n return this.configurations.baseUrl + this._SupliesOrderRelationRecieptsInsertUrl;\r\n }\r\n\r\n get DepoRevertToDepoCustomersUrl() {\r\n return this.configurations.baseUrl + this._DepoRevertToDepoCustomersUrl;\r\n }\r\n\r\n get DepoAssignmentProductInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignmentProductInsertUrl;\r\n }\r\n\r\n get RequestInvoicesInsertUrl() {\r\n return this.configurations.baseUrl + this._RequestInvoicesInsertUrl;\r\n }\r\n\r\n get RequestInvoiceProductsInsertUrl() {\r\n return this.configurations.baseUrl + this._RequestInvoiceProductsInsertUrl;\r\n }\r\n\r\n get RequestInvoiceProductBarCodesInsertUrl() {\r\n return this.configurations.baseUrl + this._RequestInvoiceProductBarCodesInsertUrl;\r\n }\r\n\r\n get GetSuppliersSaleByWhereResultMethod() {\r\n return this.configurations.baseUrl + this._GetSuppliersSaleByWhereResultMethod;\r\n }\r\n\r\n get getSuppliersSaleByWhereGroupResultsUrl() {\r\n return this.configurations.baseUrl + this._getSuppliersSaleByWhereGroupResultsUrl;\r\n }\r\n\r\n get AdjustmentsInsertUrl() {\r\n return this.configurations.baseUrl + this._AdjustmentsInsertUrl;\r\n }\r\n\r\n get GetAimsetContractUrl() {\r\n return this.configurations.baseUrl + this._GetAimsetContractUrl;\r\n }\r\n\r\n get GetOffsetContractUrl() {\r\n return this.configurations.baseUrl + this._GetOffsetContractUrl;\r\n }\r\n\r\n get SaleSubReceiptInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleSubReceiptInsertUrl;\r\n }\r\n\r\n get SaleSubReceiptsInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleSubReceiptsInsertUrl;\r\n }\r\n\r\n get SaleSendProductsInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleSendProductsInsertUrl;\r\n }\r\n\r\n get DepoCodeInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoCodeInsertUrl;\r\n }\r\n\r\n get DepoRecieptPermanentBarCodesInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoRecieptPermanentBarCodesInsertUrl;\r\n }\r\n\r\n get DateUrl() {\r\n return this.configurations.baseUrl + this._dateUrl;\r\n }\r\n\r\n get StoreList() {\r\n return this.configurations.baseUrl + this._StoreList;\r\n }\r\n\r\n get Installments() {\r\n return this.configurations.baseUrl + this._TbiInstallments;\r\n }\r\n\r\n get GetTbl_Installments() {\r\n return this.configurations.baseUrl + this._GetTbl_Installments;\r\n }\r\n\r\n get GetRequestRevertFromSale() {\r\n return this.configurations.baseUrl + this._GetRequestRevertFromSale;\r\n }\r\n\r\n get GetUpdateNationalCode() {\r\n return this.configurations.baseUrl + this._GetUpdateNationalCode;\r\n }\r\n\r\n get GetDepoViewDescription() {\r\n return this.configurations.baseUrl + this._GetDepoViewDescription;\r\n }\r\n\r\n get GetDepoReverToDepoes() {\r\n return this.configurations.baseUrl + this._GetDepoReverToDepoes;\r\n }\r\n\r\n get GetDepoRevertToDepoDetailBarcode() {\r\n return this.configurations.baseUrl + this._GetDepoRevertToDepoDetailBarcode;\r\n }\r\n\r\n get PostDepoReverToDepoes() {\r\n return this.configurations.baseUrl + this._PostDepoReverToDepoes;\r\n }\r\n\r\n get GetDepoUserSelectsAllSite() {\r\n return this.configurations.baseUrl + this._GetDepoUserSelectsAllSite;\r\n }\r\n\r\n get GetDepoUnitUserSelect() {\r\n return this.configurations.baseUrl + this._GetDepoUnitUserSelect;\r\n }\r\n\r\n get GetSaleSelectAllLoadedCountRegist() {\r\n return this.configurations.baseUrl + this._GetSaleSelectAllLoadedCountRegist;\r\n }\r\n\r\n get GetCustomerClubList() {\r\n return this.configurations.baseUrl + this._CustomerClubList;\r\n }\r\n\r\n get PostHesabSanads() {\r\n return this.configurations.baseUrl + this._HesabSanads;\r\n }\r\n\r\n get GetSalePartitions() {\r\n return this.configurations.baseUrl + this._GetSalePartitions;\r\n }\r\n\r\n get GetDepoCodes() {\r\n return this.configurations.baseUrl + this._GetDepoCodes;\r\n }\r\n\r\n get GetNotAccessSalePartions() {\r\n return this.configurations.baseUrl + this._GetNotAccessSalePartions;\r\n }\r\n\r\n get GetAccessSalePartions() {\r\n return this.configurations.baseUrl + this._GetAccessSalePartions;\r\n }\r\n\r\n get PostAccessSalePartions() {\r\n return this.configurations.baseUrl + this._PostAccessSalePartions;\r\n }\r\n\r\n get DeleteAccessSalePartions() {\r\n return this.configurations.baseUrl + this._DeleteAccessSalePartions;\r\n }\r\n\r\n\r\n constructor(private configurations: ConfigurationService, http: HttpClient, authService: AuthService) {\r\n super(http, authService);\r\n }\r\n\r\n getUserEndpoint(userId?: string): Observable {\r\n const endpointUrl = userId ? `${this.usersUrl}/${userId}` : this.currentUserUrl;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUserEndpoint(userId));\r\n }));\r\n }\r\n\r\n getCustomerClubEndPoint(CmainCode?: number, CSubCode?: number) {\r\n const endpointUrl = `${this.GetCustomerClubUrl}/${CmainCode}/${CSubCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getCustomerClubEndPoint(CmainCode, CSubCode));\r\n }));\r\n }\r\n\r\n GetSaleSelectAllLoadedCountRegistDetailEndPoint(LoadNumber?: number, Year?: number) {\r\n const endpointUrl = `${this.GetSaleSelectAllLoadedCountRegistDetailUrl}/${LoadNumber}/${Year}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleSelectAllLoadedCountRegistDetailEndPoint(LoadNumber, Year));\r\n }));\r\n }\r\n\r\n GetInvoiceReportSiteEndPoint(ProductCode?: string, FromDate?: string, ToDate?: string, kind?: number, showVoid?: number, statuse?: number, DCDealerCode?: string) {\r\n const endpointUrl = `${this.GetInvoiceReportSiteUrl}/${ProductCode}/${FromDate}/${ToDate}/${kind}/${showVoid}/${statuse}/${DCDealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetInvoiceReportSiteEndPoint(ProductCode, FromDate, ToDate, kind, showVoid, statuse, DCDealerCode));\r\n }));\r\n }\r\n\r\n getUser_Endpoint(userId: string): Observable {\r\n const endpointUrl = `${this.getUserUrl}/${userId}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUser_Endpoint(userId));\r\n }));\r\n }\r\n\r\n GetSuppliersSaleByWhereResultMethodEndPoint(SODealerCode?: string): Observable {\r\n const endpointUrl = `${this.GetSuppliersSaleByWhereResultMethod}/${SODealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSuppliersSaleByWhereResultMethodEndPoint(SODealerCode));\r\n }));\r\n\r\n }\r\n\r\n getSuppliersSaleByWhereGroupEndPoint(SODealerCode?: string): Observable {\r\n const endpointUrl = `${this.getSuppliersSaleByWhereGroupResultsUrl}/${SODealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getSuppliersSaleByWhereGroupEndPoint(SODealerCode));\r\n }));\r\n\r\n }\r\n\r\n GetRepresentCodeEndpoint(HTGCode?: number): Observable {\r\n const endpointUrl = `${this.GetRepresentCode}/${HTGCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetRepresentCodeEndpoint(HTGCode));\r\n }));\r\n }\r\n\r\n GetcheckDepoRecieptPermanentEndpoint(DRPYear?: number, DRPCode?: number, DRPDepCode?: string): Observable {\r\n const endpointUrl = `${this.GetcheckDepoRecieptPermanentURL}/${DRPYear}/${DRPCode}/${DRPDepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetcheckDepoRecieptPermanentEndpoint(DRPYear, DRPCode, DRPDepCode));\r\n }));\r\n }\r\n\r\n RevertDetailRepeatEndpoint(DRTDCDYear?: number, DRTDCDCode?: number, DRTDCDDepCode?: string, DRTDCDDCCode?: string): Observable {\r\n const endpointUrl = `${this.RevertDetailRepeateurl}/${DRTDCDYear}/${DRTDCDCode}/${DRTDCDDepCode}/${DRTDCDDCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.RevertDetailRepeatEndpoint(DRTDCDYear, DRTDCDCode, DRTDCDDepCode, DRTDCDDCCode));\r\n }));\r\n }\r\n\r\n SupliesDealerListEndpoint(): Observable {\r\n const endpointUrl = `${this.SupliesDealerListurl}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SupliesDealerListEndpoint());\r\n }));\r\n }\r\n\r\n SalePriceKindsEndpoint(): Observable {\r\n const endpointUrl = `${this.SalePriceKindsurl}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SalePriceKindsEndpoint());\r\n }));\r\n }\r\n\r\n SalePriceKind_SupliesDealerEndpoint(SDCode): Observable {\r\n const endpointUrl = `${this.SalePriceKind_SupliesDealerurl}/${SDCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SalePriceKind_SupliesDealerEndpoint(SDCode));\r\n }));\r\n }\r\n\r\n getremindWithVouchersEndpoint(year?: number, partCode?: number, code?: number, status_ID?: string, NCCode?: number, CustomerCode?: number, SubCustomerCode?: number): Observable {\r\n const endpointUrl = `${this.GetRemindWithVouchersUrl}/${year}/${partCode}/${code}/${status_ID}/${NCCode}/${CustomerCode}/${SubCustomerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getremindWithVouchersEndpoint(year, partCode, code, status_ID, NCCode, CustomerCode, SubCustomerCode));\r\n }));\r\n }\r\n\r\n GetStatusAcceptEndpoint(NCYear?: number, NCPartCode?: number, NCCode?: number): Observable {\r\n const endpointUrl = `${this.GetStatusAcceptUrl}/${NCYear}/${NCPartCode}/${NCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetStatusAcceptEndpoint(NCYear, NCPartCode, NCCode));\r\n }));\r\n }\r\n\r\n UpdateRequestInvoiceEndpoint(REQYear?: number, REQCode?: number, REQDealercode?: string, REQTax?: number, REQAllMoney?: number, REQInvoiceNumber?: number): Observable {\r\n const endpointUrl = `${this.UpdateRequestInvoiceUrl}/${REQYear}/${REQCode}/${REQDealercode}/${REQTax}/${REQAllMoney}/${REQInvoiceNumber}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.UpdateRequestInvoiceEndpoint(REQYear, REQCode, REQDealercode, REQTax, REQAllMoney, REQInvoiceNumber));\r\n }));\r\n }\r\n\r\n GetRequestInvoiceByGroupResultEndPoint(REQDealercode: string, requestType: number): Observable {\r\n const endpointUrl = `${this.GetRequestInvoiceByGroupResultsUrl}/${REQDealercode}/${requestType}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetRequestInvoiceByGroupResultEndPoint(REQDealercode, requestType));\r\n }));\r\n }\r\n\r\n getDealerSaleGroupResultsMethodEndPoint(DCDealerCode?: string): Observable {\r\n const endpointUrl = `${this.getDealerSaleGroupResultsMethodUrl}/${DCDealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDealerSaleGroupResultsMethodEndPoint(DCDealerCode));\r\n }));\r\n }\r\n\r\n GetDealerSaleResultsMethodEndpoint(DCDealerCode?: string): Observable {\r\n const endpointUrl = `${this.GetDealerSaleResultsMethodUrl}/${DCDealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDealerSaleResultsMethodEndpoint(DCDealerCode));\r\n }));\r\n }\r\n\r\n GetSupliesOrderNewsEndpoint(sOYear?: number, sOUnitBuy?: number, sOKindBuy?: boolean): Observable {\r\n const endpointUrl = `${this.GetSupliesOrderNewsUrl}/${sOYear}/${sOUnitBuy}/${sOKindBuy}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSupliesOrderNewsEndpoint(sOYear, sOUnitBuy, sOKindBuy));\r\n }));\r\n }\r\n\r\n getGetReportDebtNewResultMethodEndpoint(SODealerCode?: string): Observable {\r\n const endpointUrl = `${this.getGetReportDebtNewResultMethodUrl}/${SODealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getGetReportDebtNewResultMethodEndpoint(SODealerCode));\r\n }));\r\n }\r\n\r\n getGetReportDebtNewGroupResultMethodEndpoint(): Observable {\r\n const endpointUrl = `${this.getGetReportDebtNewGroupResultMethodUrl}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getGetReportDebtNewGroupResultMethodEndpoint());\r\n }));\r\n }\r\n\r\n getGetReportDebtNewGroupResultMethodByInvoiceNumberEndpoint(REQInvoiceNumber?: number): Observable {\r\n const endpointUrl = `${this.getGetReportDebtNewGroupResultMethodByInvoiceNumberUrl}/${REQInvoiceNumber}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getGetReportDebtNewGroupResultMethodByInvoiceNumberEndpoint(REQInvoiceNumber));\r\n }));\r\n }\r\n\r\n GetSupliesContractReportEndpoint(PKCode?: number): Observable {\r\n const endpointUrl = `${this.GetSupliesContractReportUrl}/${PKCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSupliesContractReportEndpoint(PKCode));\r\n }));\r\n }\r\n\r\n GetSupliesContractReportEndpointWithDealerCode(PKCode?: number, SODealerCode?: string): Observable {\r\n const endpointUrl = `${this.GetSupliesContractReportWithDealerCodeUrl}/${PKCode}/${SODealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSupliesContractReportEndpointWithDealerCode(PKCode));\r\n }));\r\n }\r\n\r\n GetSupliesContractReportEndpointWithDealerCode_ProductCode(PKCode?: number, SODealerCode?: string, ProductCode?: string): Observable {\r\n const endpointUrl = `${this.GetSupliesContractReportWithDealerCode_ProductCodeUrl}/${PKCode}/${SODealerCode}/${ProductCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSupliesContractReportEndpointWithDealerCode_ProductCode(PKCode));\r\n }));\r\n }\r\n\r\n GetSupliesContractReportMoneySiteEndpoint(PKCode?: number, SODealerCode?: string): Observable {\r\n const endpointUrl = `${this.GetSupliesContractReportMoneySiteUrl}/${PKCode}/${SODealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSupliesContractReportMoneySiteEndpoint(PKCode, SODealerCode));\r\n }));\r\n }\r\n\r\n get saveCustomerUrl() {\r\n return this.configurations.baseUrl + this._saveCustomerUrl;\r\n }\r\n\r\n saveCustomerEndpoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.saveCustomerUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveCustomerEndpoint(customerObject));\r\n }));\r\n\r\n }\r\n\r\n get InsertRevertiUrl() {\r\n return this.configurations.baseUrl + this._InsertRevertiUrl;\r\n }\r\n\r\n get InsertHesabTafziliUrl() {\r\n return this.configurations.baseUrl + this._InsertHesabTafziliUrl;\r\n }\r\n\r\n InsertHesabTafziliEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.InsertHesabTafziliUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.InsertHesabTafziliEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoRevertToDepoCustomerDetailsEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.InsertRevertiUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoRevertToDepoCustomerDetailsEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n saveSalePreInvoiceForContractsEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SalePreInvoiceForContractsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSalePreInvoiceForContractsEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n saveSaleSendProductsEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleSendProductsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleSendProductsEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoCodesInsertEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoCodeInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoCodesInsertEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n SaveDepoRecieptPermanentBarCodesEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRecieptPermanentBarCodesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SaveDepoRecieptPermanentBarCodesEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n saveContrctPreInvoiceProduct(customerObject: any): Observable {\r\n return this.http.post(this.ContractProductInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveContrctPreInvoiceProduct(customerObject));\r\n }));\r\n }\r\n\r\n SupliesDealerMoneysInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.SupliesDealerMoneysInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SupliesDealerMoneysInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n SupliesOrderRelationRecieptsInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.SupliesOrderRelationRecieptsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SupliesOrderRelationRecieptsInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoRevertToDepoCustomersInsertEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRevertToDepoCustomersUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoRevertToDepoCustomersInsertEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n saveDepoAssigmentProduct(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignmentProductInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveDepoAssigmentProduct(customerObject));\r\n }));\r\n }\r\n\r\n RequestInvoicesInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.RequestInvoicesInsertUrl, JSON.stringify(customerObject), this.requestHeaders);\r\n }\r\n\r\n RequestInvoiceProductInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.RequestInvoiceProductsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.RequestInvoiceProductInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n RequestInvoiceProductBarCodesInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.RequestInvoiceProductBarCodesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.RequestInvoiceProductBarCodesInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n saveAdjustmentsEndpointUrl(customerObject: any): Observable {\r\n return this.http.post(this.AdjustmentsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveAdjustmentsEndpointUrl(customerObject));\r\n }));\r\n }\r\n\r\n get DepoAssignmentProductLoadingInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignmentProductLoadingInsertUrl;\r\n }\r\n\r\n saveDepoAssigmentProductLoadingEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignmentProductLoadingInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveDepoAssigmentProductLoadingEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n get DepoAssignmentProductDetailInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignmentProductDetailInsertUrl;\r\n }\r\n\r\n saveDepoAssignmentProductDetailEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignmentProductDetailInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveDepoAssignmentProductDetailEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n get ProductSupliesDealersInsertUrl() {\r\n return this.configurations.baseUrl + this._ProductSupliesDealersInsertUrl;\r\n }\r\n\r\n ProductSupliesDealersInsertEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.ProductSupliesDealersInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.ProductSupliesDealersInsertEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n get ProductSupliesDealersUpdateUrl() {\r\n return this.configurations.baseUrl + this._ProductSupliesDealersUpdateUrl;\r\n }\r\n\r\n ProductSupliesDealersUpdateEndpoint(CustomerObject: any): Observable {\r\n const endpointUrl = this.ProductSupliesDealersUpdateUrl;\r\n\r\n return this.http.put(endpointUrl, JSON.stringify(CustomerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.ProductSupliesDealersUpdateEndpoint(CustomerObject));\r\n }));\r\n }\r\n\r\n get ProductSupliesDealerImagesInsertUrl() {\r\n return this.configurations.baseUrl + this._ProductSupliesDealerImagesInsertUrl;\r\n }\r\n\r\n ProductSupliesDealerImagesInsertEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.ProductSupliesDealerImagesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.ProductSupliesDealerImagesInsertEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n ProductSupliesDealerImagesDeleteEndpoint(Procode): Observable {\r\n const endpointUrl = `${this.ProductSupliesDealerImagesInsertUrl}/${Procode}`;\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.ProductSupliesDealerImagesDeleteEndpoint(Procode));\r\n }));\r\n }\r\n\r\n get ProductSupliesDealerImagesDeleteUrl() {\r\n return this.configurations.baseUrl + this._ProductSupliesDealerImagesDeleteUrl;\r\n }\r\n\r\n ImagesDeleteEndpoint(ProName): Observable {\r\n const endpointUrl = `${this.ProductSupliesDealerImagesDeleteUrl}/${ProName}`;\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.ImagesDeleteEndpoint(ProName));\r\n }));\r\n }\r\n\r\n get ProductSupliesDealerImagesFolderInsertUrl() {\r\n return this.configurations.baseUrl + this._ProductSupliesDealerImagesFolderInsertUrl;\r\n }\r\n\r\n ProductSupliesDealerImagesFolderInsertEndpoint(customerObject: any, prodcode: number): Observable {\r\n const endpointUrl = `${this.ProductSupliesDealerImagesFolderInsertUrl}/${prodcode}`;\r\n return this.http.post(endpointUrl, customerObject, {reportProgress: true, observe: 'events'}).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.ProductSupliesDealerImagesFolderInsertEndpoint(customerObject, prodcode));\r\n }));\r\n }\r\n\r\n get DepoRecieptPermanentsUrl() {\r\n return this.configurations.baseUrl + this._DepoRecieptPermanentsUrl;\r\n }\r\n\r\n saveDepoRecieptPermanentsEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRecieptPermanentsUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveDepoRecieptPermanentsEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n get DepoRecieptPermanentDetailsUrl() {\r\n return this.configurations.baseUrl + this._DepoRecieptPermanentDetailsUrl;\r\n }\r\n\r\n saveDepoRecieptPermanentDetailsEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRecieptPermanentDetailsUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveDepoRecieptPermanentDetailsEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n saveSaleSubReceipt(customerObject: any): Observable {\r\n return this.http.post(this.SaleSubReceiptInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleSubReceipt(customerObject));\r\n }));\r\n\r\n }\r\n\r\n saveSaleSubReceipts(customerObject: any[]): Observable {\r\n return this.http.post(this.SaleSubReceiptsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleSubReceipt(customerObject));\r\n }));\r\n\r\n }\r\n\r\n get DepoRialReceiptInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoRialReceiptInsertUrl;\r\n }\r\n\r\n DepoRialReceiptInsertEndpoint(ReceiptObject: any): Observable {\r\n return this.http.post(this.DepoRialReceiptInsertUrl, JSON.stringify(ReceiptObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoRialReceiptInsertEndpoint(ReceiptObject));\r\n }));\r\n }\r\n\r\n get SaleLoadingCommandBarCodesInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleLoadingCommandBarCodesInsertUrl;\r\n }\r\n\r\n saveSaleLoadingCommandBarCodesEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleLoadingCommandBarCodesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleLoadingCommandBarCodesEndpoint(customerObject));\r\n }));\r\n\r\n }\r\n\r\n get SaleLoadingCommandBarCodesInsertPostArrayUrl() {\r\n return this.configurations.baseUrl + this._SaleLoadingCommandBarCodesInsertPostArrayUrl;\r\n }\r\n\r\n saveSaleLoadingCommandBarCodesPostArrayEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleLoadingCommandBarCodesInsertPostArrayUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleLoadingCommandBarCodesPostArrayEndpoint(customerObject));\r\n }));\r\n\r\n }\r\n\r\n get TemprorySerialsInsertUrl() {\r\n return this.configurations.baseUrl + this._TemprorySerialsInsertUrl;\r\n }\r\n\r\n saveTemprorySerialEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.TemprorySerialsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveTemprorySerialEndpoint(customerObject));\r\n }));\r\n\r\n }\r\n\r\n saveSaleNewContractsEndpoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.SaleNewContractsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleNewContractsEndpoint(customerObject));\r\n }));\r\n\r\n }\r\n\r\n saveSaleSubSendProductEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleSubSendProductsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleSubSendProductEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoAssignmentProductBarCodesEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignmentProductBarCodesUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoAssignmentProductBarCodesEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n saveSaleSubLoadingCommandsInsertUrlEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleSubLoadingCommandsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleSubLoadingCommandsInsertUrlEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n get SaleLoadingCommandsInsertUrl() {\r\n return this.configurations.baseUrl + this._SaleLoadingCommandsInsertUrl;\r\n }\r\n\r\n get SupliesDealerCommissionDetailsInsertUrl() {\r\n return this.configurations.baseUrl + this._SupliesDealerCommissionDetailsInsertUrl;\r\n }\r\n\r\n get DepoAssignmentsInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignmentsInsertUrl;\r\n }\r\n\r\n get DepoAssignmentDetailsInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignmentDetailsInsertUrl;\r\n }\r\n\r\n get DepoAssignmentBarCodesInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignmentBarCodesInsertUrl;\r\n }\r\n\r\n get DepoAssignment_RequestAssignmentInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoAssignment_RequestAssignmentInsertUrl;\r\n }\r\n\r\n get DepoRecieptTemporaryNewsInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoRecieptTemporaryNewsInsertUrl;\r\n }\r\n\r\n get SalePricesInsertUrl() {\r\n return this.configurations.baseUrl + this._SalePricesInsertUrl;\r\n }\r\n\r\n get SalePricesRejectUrl() {\r\n return this.configurations.baseUrl + this._SalePricesRejectUrl;\r\n }\r\n\r\n get DepoRecieptTemporaryDetailNewsInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoRecieptTemporaryDetailNewsInsertUrl;\r\n }\r\n\r\n get DepoRecieptTemporaryBarCodesInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoRecieptTemporaryBarCodesInsertUrl;\r\n }\r\n\r\n get DepoRelreciepAssignmenInsertUrl() {\r\n return this.configurations.baseUrl + this._DepoRelreciepAssignmenInsertUrl;\r\n }\r\n\r\n DepoRelreciepAssignmenInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRelreciepAssignmenInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoRelreciepAssignmenInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoRecieptTemporaryNewsInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRecieptTemporaryNewsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoRecieptTemporaryNewsInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n SalePricesInsertEndPoint(customerObject: any, rIsApprove: boolean): Observable {\r\n const endpointUrl = `${this.SalePricesInsertUrl}/${rIsApprove}`;\r\n return this.http.post(endpointUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SalePricesInsertEndPoint(customerObject, rIsApprove));\r\n }));\r\n }\r\n\r\n SalePricesRejectEndPoint(customerObject: any, rIsApprove: boolean): Observable {\r\n const endpointUrl = `${this.SalePricesRejectUrl}/${rIsApprove}`;\r\n return this.http.post(endpointUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SalePricesRejectEndPoint(customerObject, rIsApprove));\r\n }));\r\n }\r\n\r\n DepoRecieptTemporaryDetailNewsInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRecieptTemporaryDetailNewsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoRecieptTemporaryDetailNewsInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoRecieptTemporaryBarCodesInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoRecieptTemporaryBarCodesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoRecieptTemporaryBarCodesInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoAssignment_RequestAssignmentInsertEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignment_RequestAssignmentInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoAssignment_RequestAssignmentInsertEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n saveSaleLoadinCommandEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleLoadingCommandsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleLoadinCommandEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n SupliesDealerCommissionDetailsInsertEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SupliesDealerCommissionDetailsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SupliesDealerCommissionDetailsInsertEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoAssignmentsInsertUrlEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignmentsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoAssignmentsInsertUrlEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoAssignmentDetailsInsertUrlEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignmentDetailsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoAssignmentDetailsInsertUrlEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n DepoAssignmentBarCodesInsertUrlEndPoint(customerObject: any): Observable {\r\n return this.http.post(this.DepoAssignmentBarCodesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoAssignmentBarCodesInsertUrlEndPoint(customerObject));\r\n }));\r\n }\r\n\r\n get SalePreInvoice_SaleNewContractUrl() {\r\n return this.configurations.baseUrl + this._SalePreInvoice_SaleNewContractUrl;\r\n }\r\n\r\n saveSalePreInvoice_SaleNewContractEndPoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.SalePreInvoice_SaleNewContractUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSalePreInvoice_SaleNewContractEndPoint(customerObject));\r\n }));\r\n\r\n }\r\n\r\n saveSaleOrdersEndpoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.SaleOrdersInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleOrdersEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n InsertCustomerClubEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.CustomerClubsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.InsertCustomerClubEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n InsertCustomerSalePreInvoicesEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.CustomerSalePreInvoicesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.InsertCustomerSalePreInvoicesEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n SaleInvoicesInsertEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleInvoicesInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SaleInvoicesInsertEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n SaleInvoiceDetailsInsertEndpoint(customerObject: any): Observable {\r\n return this.http.post(this.SaleInvoiceDetailsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SaleInvoiceDetailsInsertEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n savePubCarsEndpoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.PubCarsInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.savePubCarsEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n savePubDriversEndpoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.PubDriverInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.savePubDriversEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n saveSaleSubOrdersEndpoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.SaleSubOrdersUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSaleSubOrdersEndpoint(customerObject));\r\n }));\r\n }\r\n\r\n saveSalePreInvoiceForContractProductEndpoint(customerObject: any): Observable {\r\n\r\n return this.http.post(this.SalePreInvoiceForContractProductInsertUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveSalePreInvoiceForContractProductEndpoint(customerObject));\r\n }));\r\n\r\n }\r\n\r\n allowInsertSaleRecepitByRSerial(customerObject: any): Observable {\r\n const endpointUrl = `${this.AllowInsertSaleRecepitByRSerial}`;\r\n return this.http.post(endpointUrl, JSON.stringify(customerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.allowInsertSaleRecepitByRSerial(customerObject));\r\n }));\r\n }\r\n\r\n GetCMainCodeEndpoint(userId: string): Observable {\r\n const endpointUrl = `${this.CMainCodeByUserId}/${userId}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCMainCodeEndpoint(userId));\r\n }));\r\n }\r\n\r\n UpdateNationalEndpoint(CustomerMobile: string, CustomerNationalCode: string): Observable {\r\n const endpointUrl = `${this.UpdateNationalInsertUrl}/${CustomerMobile}/${CustomerNationalCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.UpdateNationalEndpoint(CustomerMobile, CustomerNationalCode));\r\n }));\r\n }\r\n\r\n GetSDCodeEndpoint(userId: string): Observable {\r\n const endpointUrl = `${this.SDCodeByUserId}/${userId}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSDCodeEndpoint(userId));\r\n }));\r\n }\r\n\r\n GetAssigneSalerEndpoint(CMainCode: number): Observable {\r\n const endpointUrl = `${this.GetAssigneSalerUrl}/${CMainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAssigneSalerEndpoint(CMainCode));\r\n }));\r\n }\r\n\r\n GetSBAEndpoint(CMainCode: number): Observable {\r\n const endpointUrl = `${this.GetSBACodeUrl}/${CMainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSBAEndpoint(CMainCode));\r\n }));\r\n }\r\n\r\n GetDepoTarazNewResultEndPoint(year: number, depCode: string, PKind: number): Observable {\r\n const endpointUrl = `${this.GetDepoTarazNewResult}/${year}/${depCode}/${PKind}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoTarazNewResultEndPoint(year, depCode, PKind));\r\n }));\r\n }\r\n\r\n GetDepoTarazNewResult2EndPoint(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number): Observable {\r\n const endpointUrl = `${this.GetDepoTarazNewResult2}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${Pkind}/${CmainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoTarazNewResult2EndPoint(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode));\r\n }));\r\n }\r\n\r\n GetDepoCodeDealerCodeEndPoint(DCDealerCode: string, PKCode: number): Observable {\r\n const endpointUrl = `${this.GetDepoCodeDealerCodeUrl}/${DCDealerCode}/${PKCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoCodeDealerCodeEndPoint(DCDealerCode, PKCode));\r\n }));\r\n }\r\n\r\n GetProductSupliesDealerEndPoint(SDCode: string): Observable {\r\n const endpointUrl = `${this.GetProductSupliesDealerUrl}/${SDCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetProductSupliesDealerEndPoint(SDCode));\r\n }));\r\n }\r\n\r\n GetProductSupliesDealerImagefromSupEndPoint(Procode: number): Observable {\r\n const endpointUrl = `${this.GetProductSupliesDealerfromSupImageUrl}/${Procode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetProductSupliesDealerImagefromSupEndPoint(Procode));\r\n }));\r\n }\r\n\r\n GetProductSupliesDealerImageEndPoint(Procode: number): Observable {\r\n const endpointUrl = `${this.GetProductSupliesDealerImageUrl}/${Procode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetProductSupliesDealerImageEndPoint(Procode));\r\n }));\r\n }\r\n\r\n GetProductSupliesDealerImageFileEndPoint(Procode: number): Observable {\r\n const endpointUrl = `${this.GetProductSupliesDealerFileImageUrl}/${Procode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetProductSupliesDealerImageFileEndPoint(Procode));\r\n }));\r\n }\r\n\r\n GetOffsetContractEndpoint(AimContractCode: number, AimPartCode: number, AimContractYear: number): Observable {\r\n const endpointUrl = `${this.GetOffsetContractUrl}/${AimContractCode}/${AimPartCode}/${AimContractYear}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetOffsetContractEndpoint(AimContractCode, AimPartCode, AimContractYear));\r\n }));\r\n }\r\n\r\n GetDepoRecieptPermanentsEndPoint(DRPYear: number, DRPDepCode: string, DRPRecieptTemp: number): Observable {\r\n const endpointUrl = `${this.GetDepoRecieptPermanentsExist}/${DRPYear}/${DRPDepCode}/${DRPRecieptTemp}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoRecieptPermanentsEndPoint(DRPYear, DRPDepCode, DRPRecieptTemp));\r\n }));\r\n }\r\n\r\n GetAimsetContractEndpoint(OffsetContractCode: number, OffsetPartCode: number, OffsetContractYear: number): Observable {\r\n const endpointUrl = `${this.GetAimsetContractUrl}/${OffsetContractCode}/${OffsetPartCode}/${OffsetContractYear}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAimsetContractEndpoint(OffsetContractCode, OffsetPartCode, OffsetContractYear));\r\n }));\r\n }\r\n\r\n GetAcceptContractEndpoint(NCPartCode: number, NCSubCustomerCode: number): Observable {\r\n const endpointUrl = `${this.GetAcceptContract}/${NCPartCode}/${NCSubCustomerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAcceptContractEndpoint(NCPartCode, NCSubCustomerCode));\r\n }));\r\n }\r\n\r\n SetUpdateAccept(sPIYear: number, sPIPartCode: number, sPICode: number): Observable {\r\n const endpointUrl = `${this.UpdateAccept}/${sPIYear}/${sPIPartCode}/${sPICode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SetUpdateAccept(sPIYear, sPIPartCode, sPICode));\r\n }));\r\n }\r\n\r\n SetUpdatePreinvoiceVoidEndpoint(NCCode: number, NCYear: number, SPIPartCode: number): Observable {\r\n const endpointUrl = `${this.UpdatePreinvoiceVoid}/${NCCode}/${NCYear}/${SPIPartCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SetUpdatePreinvoiceVoidEndpoint(NCCode, NCYear, SPIPartCode));\r\n }));\r\n }\r\n\r\n UpdateProductSupliesDealerEndpoint(Procode: number, DCCode: string): Observable {\r\n const endpointUrl = `${this.UpdateProductSupliesDealerUrl}/${Procode}/${DCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.UpdateProductSupliesDealerEndpoint(Procode, DCCode));\r\n }));\r\n }\r\n\r\n SetUpdateAcceptContract(ncyear: number, ncpartCode: number, nccode: number): Observable {\r\n const endpointUrl = `${this.UpdateAcceptContract}/${ncyear}/${ncpartCode}/${nccode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SetUpdateAcceptContract(ncyear, ncpartCode, nccode));\r\n }));\r\n }\r\n\r\n SetUpdateChangeStatusEndpoint(NCYear: number, NCPartCode: number, NCCode: number, NCStatusNumber: number, NCStatusString: string): Observable {\r\n const endpointUrl = `${this.Updatechangestatus}/${NCYear}/${NCPartCode}/${NCCode}/${NCStatusNumber}/${NCStatusString}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SetUpdateChangeStatusEndpoint(NCYear, NCPartCode, NCCode, NCStatusNumber, NCStatusString));\r\n }));\r\n }\r\n\r\n SetUpdateValidContract(ncyear: number, ncpartCode: number, nccode: number): Observable {\r\n const endpointUrl = `${this.VoidAcceptContract}/${ncyear}/${ncpartCode}/${nccode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SetUpdateValidContract(ncyear, ncpartCode, nccode));\r\n }));\r\n }\r\n\r\n SetUpdateVoid(sPIYear: number, sPIPartCode: number, sPICode: number): Observable {\r\n const endpointUrl = `${this.VoidAccept}/${sPIYear}/${sPIPartCode}/${sPICode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SetUpdateVoid(sPIYear, sPIPartCode, sPICode));\r\n }));\r\n }\r\n\r\n GetNameHeadEndpoint(userId: string): Observable {\r\n const endpointUrl = userId ? `${this.NameHeadUrl}/${userId}` : this.NameHeadUrl;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNameHeadEndpoint(userId));\r\n }));\r\n }\r\n\r\n GetCSubCodeEndpoint(userId: string): Observable {\r\n const endpointUrl = userId ? `${this.CsubCodeByUserId}/${userId}` : this.CsubCodeByUserId;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCSubCodeEndpoint(userId));\r\n }));\r\n }\r\n\r\n GetRSerialCheckEndpoint(RSerial: string): Observable {\r\n const endpointUrl = `${this.CheckExistReceiptUrl}/${RSerial}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetRSerialCheckEndpoint(RSerial));\r\n }));\r\n }\r\n\r\n CheckExsitInvoiceAssEndpoint(SIAAssignmentCode: number, SIAYear: number, SIADepoCode: number): Observable {\r\n const endpointUrl = `${this.CheckExsitInvoiceAssUrl}/${SIAAssignmentCode}/${SIAYear}/${SIADepoCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.CheckExsitInvoiceAssEndpoint(SIAAssignmentCode, SIAYear, SIADepoCode));\r\n }));\r\n }\r\n\r\n CheckSerialRevertEndpoint(RSerial: string): Observable {\r\n const endpointUrl = `${this.CheckSerialRevertUrl}/${RSerial}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.CheckSerialRevertEndpoint(RSerial));\r\n }));\r\n }\r\n\r\n GetBankAccount(TypeNumber: number): Observable {\r\n const endpointUrl = `${this.SaleBankAccountList}/${TypeNumber}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetBankAccount(TypeNumber));\r\n }));\r\n }\r\n\r\n GetSaleLoadingSelectForScanerEndPoint(loadNumber: number, year: number): Observable {\r\n const endpointUrl = `${this.SaleLoadingSelcetForScannersList}/${loadNumber}/${year}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleLoadingSelectForScanerEndPoint(loadNumber, year));\r\n }));\r\n }\r\n\r\n GetLoadingDetailEndPoint(loadNumber: number, year: number): Observable {\r\n const endpointUrl = `${this.GetLoadingDetail}/${loadNumber}/${year}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetLoadingDetailEndPoint(loadNumber, year));\r\n }));\r\n }\r\n\r\n GetLastSerialEndPoint(LCBNum: number, LCBProductCode: string, Lcbyear: number): Observable {\r\n const endpointUrl = `${this.GetLastSerialUrl}/${LCBNum}/${LCBProductCode}/${Lcbyear}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetLastSerialEndPoint(LCBNum, LCBProductCode, Lcbyear));\r\n }));\r\n }\r\n\r\n GetSaleNewContract(NCYear: number, NCPartCode: number, NCCode: number, NCCustomerCode: number): Observable {\r\n const endpointUrl = `${this.SaleNewContractsGet}/${NCYear}/${NCPartCode}/${NCCode}/${NCCustomerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleNewContract(NCYear, NCPartCode, NCCode, NCCustomerCode));\r\n }));\r\n }\r\n\r\n SaleNewContractSelectListEndpoint(Year: number, PartCode: number, Code: number, Status_ID: number, CustomerCode: number): Observable {\r\n const endpointUrl = `${this.SaleNewContractSelectListUrl}/${Year}/${PartCode}/${Code}/${Status_ID}/${CustomerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SaleNewContractSelectListEndpoint(Year, PartCode, Code, Status_ID, CustomerCode));\r\n }));\r\n }\r\n\r\n GetMoneyLabelCodeProduct(Year: number, PartCode: number, Code: number, Status_ID: number, CustomerCode: number): Observable {\r\n const endpointUrl = `${this.SaleNewContractSelectListUrl}/${Year}/${PartCode}/${Code}/${Status_ID}/${CustomerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetMoneyLabelCodeProduct(Year, PartCode, Code, Status_ID, CustomerCode));\r\n }));\r\n }\r\n\r\n GetCustomerAddressEndpoint(Cmain: number): Observable {\r\n const endpointUrl = `${this.GetCustomerAddressUrl}/${Cmain}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCustomerAddressEndpoint(Cmain));\r\n }));\r\n }\r\n\r\n GetRequestInvoiceProductEndpoint(REQPYear: number, REQPCode: number, REQPDealercode: string, RequestInvoiEnum: number): Observable {\r\n const endpointUrl = `${this.GetRequestInvoiceProductUrl}/${REQPYear}/${REQPCode}/${REQPDealercode}/${RequestInvoiEnum}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetRequestInvoiceProductEndpoint(REQPYear, REQPCode, REQPDealercode, RequestInvoiEnum));\r\n }));\r\n }\r\n\r\n GetCountProductDealerCodeEndpoint(DCDealerCode: string): Observable {\r\n const endpointUrl = `${this.GetCountProductDealerCodeUrl}/${DCDealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCountProductDealerCodeEndpoint(DCDealerCode));\r\n }));\r\n }\r\n\r\n GetAllReportmethod(year: number, partCode: number, code: number, status_ID: number, CustomerCode: number): Observable {\r\n const endpointUrl = `${this.GetAllReport}/${year}/${partCode}/${code}/${status_ID}/${CustomerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAllReportmethod(year, partCode, code, status_ID, CustomerCode));\r\n }));\r\n }\r\n\r\n GetAllReportSiteEndPoint(year: number, partCode: number, code: number, status_ID: number, CustomerCode: number, fromDate?: string, toDate?: string): Observable {\r\n const endpointUrl = `${this.GetAllReportSite}/${year}/${partCode}/${code}/${status_ID}/${CustomerCode}/${fromDate}/${toDate}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAllReportSiteEndPoint(year, partCode, code, status_ID, CustomerCode, fromDate, toDate));\r\n }));\r\n }\r\n\r\n GetAllReportmethodsettlementEndpoint(year: number, partCode: number, code: number, status_ID: number, CustomerCode: number): Observable {\r\n const endpointUrl = `${this.GetAllReportsettlement}/${year}/${partCode}/${code}/${status_ID}/${CustomerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAllReportmethodsettlementEndpoint(year, partCode, code, status_ID, CustomerCode));\r\n }));\r\n }\r\n\r\n GetAllPreInvoiceSelectListEndPoint(sPIPYear: number, sPIPPartCode: number, sPIPCode: number, sPIPRevesion: number): Observable {\r\n const endpointUrl = `${this.GetAllPreInvoiceSelectList}/${sPIPYear}/${sPIPPartCode}/${sPIPCode}/${sPIPRevesion}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAllPreInvoiceSelectListEndPoint(sPIPYear, sPIPPartCode, sPIPCode, sPIPRevesion));\r\n }));\r\n }\r\n\r\n TemprorySerialsGetEndPoint(id: string): Observable {\r\n const endpointUrl = `${this.TemprorySerialsGetUrl}/${id}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.TemprorySerialsGetEndPoint(id));\r\n }));\r\n }\r\n\r\n GetAllSerialEndpoint(): Observable {\r\n const endpointUrl = this.GetAllSerial;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAllSerialEndpoint());\r\n }));\r\n }\r\n\r\n GetHesabKind(): Observable {\r\n const endpointUrl = `${this.HesabKindList}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetHesabKind());\r\n }));\r\n }\r\n\r\n GetSaleCustomer(CMainCode: number, CSubcode: number): Observable {\r\n const endpointUrl = `${this.SalesUrl}/${CMainCode}/${CSubcode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleCustomer(CMainCode, CSubcode));\r\n }));\r\n }\r\n\r\n GetDepoCode(CMainCode: number, CSubcode: number, IdGroup: number): Observable {\r\n const endpointUrl = `${this.DepoCodeListUrl}/${CMainCode}/${CSubcode}/${IdGroup}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoCode(CMainCode, CSubcode, IdGroup));\r\n }));\r\n }\r\n\r\n GetDepoRecieptTemporaryNewDetailEndpoint(dRTYear: number, dRTDepCode: string, dRTCode: number, dRTTCode: number): Observable {\r\n const endpointUrl = `${this.GetDepoRecieptTemporaryNewDetail}/${dRTYear}/${dRTDepCode}/${dRTCode}/${dRTTCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoRecieptTemporaryNewDetailEndpoint(dRTYear, dRTDepCode, dRTCode, dRTTCode));\r\n }));\r\n }\r\n\r\n GetCustomerByCMainCodeEndpoint(CMainCode: number, CSubcode: number): Observable {\r\n const endpointUrl = `${this.AddressCustomerUrl}/${CMainCode}/${CSubcode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCustomerByCMainCodeEndpoint(CMainCode, CSubcode));\r\n }));\r\n }\r\n\r\n GetDepoRecieptTemporaryDetailEndpoint(dRTYear: number, dRTDepCode: string, dRTCode: number): Observable {\r\n const endpointUrl = `${this.GetDepoRecieptTemporaryDetail}/${dRTYear}/${dRTDepCode}/${dRTCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoRecieptTemporaryDetailEndpoint(dRTYear, dRTDepCode, dRTCode));\r\n }));\r\n }\r\n\r\n GetSaleSelectSubEndPoint(OrderNum: number, OrderYear: number, partCode: number, IsRemaind: boolean, DepCode: string): Observable {\r\n const endpointUrl = `${this.GetSaleSelectSubUrl}/${OrderNum}/${OrderYear}/${partCode}/${IsRemaind}/${DepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleSelectSubEndPoint(OrderNum, OrderYear, partCode, IsRemaind, DepCode));\r\n }));\r\n }\r\n\r\n GetSaleSelectSubBarCodeEndPoint(OrderNum: number, OrderYear: number, partCode: number, IsRemaind: boolean, DepCode: string): Observable {\r\n const endpointUrl = `${this.GetSaleSelectSubBarCodeUrl}/${OrderNum}/${OrderYear}/${partCode}/${IsRemaind}/${DepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleSelectSubBarCodeEndPoint(OrderNum, OrderYear, partCode, IsRemaind, DepCode));\r\n }));\r\n }\r\n\r\n GetDepos(ID: string): Observable {\r\n const endpointUrl = `${this.DeposListUrl}/${ID}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepos(ID));\r\n }));\r\n }\r\n\r\n GetCustomerClubWithMobileEndPoint(CustomerMobile: string): Observable {\r\n const endpointUrl = `${this.GetCustomerClubWithUrl}/${CustomerMobile}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCustomerClubWithMobileEndPoint(CustomerMobile));\r\n }));\r\n }\r\n\r\n GetDeposOwner(ID: string): Observable {\r\n const endpointUrl = `${this.DeposListUrlOwner}/${ID}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDeposOwner(ID));\r\n }));\r\n }\r\n\r\n GetNewCodeOrder(Year: number, partCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeOrderUrl}/${Year}/${partCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeOrder(Year, partCode));\r\n }));\r\n }\r\n\r\n GetNewCodeDepoRecieptTemporaryEndPoint(DRTYear: number, DRTDepCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeDepoRecieptTemporaryUrl}/${DRTYear}/${DRTDepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeDepoRecieptTemporaryEndPoint(DRTYear, DRTDepCode));\r\n }));\r\n }\r\n\r\n GetGetNewCodeRequestInvoiceEndPoint(REQYear: number, REQDealercode: number): Observable {\r\n const endpointUrl = `${this.GetGetNewCodeRequestInvoiceUrl}/${REQYear}/${REQDealercode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetGetNewCodeRequestInvoiceEndPoint(REQYear, REQDealercode));\r\n }));\r\n }\r\n\r\n GetOOrderNumEndPoint(OContractNum: number, OPartCode: number, OYear: number): Observable {\r\n const endpointUrl = `${this.GetOOrderNumUrl}/${OContractNum}/${OPartCode}/${OYear}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetOOrderNumEndPoint(OContractNum, OPartCode, OYear));\r\n }));\r\n }\r\n\r\n GetNewCodessp(Year: number, partCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodesspUrl}/${Year}/${partCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodessp(Year, partCode));\r\n }));\r\n }\r\n\r\n GetNewCodeDepoAssignmentEndPoint(DAYear: number, DADepCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeDepoAssignmentUrl}/${DAYear}/${DADepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeDepoAssignmentEndPoint(DAYear, DADepCode));\r\n }));\r\n }\r\n\r\n GetNewCodeCustomerClubUrlEndPoint(): Observable {\r\n const endpointUrl = `${this.GetNewCodeCustomerClubUrl}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeCustomerClubUrlEndPoint());\r\n }));\r\n }\r\n\r\n GetNewCodeInvoiceEndPoint(year: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeInvoiceUrl}/${year}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeInvoiceEndPoint(year));\r\n }));\r\n }\r\n\r\n GetSaleContractToInvoiceSelectEndPoint(Year: number, ContractYear: number, ContractCode: number, PartCode: number): Observable {\r\n const endpointUrl = `${this.GetSaleContractToInvoiceSelectUrl}/${Year}/${ContractYear}/${ContractCode}/${PartCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleContractToInvoiceSelectEndPoint(Year, ContractYear, ContractCode, PartCode));\r\n }));\r\n }\r\n\r\n GetNewCode(Year: number, partCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeUrl}/${Year}/${partCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCode(Year, partCode));\r\n }));\r\n }\r\n\r\n GetSDCodeEndPoint(Id: string): Observable {\r\n const endpointUrl = `${this.GetSDCodeUrl}/${Id}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSDCodeEndPoint(Id));\r\n }));\r\n }\r\n\r\n GetOrdernumEndpoint(OContractNum: number, OContractYear: number, OPartCode: number): Observable {\r\n const endpointUrl = `${this.GetOrdernum}/${OContractNum}/${OContractYear}/${OPartCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetOrdernumEndpoint(OContractNum, OContractYear, OPartCode));\r\n }));\r\n }\r\n\r\n UpdateCustomerClubEndpoint(CustomerObject: any): Observable {\r\n const endpointUrl = `${this.saveCustomerClubUrl}/PutCustomerClub`;\r\n return this.http.put(endpointUrl, JSON.stringify(CustomerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.UpdateCustomerClubEndpoint(CustomerObject));\r\n }));\r\n }\r\n\r\n UpdateAddressEndpoint(CustomerObject: any): Observable {\r\n const endpointUrl = `${this.saveAddressUrl}/PutAddress`;\r\n return this.http.put(endpointUrl, JSON.stringify(CustomerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.UpdateAddressEndpoint(CustomerObject));\r\n }));\r\n }\r\n\r\n GetDirectoryEndpoint(): Observable {\r\n const endpointUrl = `${this.GetDirectory}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDirectoryEndpoint());\r\n }));\r\n }\r\n\r\n GetTaxPriceTotalEndpoint(year: number, Price: number): Observable {\r\n const endpointUrl = `${this.GetTaxPriceTotalUrl}/${year}/${Price}/`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetTaxPriceTotalEndpoint(year, Price));\r\n }));\r\n }\r\n\r\n GetStatusSerialEndpoint(serial: string, DepCode: string, activeYear: number): Observable {\r\n const endpointUrl = `${this.GetSerialStatue}/${serial}/${DepCode}/${activeYear}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetStatusSerialEndpoint(serial, DepCode, activeYear));\r\n }));\r\n }\r\n\r\n GetStatusSerialEndpointBySerial(serial: string, productCode: string, depoCode: string, activeYear: number): Observable {\r\n const endpointUrl = `${this.GetCheckExistBarCode}/${serial}/${productCode}/${depoCode}/${activeYear}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetStatusSerialEndpointBySerial(serial, productCode, depoCode, activeYear));\r\n }));\r\n }\r\n\r\n GetStatusNUmber(NCYear: number, NCPartCode: number, NCCode: number): Observable {\r\n const endpointUrl = `${this.GetStatusNumberUrl}/${NCYear}/${NCPartCode}/${NCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetStatusNUmber(NCYear, NCPartCode, NCCode));\r\n }));\r\n }\r\n\r\n GetSaleNewContract_PrintInvoice(NCYear: number, NCPartCode: number, NCCode: number): Observable {\r\n const endpointUrl = `${this.GetSaleNewContract_PrintInvoiceUrl}/${NCYear}/${NCPartCode}/${NCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleNewContract_PrintInvoice(NCYear, NCPartCode, NCCode));\r\n }));\r\n }\r\n\r\n GetNewCarsCodeEndPoint(): Observable {\r\n\r\n return this.http.get(this.GetNewCarsCodeUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCarsCodeEndPoint());\r\n }));\r\n }\r\n\r\n GetNewDriverCodeEndPoint(): Observable {\r\n\r\n return this.http.get(this.GetNewDriverCodeUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewDriverCodeEndPoint());\r\n }));\r\n }\r\n\r\n GetNewCodeLoadingEndPoint(Year: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeLoadingurl}/${Year}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeLoadingEndPoint(Year));\r\n }));\r\n }\r\n\r\n GetDapCodeProductEndPoint(DAPYear: number, DAPLCNum: number, DAPDepoCode: string): Observable {\r\n const endpointUrl = `${this.GetGetDapCodeProductLoading}/${DAPYear}/${DAPLCNum}/${DAPDepoCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDapCodeProductEndPoint(DAPYear, DAPLCNum, DAPDepoCode));\r\n }));\r\n }\r\n\r\n GetDepoRecieptTemporaryBarCodeEndPoint(DRPBYear: number, DRPBCode: number, DRPBDepCode: string, DRTBProductCode: string): Observable {\r\n const endpointUrl = `${this.GetDepoRecieptTemporaryBarCode}/${DRPBYear}/${DRPBCode}/${DRPBDepCode}/${DRTBProductCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoRecieptTemporaryBarCodeEndPoint(DRPBYear, DRPBCode, DRPBDepCode, DRTBProductCode));\r\n }));\r\n }\r\n\r\n GetDepoRecieptTemporaryBarCodeCheckSerialEndPoint(DRPBYear: number, DRPBCode: number, DRPBDepCode: string, DRTBBarCode: string): Observable {\r\n const endpointUrl = `${this.GetDepoRecieptTemporaryBarCodeCheckSerialurl}/${DRPBYear}/${DRPBCode}/${DRPBDepCode}/${DRTBBarCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoRecieptTemporaryBarCodeCheckSerialEndPoint(DRPBYear, DRPBCode, DRPBDepCode, DRTBBarCode));\r\n }));\r\n }\r\n\r\n GetProductCodeWithBarcodeEndPoint(depoCode: string, barCode: string): Observable {\r\n const endpointUrl = `${this.GetProductCodeWithBarcodeurl}/${depoCode}/${barCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetProductCodeWithBarcodeEndPoint(depoCode, barCode));\r\n }));\r\n }\r\n\r\n GetProductCodeWithProductCodeEndPoint(depoCode: string, ProductCode: string): Observable {\r\n const endpointUrl = `${this.GetProductCodeWithProductCodeurl}/${depoCode}/${ProductCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetProductCodeWithProductCodeEndPoint(depoCode, ProductCode));\r\n }));\r\n }\r\n\r\n NewAssignmentLoadingEndPoint(rowsSelectDepoAssignmentProductDetail_BarCodeObject: any): Observable {\r\n return this.http.post(this.NewAssignmentLoading, JSON.stringify(rowsSelectDepoAssignmentProductDetail_BarCodeObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewAssignmentLoadingEndPoint(rowsSelectDepoAssignmentProductDetail_BarCodeObject));\r\n }));\r\n }\r\n\r\n NewAssignmentLoadingNextAcceptEndPoint(rowsSelectSubOrderObject: any): Observable {\r\n return this.http.post(this.NewAssignmentLoadingNextAccept, JSON.stringify(rowsSelectSubOrderObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewAssignmentLoadingNextAcceptEndPoint(rowsSelectSubOrderObject));\r\n }));\r\n }\r\n\r\n NewPreInvoiceEndPoint(rowsSelectSalePreInvoiceForContractProduct_BarCodeObject: any): Observable {\r\n return this.http.post(this.NewPreInvoice, JSON.stringify(rowsSelectSalePreInvoiceForContractProduct_BarCodeObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewPreInvoiceEndPoint(rowsSelectSalePreInvoiceForContractProduct_BarCodeObject));\r\n }));\r\n }\r\n\r\n InsertNewPreInvoiceEndPoint(rowsSelectSalePreInvoiceForContractProduct_BarCodeObject: any): Observable {\r\n return this.http.post(this.InsertNewPreInvoice, JSON.stringify(rowsSelectSalePreInvoiceForContractProduct_BarCodeObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewPreInvoiceEndPoint(rowsSelectSalePreInvoiceForContractProduct_BarCodeObject));\r\n }));\r\n }\r\n\r\n NewSaleOrderEndPoint(rowsSelectSaleSubOrder_BarCodeObject: any): Observable {\r\n return this.http.post(this.NewSaleOrder, JSON.stringify(rowsSelectSaleSubOrder_BarCodeObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewSaleOrderEndPoint(rowsSelectSaleSubOrder_BarCodeObject));\r\n }));\r\n }\r\n\r\n NewSaleSendProductEndPoint(rowsSelectSaleSubSendProduct_BarCodeObject: any): Observable {\r\n return this.http.post(this.NewSaleSendProduct, JSON.stringify(rowsSelectSaleSubSendProduct_BarCodeObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewSaleSendProductEndPoint(rowsSelectSaleSubSendProduct_BarCodeObject));\r\n }));\r\n }\r\n\r\n NewSaleLoadingCommandEndPoint(rowsSelectSaleSubLoadingCommand_BarCodeObject: any): Observable {\r\n return this.http.post(this.NewSaleLoadingCommand, JSON.stringify(rowsSelectSaleSubLoadingCommand_BarCodeObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewSaleLoadingCommandEndPoint(rowsSelectSaleSubLoadingCommand_BarCodeObject));\r\n }));\r\n }\r\n\r\n NewAssignmentLoadingNextPaymentEndPoint(year: number, contractCode: number, SPICode: number): Observable {\r\n const endpointUrl = `${this.NewAssignmentLoadingNextPayment}/${year}/${contractCode}/${SPICode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.NewAssignmentLoadingNextPaymentEndPoint(year, contractCode, SPICode));\r\n }));\r\n }\r\n\r\n GetNewAssignmentLoadingNextSendProductEndPoint(rowsSelectSaleSubLoadingCommand_BarCodeObject: any): Observable {\r\n return this.http.post(this.NewAssignmentLoadingNextSendProduct, JSON.stringify(rowsSelectSaleSubLoadingCommand_BarCodeObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewAssignmentLoadingNextSendProductEndPoint(rowsSelectSaleSubLoadingCommand_BarCodeObject));\r\n }));\r\n }\r\n\r\n CreateContractForPerInvoiceProductsEndPoint(sPIYear: number, sPIPartCode: number, sPICode: number, currentYear: number, IsAccepted: boolean): Observable {\r\n const endpointUrl = `${this.CreateContractForPerInvoiceProductsurl}/${sPIYear}/${sPIPartCode}/${sPICode}/${currentYear}/${IsAccepted}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.CreateContractForPerInvoiceProductsEndPoint(sPIYear, sPIPartCode, sPICode, currentYear, IsAccepted));\r\n }));\r\n }\r\n\r\n GetNewCodeassignmentLoadingEndPoint(DAPYear: number, DAPDepCode: string): Observable {\r\n const endpointUrl = `${this.GetNewCodeassignmentLoading}/${DAPYear}/${DAPDepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeassignmentLoadingEndPoint(DAPYear, DAPDepCode));\r\n }));\r\n }\r\n\r\n GetNewCodeDepoRecieptPermanentEndPoint(Year: number, DRPDepCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeDepoRecieptPermanenturl}/${Year}/${DRPDepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeDepoRecieptPermanentEndPoint(Year, DRPDepCode));\r\n }));\r\n }\r\n\r\n GetCodeSPICodeEndPoint(NCCode: number, NCYear: number, SPIPartCode: number): Observable {\r\n const endpointUrl = `${this.GetCodeSPICode}/${NCCode}/${NCYear}/${SPIPartCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCodeSPICodeEndPoint(NCCode, NCYear, SPIPartCode));\r\n }));\r\n }\r\n\r\n GetRNumEndPoint(RYear: number, RPartCode: number, RContractCode: number): Observable {\r\n const endpointUrl = `${this.GetRNum}/${RYear}/${RPartCode}/${RContractCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetRNumEndPoint(RYear, RPartCode, RContractCode));\r\n }));\r\n }\r\n\r\n DeleteTemprorySerialEndPoint(): Observable {\r\n const endpointUrl = this.DeleteTemproryUrl;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DeleteTemprorySerialEndPoint());\r\n }));\r\n }\r\n\r\n GetNewCodeContract(Year: number, partCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeContractUrl}/${Year}/${partCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeContract(Year, partCode));\r\n }));\r\n }\r\n\r\n GetNewCodesalepriceEndPoint(PYear: number, PKind: number): Observable {\r\n const endpointUrl = `${this.GetNewCodesalepriceUrl}/${PYear}/${PKind}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodesalepriceEndPoint(PYear, PKind));\r\n }));\r\n }\r\n\r\n GetNewCodeRecipt(Year: number, partCode: number, kind: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeReciptUrl}/${Year}/${partCode}/${kind}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeRecipt(Year, partCode, kind));\r\n }));\r\n }\r\n\r\n GetNewCodeRevertEndPoint(DRTDCYear: number, DRTDCDepCode: number): Observable {\r\n const endpointUrl = `${this.GetNewCodeRevertUrl}/${DRTDCYear}/${DRTDCDepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCodeRevertEndPoint(DRTDCYear, DRTDCDepCode));\r\n }));\r\n }\r\n\r\n GetDeposListTaraz(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, IdGroup: number, CmainCode: number): Observable {\r\n const endpointUrl = `${this.DepoListTarazUrl}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${IdGroup}/${CmainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDeposListTaraz(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, IdGroup, CmainCode));\r\n }));\r\n }\r\n\r\n MethodGetDepoTarazwithcomDetailByDCCodeEndPoint(Year: number, DepCode: string, DCCode: string): Observable {\r\n const endpointUrl = `${this.MethodGetDepoTarazwithcomDetailByDCCodeUrl}/${Year}/${DepCode}/${DCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.MethodGetDepoTarazwithcomDetailByDCCodeEndPoint(Year, DepCode, DCCode));\r\n }));\r\n }\r\n\r\n getDepoTarazwithcomDetail(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number): Observable {\r\n const endpointUrl = `${this.DepoTarazwithcomDetail}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${Pkind}/${CmainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoTarazwithcomDetail(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode));\r\n }));\r\n }\r\n\r\n getVirtualWarehouseInventory(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number): Observable {\r\n const endpointUrl = `${this.VirtualWarehouseInventory}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${Pkind}/${CmainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getVirtualWarehouseInventory(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode));\r\n }));\r\n }\r\n\r\n getDepoTarazwithcomDetailBarcode(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number, productCode): Observable {\r\n const endpointUrl = `${this.DepoTarazwithcomDetailBarcode}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${Pkind}/${CmainCode}/${productCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoTarazwithcomDetailBarcode(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode, productCode));\r\n }));\r\n }\r\n\r\n getDepoTarazwithcomDetailSearchScan(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number, productCode): Observable {\r\n const endpointUrl = `${this.DepoTarazwithcomDetailSearchScan}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${Pkind}/${CmainCode}/${productCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoTarazwithcomDetailSearchScan(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode, productCode));\r\n }));\r\n }\r\n\r\n saveCustomerClubEndpoint(customerClubObject: any): Observable {\r\n return this.http.post(this.saveCustomerClubUrl, JSON.stringify(customerClubObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveCustomerClubEndpoint(customerClubObject));\r\n }));\r\n }\r\n\r\n GetNewCustomerClubIDEndPoint(): Observable {\r\n const endpointUrl = `${this.saveCustomerClubUrl}/GetNewCustomerID`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNewCustomerClubIDEndPoint());\r\n }));\r\n }\r\n\r\n getAddressesEndpoint(customerID: number): Observable {\r\n const endpointUrl = `${this._saveAddressUrl}/GetAddresses/${customerID}`;\r\n return this.http.get(endpointUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getAddressesEndpoint(customerID));\r\n }));\r\n }\r\n\r\n saveAddressEndpoint(addressObject: any): Observable {\r\n return this.http.post(this.saveAddressUrl, JSON.stringify(addressObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.saveAddressEndpoint(addressObject));\r\n }));\r\n }\r\n\r\n getDepoTarazNewPivotDepos(year: number, usercode: number, drpRequestDateFrom: string, drpRequestDateTo: string, dcMainUnit: boolean, deliverCode: string): Observable {\r\n const endpointUrl = `${this.DepoTarazNewPivotDepos}/${year}/${usercode}/${drpRequestDateFrom}/${drpRequestDateTo}/${dcMainUnit}/${deliverCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoTarazNewPivotDepos(year, usercode, drpRequestDateFrom, drpRequestDateTo, dcMainUnit, deliverCode));\r\n }));\r\n }\r\n\r\n GetTarazDepoBaseEndPoint(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, IdGroup: number, CmainCode: number): Observable {\r\n const endpointUrl = `${this.TarazDepoBaseUrl}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${IdGroup}/${CmainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetTarazDepoBaseEndPoint(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, IdGroup, CmainCode));\r\n }));\r\n }\r\n\r\n GetSaleBankAccountsListEndPoint(sbacode: number): Observable {\r\n const endpointUrl = `${this.GetSaleBankAccountsUrl}/${sbacode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleBankAccountsListEndPoint(sbacode));\r\n }));\r\n }\r\n\r\n GetSendSubProductEndPoint(Code: number, Year: number, PartCode: number): Observable {\r\n const endpointUrl = `${this.GetSubSendProductUrl}/${Code}/${Year}/${PartCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSendSubProductEndPoint(Code, Year, PartCode));\r\n }));\r\n }\r\n\r\n SaleReceiptChekHesabSanadEndPoint(Year: number, ReceiptCode: number, ReceiptPartCode: number, ReciptKind: number): Observable {\r\n const endpointUrl = `${this.SaleReceiptChekHesabSanadUrl}/${Year}/${ReceiptCode}/${ReceiptPartCode}/${ReciptKind}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.SaleReceiptChekHesabSanadEndPoint(Year, ReceiptCode, ReceiptPartCode, ReciptKind));\r\n }));\r\n }\r\n\r\n GetAcceptContractCheckEndPoint(Year: number, ReceiptCode: number, ReceiptPartCode: number): Observable {\r\n const endpointUrl = `${this.GetAcceptContractCheckUrl}/${Year}/${ReceiptCode}/${ReceiptPartCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAcceptContractCheckEndPoint(Year, ReceiptCode, ReceiptPartCode));\r\n }));\r\n }\r\n\r\n GetSaleSubReceiptSelectEndPoint(RContractCode: number, Year: number, PartCode: number, ReceiptKind: number): Observable {\r\n const endpointUrl = `${this.GetSaleSubReceiptSelectUrl}/${RContractCode}/${Year}/${PartCode}/${ReceiptKind}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleSubReceiptSelectEndPoint(RContractCode, Year, PartCode, ReceiptKind));\r\n }));\r\n }\r\n\r\n GetAssProductListEndPoint(dAPDYear: number, dAPDCode: number, dAPDDepoCode: string): Observable {\r\n const endpointUrl = `${this.GetAssProductListUrl}/${dAPDYear}/${dAPDCode}/${dAPDDepoCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAssProductListEndPoint(dAPDYear, dAPDCode, dAPDDepoCode));\r\n }));\r\n }\r\n\r\n GetDepoRecieptTemporaryListEndPoint(DRTYear: number, dRTDepCode: string): Observable {\r\n const endpointUrl = `${this.GetDepoRecieptTemporaryListUrl}/${DRTYear}/${dRTDepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoRecieptTemporaryListEndPoint(DRTYear, dRTDepCode));\r\n }));\r\n }\r\n\r\n GetDepoAssignmentWithSerialListEndPoint(LCBBarcode: string, LCPartCode: number, DepoCode: number): Observable {\r\n const endpointUrl = `${this.GetDepoAssignmentWithSerialListUrl}/${LCBBarcode}/${LCPartCode}/${DepoCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoAssignmentWithSerialListEndPoint(LCBBarcode, LCPartCode, DepoCode));\r\n }));\r\n }\r\n\r\n GetSaleLoadingUrlEndPoint(Year: number, UnitCode: string, DepoCode: number, OContractNum: number, OPartCode: number): Observable {\r\n const endpointUrl = `${this.GetSaleLoadingUrl}/${Year}/${UnitCode}/${DepoCode}/${OContractNum}/${OPartCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetSaleLoadingUrlEndPoint(Year, UnitCode, DepoCode, OContractNum, OPartCode));\r\n }));\r\n }\r\n\r\n GetDepoByCommissionMoneyEndPoint(DCDealerCode: string, PKCode: number): Observable {\r\n const endpointUrl = `${this.GetDepoByCommissionMoneyUrl}/${DCDealerCode}/${PKCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoByCommissionMoneyEndPoint(DCDealerCode, PKCode));\r\n }));\r\n }\r\n\r\n GetDepoByCommissionMoneyAcceptEndPoint(): Observable {\r\n const endpointUrl = `${this.GetDepoByCommissionMoneyAcceptUrl}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoByCommissionMoneyAcceptEndPoint());\r\n }));\r\n }\r\n\r\n GetDepoByCommissionMoneyAcceptByDCDealerCodeEndPoint(DCDealerCode: string): Observable {\r\n const endpointUrl = `${this.GetDepoByCommissionMoneyAcceptByDCDealerCodeUrl}/${DCDealerCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoByCommissionMoneyAcceptByDCDealerCodeEndPoint(DCDealerCode));\r\n }));\r\n }\r\n\r\n GetDepoAssignmentByAcceptEndPoint(year: number, DepCode: string): Observable {\r\n const endpointUrl = `${this.GetDepoAssignmentByAcceptUrl}/${year}/${DepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDepoAssignmentByAcceptEndPoint(year, DepCode));\r\n }));\r\n }\r\n\r\n GetPreInvoiceList(Year: number, CMainCode: number, NCPartCode: number, ContractCode: number): Observable {\r\n const endpointUrl = `${this.PreInvoiceUrl}/${Year}/${CMainCode}/${NCPartCode}/${ContractCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetPreInvoiceList(Year, CMainCode, NCPartCode, ContractCode));\r\n }));\r\n }\r\n\r\n GetContractList(NCPYear: number, NCPPartCode: number, NCPCode: number, NCPRevesion: number): Observable {\r\n const endpointUrl = `${this.ContractProductUrl}/${NCPYear}/${NCPPartCode}/${NCPCode}/${NCPRevesion}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetContractList(NCPYear, NCPPartCode, NCPCode, NCPRevesion));\r\n }));\r\n }\r\n\r\n GetPreInvoiceProduct(SPIPYear: number, SPIPPartCode: number, SPIPCode: number): Observable {\r\n const endpointUrl = `${this.GetPreInvoiceProducttUrl}/${SPIPYear}/${SPIPPartCode}/${SPIPCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetPreInvoiceProduct(SPIPYear, SPIPPartCode, SPIPCode));\r\n }));\r\n }\r\n\r\n getPreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number): Observable {\r\n const endpointUrl = `${this.getPreInvoicetUrl}/${SPIYear}/${SPIPartCode}/${SPICode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPreInvoice(SPIYear, SPIPartCode, SPICode));\r\n }));\r\n }\r\n\r\n DeletePreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number): Observable {\r\n const endpointUrl = `${this.DeletePreInvoicetUrl}/${SPIYear}/${SPIPartCode}/${SPICode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DeletePreInvoice(SPIYear, SPIPartCode, SPICode));\r\n }));\r\n }\r\n\r\n DeleteSendProduct(SPYear: number, SPPartCode: number, SPCode: number): Observable {\r\n const endpointUrl = `${this.DeleteSendProductUrl}/${SPYear}/${SPPartCode}/${SPCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DeleteSendProduct(SPYear, SPPartCode, SPCode));\r\n }));\r\n }\r\n\r\n DeleteOrder(OYear: number, OPartCode: number, OCode: number): Observable {\r\n const endpointUrl = `${this.DeleteOrderUrl}/${OYear}/${OPartCode}/${OCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DeleteOrder(OYear, OPartCode, OCode));\r\n }));\r\n }\r\n\r\n DeleteSaleLoadingCommandBarCode(Year: number, PartCode: number, LCNum: number): Observable {\r\n const endpointUrl = `${this.DeleteSaleLoadingCommandBarCodeUrl}/${Year}/${PartCode}/${LCNum}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DeleteSaleLoadingCommandBarCode(Year, PartCode, LCNum));\r\n }));\r\n }\r\n\r\n GetPreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number): Observable {\r\n const endpointUrl = `${this.GetPreInvoicetUrl}/${SPIYear}/${SPIPartCode}/${SPICode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetPreInvoice(SPIYear, SPIPartCode, SPICode));\r\n }));\r\n }\r\n\r\n InsertPreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number, SPIKindCode: number, SPIDate: string, SPICustomerCode: number, SPISubCustomerCode: number, SPIFromDeliverytDate: string, SPIToDeliveryDate: string, SPIIsVoid: boolean, SPIIsAccepted: boolean, SPIRegistUserCode: number, SPIAcceptedUserCode: number, SPIPrivateConditions: string, PriceKind: number, AssigneSalerCode: number, DepoCode: number): Observable {\r\n const endpointUrl = `${this.PreInvoiceInsertUrl}/${SPIYear}/${SPIPartCode}/${SPICode}/${SPIKindCode}/${SPIDate}/${SPICustomerCode}/${SPISubCustomerCode}/${SPIFromDeliverytDate}/${SPIToDeliveryDate}/${SPIIsVoid}/${SPIIsAccepted}/${SPIRegistUserCode}/${SPIAcceptedUserCode}/${SPIPrivateConditions}/${PriceKind}/${AssigneSalerCode}/${DepoCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.InsertPreInvoice(SPIYear, SPIPartCode, SPICode, SPIKindCode, SPIDate, SPICustomerCode, SPISubCustomerCode, SPIFromDeliverytDate, SPIToDeliveryDate, SPIIsVoid, SPIIsAccepted, SPIRegistUserCode, SPIAcceptedUserCode, SPIPrivateConditions, PriceKind, AssigneSalerCode, DepoCode));\r\n }));\r\n }\r\n\r\n GetDeposListTarazarray(Year: number, DepCode: string[], usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, IdGroup: number, CmainCode: number): Observable {\r\n const endpointUrl = `${this.DepoListTarazUrl}/${Year}/${DepCode}/${usercode}/${DCMainUnit}/${TarazAll}/${IsPrice}/${IdGroup}/${CmainCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDeposListTaraz(Year, DepCode[0], usercode, DCMainUnit, TarazAll, IsPrice, IdGroup, CmainCode));\r\n }));\r\n }\r\n\r\n getUserByUserNameEndpoint(userName: string): Observable {\r\n const endpointUrl = `${this.userByUserNameUrl}/${userName}`;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUserByUserNameEndpoint(userName));\r\n }));\r\n }\r\n\r\n getUsersEndpoint(page?: number, pageSize?: number, Cmain?: number): Observable {\r\n const endpointUrl = page && pageSize ? `${this.usersUrl}/${page}/${pageSize}/${Cmain}` : `${this.usersUrl}/${Cmain}`;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUsersEndpoint(page, pageSize, Cmain));\r\n }));\r\n }\r\n\r\n getUpdateCustomerEndpoint(CustomerObject: any): Observable {\r\n const endpointUrl = this.editCustomerUrl;\r\n\r\n return this.http.put(endpointUrl, JSON.stringify(CustomerObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateUserEndpoint(CustomerObject));\r\n }));\r\n }\r\n\r\n getNewUserEndpoint(userObject: any): Observable {\r\n\r\n return this.http.post(this.usersUrl, JSON.stringify(userObject)).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewUserEndpoint(userObject));\r\n }));\r\n }\r\n\r\n getUpdateUserEndpoint(userObject: any, userId?: string): Observable {\r\n const endpointUrl = userId ? `${this.usersUrl}/${userId}` : this.currentUserUrl;\r\n\r\n return this.http.put(endpointUrl, JSON.stringify(userObject)).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateUserEndpoint(userObject, userId));\r\n }));\r\n }\r\n\r\n getPatchUpdateUserEndpoint(patch: {}, userId?: string): Observable;\r\n getPatchUpdateUserEndpoint(value: any, op: string, path: string, from?: any, userId?: string): Observable;\r\n getPatchUpdateUserEndpoint(valueOrPatch: any, opOrUserId?: string, path?: string, from?: any, userId?: string): Observable {\r\n let endpointUrl: string;\r\n let patchDocument: {};\r\n\r\n if (path) {\r\n endpointUrl = userId ? `${this.usersUrl}/${userId}` : this.currentUserUrl;\r\n patchDocument = from ?\r\n [{value: valueOrPatch, path, op: opOrUserId, from}] :\r\n [{value: valueOrPatch, path, op: opOrUserId}];\r\n } else {\r\n endpointUrl = opOrUserId ? `${this.usersUrl}/${opOrUserId}` : this.currentUserUrl;\r\n patchDocument = valueOrPatch;\r\n }\r\n\r\n return this.http.patch(endpointUrl, JSON.stringify(patchDocument)).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPatchUpdateUserEndpoint(valueOrPatch, opOrUserId, path, from, userId));\r\n }));\r\n }\r\n\r\n getUserPreferencesEndpoint(): Observable {\r\n\r\n return this.http.get(this.currentUserPreferencesUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUserPreferencesEndpoint());\r\n }));\r\n }\r\n\r\n getUpdateUserPreferencesEndpoint(configuration: string): Observable {\r\n return this.http.put(this.currentUserPreferencesUrl, JSON.stringify(configuration)).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateUserPreferencesEndpoint(configuration));\r\n }));\r\n }\r\n\r\n getUnblockUserEndpoint(userId: string): Observable {\r\n const endpointUrl = `${this.unblockUserUrl}/${userId}`;\r\n\r\n return this.http.put(endpointUrl, null).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUnblockUserEndpoint(userId));\r\n }));\r\n }\r\n\r\n getDeleteUserEndpoint(userId: string): Observable {\r\n const endpointUrl = `${this.usersUrl}/${userId}`;\r\n\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeleteUserEndpoint(userId));\r\n }));\r\n }\r\n\r\n getServerDate(): Date {\r\n const endpointUrl = `${this.DateUrl}`;\r\n var result = new Date();\r\n this.http.get(endpointUrl, this.requestHeaders).subscribe(a => result = a);\r\n return result;\r\n }\r\n\r\n getDeleteCustomerEndpoint(CMainCode: number, CSubCode: number): Observable {\r\n const endpointUrl = `${this.deleteCustomerUrl}/${CMainCode}/${CSubCode}`;\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeleteCustomerEndpoint(CMainCode, CSubCode));\r\n }));\r\n }\r\n\r\n getCheckCustomerEndpoint(CMainCode: number, CSubCode: number): Observable {\r\n const endpointUrl = `${this.checkCustomerUrl}/${CMainCode}/${CSubCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getCheckCustomerEndpoint(CMainCode, CSubCode));\r\n }));\r\n }\r\n\r\n getRoleEndpoint(roleId: string): Observable {\r\n const endpointUrl = `${this.rolesUrl}/${roleId}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRoleEndpoint(roleId));\r\n }));\r\n }\r\n\r\n getRoleByRoleNameEndpoint(roleName: string): Observable {\r\n const endpointUrl = `${this.roleByRoleNameUrl}/${roleName}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRoleByRoleNameEndpoint(roleName));\r\n }));\r\n }\r\n\r\n getRolesEndpoint(page?: number, pageSize?: number): Observable {\r\n const endpointUrl = page && pageSize ? `${this.rolesUrl}/${page}/${pageSize}` : this.rolesUrl;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRolesEndpoint(page, pageSize));\r\n }));\r\n }\r\n\r\n getGroupsEndpoint(): Observable {\r\n return this.http.get(this.groupUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getGroupsEndpoint());\r\n }));\r\n }\r\n\r\n getGroupswithcMainCodeEndpoint(cMainCode: number): Observable {\r\n return this.http.get(`${this.GetGroupswithcMainCode}/${cMainCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getGroupswithcMainCodeEndpoint(cMainCode));\r\n }));\r\n }\r\n\r\n getgroupswithSaleCustomerItemPriceKindEndpoint(cMainCode: number): Observable {\r\n return this.http.get(`${this.GetgroupswithSaleCustomerItemPriceKind}/${cMainCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getgroupswithSaleCustomerItemPriceKindEndpoint(cMainCode));\r\n }));\r\n }\r\n\r\n GetGroupsNewUrlEndpoint(CustomerMainCode: number): Observable {\r\n return this.http.get(`${this.GetGroupsNewUrl}/${CustomerMainCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetGroupsNewUrlEndpoint(CustomerMainCode));\r\n }));\r\n }\r\n\r\n getSaleCustomerEndpoint(): Observable {\r\n return this.http.get(this.SaleCustomerUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getSaleCustomerEndpoint());\r\n }));\r\n }\r\n\r\n getGroupsCustomerEndpoint(CMainCode: number, CSubCode: number): Observable {\r\n const endpointUrl = CMainCode ? `${this.GroupNameUrl}/${CMainCode}/${CSubCode}` : `${this.GroupNameUrl}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getGroupsCustomerEndpoint(CMainCode, CSubCode));\r\n }));\r\n }\r\n\r\n getOstanEndpoint(): Observable {\r\n return this.http.get(this.PubOstanUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getOstanEndpoint());\r\n }));\r\n }\r\n\r\n getCitiEndpoint(OstanCode?: number): Observable {\r\n return this.http.get(`${this.PubCitiesUrl}/${OstanCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getCitiEndpoint());\r\n }));\r\n }\r\n\r\n getRequestInvoiceEndpoint(id?: string): Observable {\r\n return this.http.get(`${this.RequestInvoiceUrl}/${id}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRequestInvoiceEndpoint());\r\n }));\r\n }\r\n\r\n postRequestInvoiceEndpoin(requestInvoice: RequestInvoiceModel[]): Observable {\r\n return this.http.post(this.PostRequestInvoiceUrl, requestInvoice).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.postRequestInvoiceEndpoin(requestInvoice));\r\n }));\r\n }\r\n\r\n updateRevertInvoiceEndpoin(requestInvoiceId: number, revertInvoiceNumber: number) {\r\n let body = {requestInvoiceId, revertInvoiceNumber};\r\n return this.http.put(this.UpdateRevertInvoiceUrl + `/${requestInvoiceId}/${revertInvoiceNumber}`, body).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.updateRevertInvoiceEndpoin(requestInvoiceId, revertInvoiceNumber));\r\n }));\r\n }\r\n\r\n getPubCarKindsEndPoint(): Observable {\r\n return this.http.get(this.PubCarKindsList).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPubCarKindsEndPoint());\r\n }));\r\n }\r\n\r\n DepoProductUnitsEndPoint(): Observable {\r\n return this.http.get(this.DepoProductUnitsUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.DepoProductUnitsEndPoint());\r\n }));\r\n }\r\n\r\n getPubCarsEndPoint(): Observable {\r\n return this.http.get(this.PubCarsList).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPubCarsEndPoint());\r\n }));\r\n }\r\n\r\n getPubDriverEndPoint(DCCode: number): Observable {\r\n const endpointUrl = `${this.PubDriverListUrl}/${DCCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPubDriverEndPoint(DCCode));\r\n }));\r\n }\r\n\r\n GetCarsPropertiesEndPoint(CNumber: string): Observable {\r\n const endpointUrl = `${this.GetCarsPropertiesUrl}/${CNumber}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCarsPropertiesEndPoint(CNumber));\r\n }));\r\n }\r\n\r\n GetPubDriversEndPoint(CarNum: string, CarSerial: string, carCode: number): Observable {\r\n const endpointUrl = `${this.GetPubDriversUrl}/${CarNum}/${CarSerial}/${carCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetPubDriversEndPoint(CarNum, CarSerial, carCode));\r\n }));\r\n }\r\n\r\n GetRequestAssignmentDetailSelectEndPoint(RANum: number, year: number, DepCode: string): Observable {\r\n const endpointUrl = `${this.GetRequestAssignmentDetailSelectUrl}/${RANum}/${year}/${DepCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetRequestAssignmentDetailSelectEndPoint(RANum, year, DepCode));\r\n }));\r\n }\r\n\r\n getNewRoleEndpoint(roleObject: any): Observable {\r\n return this.http.post(this.rolesUrl, JSON.stringify(roleObject)).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewRoleEndpoint(roleObject));\r\n }));\r\n }\r\n\r\n getUpdateRoleEndpoint(roleObject: any, roleId: string): Observable {\r\n const endpointUrl = `${this.rolesUrl}/${roleId}`;\r\n return this.http.put(endpointUrl, JSON.stringify(roleObject)).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateRoleEndpoint(roleObject, roleId));\r\n }));\r\n }\r\n\r\n getDeleteRoleEndpoint(roleId: string): Observable {\r\n const endpointUrl = `${this.rolesUrl}/${roleId}`;\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeleteRoleEndpoint(roleId));\r\n }));\r\n }\r\n\r\n getPermissionsEndpoint(): Observable {\r\n return this.http.get(this.permissionsUrl).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPermissionsEndpoint());\r\n }));\r\n }\r\n\r\n getStoreList(): Observable {\r\n return this.http.get(this.StoreList).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getStoreList());\r\n }));\r\n }\r\n\r\n installmentsEndpoint(installmentData: any): Observable {\r\n return this.http.post(this.Installments, installmentData).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.installmentsEndpoint(installmentData));\r\n }));\r\n }\r\n\r\n getInstallmentsEndpoint(SPIYear: number, SPIPartCode: number, SPICode: number): Observable {\r\n return this.http.get(`${this.GetTbl_Installments}/${SPIYear}/${SPIPartCode}/${SPICode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getInstallmentsEndpoint(SPIYear, SPIPartCode, SPICode));\r\n }));\r\n }\r\n\r\n getRequestRevertFromSale(sdCode: string, year: number, requestType: number): Observable {\r\n return this.http.get(`${this.GetRequestRevertFromSale}/${sdCode}/${year}/${requestType}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRequestRevertFromSale(sdCode, year, requestType));\r\n }));\r\n }\r\n\r\n getUpdateNationalCode(mobileNumber, nationalCode): Observable {\r\n return this.http.get(`${this.GetUpdateNationalCode}/${mobileNumber}/${nationalCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateNationalCode(mobileNumber, nationalCode));\r\n }));\r\n }\r\n\r\n getDepoViewDescription(serialNumber, storDepoCode): Observable {\r\n return this.http.get(`${this.GetDepoViewDescription}/${serialNumber}/${storDepoCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoViewDescription(serialNumber, storDepoCode));\r\n }));\r\n }\r\n\r\n getDepoReverToDepoes(year, depCode): Observable {\r\n return this.http.get(`${this.GetDepoReverToDepoes}/${year}/${depCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoReverToDepoes(year, depCode));\r\n }));\r\n }\r\n\r\n getDepoRevertToDepoDetailBarcode(year, drtddcode, depCode, drtdddccode): Observable {\r\n return this.http.get(`${this.GetDepoRevertToDepoDetailBarcode}/${year}/${drtddcode}/${depCode}/${drtdddccode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoRevertToDepoDetailBarcode(year, drtddcode, depCode, drtdddccode));\r\n }));\r\n }\r\n\r\n postDepoReverToDepoes(depoRevertoDepo): Observable {\r\n return this.http.post(this.PostDepoReverToDepoes, depoRevertoDepo).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.postDepoReverToDepoes(depoRevertoDepo));\r\n }));\r\n }\r\n\r\n getDepoUserSelectsAllSite(userId): Observable {\r\n return this.http.get(`${this.GetDepoUserSelectsAllSite}/${userId}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoUserSelectsAllSite(userId));\r\n }));\r\n }\r\n\r\n getDepoUnitUserSelect(userId): Observable {\r\n return this.http.get(`${this.GetDepoUnitUserSelect}/${userId}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoUnitUserSelect(userId));\r\n }));\r\n }\r\n\r\n getSaleSelectAllLoadedCountRegist(year, object, depCode): Observable {\r\n return this.http.get(`${this.GetSaleSelectAllLoadedCountRegist}/${year}/${object}/${depCode}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getSaleSelectAllLoadedCountRegist(year, object, depCode));\r\n }));\r\n }\r\n\r\n getCustomerClubList(): Observable {\r\n return this.http.get(this.GetCustomerClubList).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getCustomerClubList());\r\n }));\r\n }\r\n\r\n sendHesabSanads(sandDesc): Observable {\r\n return this.http.post(this.PostHesabSanads, sandDesc).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.sendHesabSanads(sandDesc));\r\n }));\r\n }\r\n\r\n getSalePartitions(): Observable {\r\n return this.http.get(this.GetSalePartitions).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getSalePartitions());\r\n }));\r\n }\r\n\r\n getDepoCodes(): Observable {\r\n return this.http.get(this.GetDepoCodes).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDepoCodes());\r\n }));\r\n }\r\n\r\n getNotAccessSalePartions(saleId): Observable {\r\n return this.http.get(`${this.GetNotAccessSalePartions}/${saleId}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNotAccessSalePartions(saleId));\r\n }));\r\n }\r\n\r\n getAccessSalePartions(saleId): Observable {\r\n return this.http.get(`${this.GetAccessSalePartions}/${saleId}`).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getAccessSalePartions(saleId));\r\n }));\r\n }\r\n\r\n postAccessSalePartions(body): Observable {\r\n return this.http.post(this.PostAccessSalePartions, body).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.postAccessSalePartions(body));\r\n }));\r\n }\r\n\r\n deleteAccessSalePartions(accessProduct) {\r\n let headers = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n body: accessProduct\r\n };\r\n return this.http.delete(this.PostAccessSalePartions, headers).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.deleteAccessSalePartions(accessProduct));\r\n }));\r\n }\r\n\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-main-menu',\r\n templateUrl: './main-menu.component.html',\r\n styleUrls: ['./main-menu.component.scss']\r\n})\r\n/** mainMenu component*/\r\nexport class MainMenuComponent {\r\n /** mainMenu ctor */\r\n constructor() {\r\n\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Logo\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  • \"Call(021)75968
  • \r\n
  • \"Emailinfo@lorchco.ir
  • \r\n
  • تهران،جردن، خیابان گلستان، پلاک 87
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-SG\": \"zavE\",\n\t\"./en-SG.js\": \"zavE\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\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 = \"RnhZ\";","import { Component, OnInit, ViewChild, Input, TemplateRef } from '@angular/core';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport * as moment from 'jalali-moment';\r\nimport { error } from 'jquery';\r\nimport { Router } from '@angular/router';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { VMReportCustomerResult } from '../../models/VMReportCustomerResult.model';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { NationalCodeService } from '../../services/national-code.service';\r\n\r\n@Component({\r\n selector: 'report-sale-customer-info',\r\n templateUrl: './report-sale-customer-info.component.html',\r\n styleUrls: ['./report-sale-customer-info.component.scss']\r\n})\r\nexport class ReportSaleCustomerInfoComponent implements OnInit {\r\n public isSelect = false;\r\n\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n\r\n public isEditMode = true;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public formResetToggle = true;\r\n columns: any[] = [];\r\n group = '';\r\n\r\n public depocode: string = \"\";\r\n public deponame: string = \"\";\r\n public partcode: number = 5;\r\n public spiCode: string = \"\";\r\n public ncCode: string = \"\";\r\n public cMain: number = 0;\r\n public cSub: number = 0;\r\n public cName: string = \"\";\r\n public cSubName: string = \"\";\r\n public customerId: number = 0;\r\n public customerName: string = \"\";\r\n public customerAddress: string = \"\";\r\n public customerMobile: string = \"\";\r\n public customerNationalCode: string = \"\";\r\n public checkNationalCode: boolean = true;\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public PreInvoiceObj: PreInvoice = new PreInvoice();\r\n public ListBarcodesObj: VMReportCustomerResult[] = [];\r\n loadingIndicator: boolean;\r\n rowsCach: VMReportCustomerResult[] = [];\r\n rows: VMReportCustomerResult[] = [];\r\n serverDate: Date;\r\n public updateNationalCodeForm: FormGroup;\r\n public UpdateNationalCodeCallback: () => void;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n public AllBed: number = 0;\r\n public AllBes: number = 0;\r\n public Allremain: number = 0;\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private authService: AuthService,\r\n private translationService: AppTranslationService,\r\n private myaccountService: MyAccountService,\r\n private fBuilder: FormBuilder\r\n ) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n this.LoadForm();\r\n this.updateNationalCodeForm = this.fBuilder.group({\r\n nationalCode: new FormControl('', [Validators.required, Validators.minLength(10), Validators.maxLength(10)])\r\n })\r\n }\r\n\r\n LoadForm() {\r\n if (!this.isGeneralEditor) {\r\n\r\n }\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n {\r\n prop: 'index', name: 'ردیف', width: 50, frozenLeft: true, cellTemplate: this.indexTemplate,\r\n canAutoResize: false, summaryFunc: cells => this.DetailSummery(cells)\r\n },\r\n { prop: 'date', name: gT('تاریخ'), width: 110 },\r\n { prop: 'spiCode', name: gT('شماره پیش فاکتور'), width: 160, summaryFunc: () => null },\r\n { prop: 'ncCode', name: gT('شماره قرارداد'), width: 110, summaryFunc: () => null },\r\n { prop: 'status', name: gT('وضعیت'), width: 110, summaryFunc: () => null },\r\n { prop: 'sumProductInvoiced', name: gT('تعداد اقلام'), width: 100, summaryFunc: cells => this.SumMoney(cells) },\r\n //{ prop: 'sumProductContracted', name: gT('تعداد اقلام قرارداد'), width: 150, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'sumPriceInvoiced', name: gT('مبلغ پیش فاکتور'), width: 150, summaryFunc: cells => this.SumMoney(cells) },\r\n //{ prop: 'sumPriceContracted', name: gT('مبلغ قرارداد'), width: 150, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'sumPayment', name: gT('مبلغ پرداختی'), width: 150, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'remanid', name: gT('مقدار مانده'), width: 110, summaryFunc: cells => this.SumRemanid(cells) },\r\n ];\r\n this.columns.push({ name: '', width: 160, resizeable: false, cellTemplate: this.actionsTemplate, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n }\r\n\r\n private SumRemanid(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum = currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n\r\n loadReportCustomer() {\r\n\r\n this.loadingIndicator = true;\r\n this.myaccountService.GetReportCustomerSelect(Number(this.authService.currentUser.phoneNumber), Number(this.partcode), this.depocode, this.cMain, this.cSub, this.customerId, Number(this.spiCode), null, null).subscribe(results => this.GetReportCustomerSelectSuccess(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private GetReportCustomerSelectSuccess(list: VMReportCustomerResult[]) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.checkNationalCode = true;\r\n this.AllBed = 0;\r\n this.AllBes = 0;\r\n this.Allremain = 0;\r\n this.cName = \"\";\r\n this.cSubName = \"\";\r\n this.deponame = this.PreInvoiceObj.depoName;\r\n this.cName = this.PreInvoiceObj.cName;\r\n this.cSubName = this.PreInvoiceObj.cAddress;\r\n\r\n list.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1;\r\n this.AllBed = this.AllBed + Number(user.sumPriceContracted);\r\n this.AllBes = this.AllBes + Number(user.sumPayment);\r\n\r\n this.customerId = user.customerID;\r\n this.customerAddress = user.customerAddress;\r\n this.customerName = user.customerName;\r\n this.customerMobile = user.customerMobile;\r\n this.customerNationalCode = user.customerNationalCode;\r\n\r\n if (user.customerMobile != null) {\r\n if (user.customerNationalCode == null) {\r\n this.checkNationalCode = false;\r\n }\r\n }\r\n\r\n });\r\n\r\n this.Allremain = this.AllBed - this.AllBes;\r\n\r\n this.rowsCach = [...list];\r\n this.rows = list;\r\n\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n } else {\r\n }\r\n this.resetData();\r\n //this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n }\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n //this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n reset() {\r\n //this.rowsCach = [];\r\n this.rows = [];\r\n this.isEditMode = false;\r\n this.sPIPartCode = 0;\r\n this.AllBed = 0;\r\n this.AllBes = 0;\r\n this.Allremain = 0;\r\n }\r\n\r\n resetData() {\r\n this.reset();\r\n this.LoadForm();\r\n }\r\n\r\n submitUpdateNationalCode() {\r\n let natioanalCode = this.updateNationalCodeForm.controls['nationalCode'].value;\r\n if (this.updateNationalCodeForm.valid) {\r\n this.accountService.getUpdateNationalCode(this.customerMobile, natioanalCode).subscribe(\r\n (res) => {\r\n this.alertService.showStickyMessage('ذخیره شد', 'کد ملی مشتری ذخیره شد.', MessageSeverity.success);\r\n this.updateNationalCodeForm.reset();\r\n this.UpdateNationalCodeCallback();\r\n //window.location.reload();\r\n },\r\n (err) => {\r\n this.alertService.showStickyMessage('خطا', 'احتمالا مشکلی پیش آمده است.', MessageSeverity.error);\r\n })\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
عنوان انبار: {{deponame}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n عنوان طرف حساب: {{cName}} \r\n ({{customerName}}) \r\n
\r\n
\r\n\r\n
\r\n
\r\n آدرس فروشگاه: {{cSubName}} \r\n
\r\n
\r\n\r\n
\r\n
\r\n آدرس مشتری: {{customerAddress}} \r\n
\r\n
\r\n\r\n
\r\n
\r\n شماره تلفن مشتری: {{customerMobile}} \r\n
\r\n
\r\n\r\n
\r\n
\r\n کد ملی: {{customerNationalCode}} \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n کد ملی مشتری\r\n \r\n لطفا کد ملی ده رقمی وارد کنید\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n {{value}}\r\n \r\n\r\n \r\n {{group}}\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n \r\n
\r\n تسویه\r\n
\r\n
\r\n حذف\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n
* تذکر: درصورتی که کالایی دارای تخفیف باشد، با برگشت از فروش تخفیف کد کالا، نسبت به تعداد / مبلغ کالا امکان لغو و یا تغییر را خواهد داشت.
\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

گزارشات

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

نقدی

\r\n \r\n
\r\n
\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 {ViewChild, OnInit, TemplateRef, ErrorHandler, Input, ContentChild, ViewChildren, ElementRef} from '@angular/core';\r\nimport {Component} from '@angular/core';\r\nimport {Utilities} from '../../services/utilities';\r\nimport {AccountService} from '../../services/account.service';\r\nimport {ModalDirective} from 'ngx-bootstrap/modal/public_api';\r\nimport {AppTranslationService} from '../../services/app-translation.service';\r\nimport {AlertService, MessageSeverity, DialogType} from '../../services/alert.service';\r\nimport {AuthService} from '../../services/auth.service';\r\nimport {ReportAll} from '../../models/ReportAll.model';\r\nimport {Warning} from '../../models/Warning.model';\r\nimport {GetDepoAssignmentWithSerialResult} from '../../models/GetDepoAssignmentWithSerialResult.model';\r\nimport {DepoRevertToDepoCustomer} from '../../models/DepoRevertToDepoCustomer.model';\r\nimport {DepoRevertToDepoCustomerDetail} from '../../models/DepoRevertToDepoCustomerDetail.model';\r\nimport {DatePipe} from '@angular/common';\r\nimport {Depos1} from '../../models/Depos1.model';\r\nimport {MyAccountService} from '../../services/MyAccount.service';\r\nimport {VMDepoRevertToDepoCustomers} from '../../models/VMDepoRevertToDepoCustomers.model';\r\nimport {SharedService} from '../../services/Shared.service';\r\nimport {invpricecomponent} from './inv-price.component';\r\nimport {VMSalePriceProductInfoForSalePerInvoiceBack} from '../../models/VMSalePriceProductInfoForSalePerInvoiceBack.model';\r\nimport {SaleClosingManagementService} from '../../services/base-services/sale-closing-management.service';\r\n\r\n@Component({\r\n selector: 'returned-info',\r\n templateUrl: './returned-info.component.html',\r\n styleUrls: ['./returned-info.component.scss'],\r\n providers: [DatePipe]\r\n})\r\nexport class returnedinfocomponent {\r\n\r\n columns: any[] = [];\r\n public SerialNUmber: string;\r\n public nccode: string;\r\n public assnumber: string;\r\n public isExistInvoice = false;\r\n public assdate: string;\r\n public NewCode: string;\r\n public cname: string;\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n public cMain: number;\r\n public cSub: number;\r\n public isSavingAssignDepo = false;\r\n public DepoRevertObj: DepoRevertToDepoCustomer = new DepoRevertToDepoCustomer();\r\n public DepoRevertObjDetail: DepoRevertToDepoCustomerDetail = new DepoRevertToDepoCustomerDetail();\r\n public allDepos: Depos1[] = [];\r\n public Depocode: string;\r\n rowSerial: GetDepoAssignmentWithSerialResult[] = [];\r\n rowSerialCash: GetDepoAssignmentWithSerialResult[] = [];\r\n serverDate: Date;\r\n isViewOnly: false;\r\n uniqueId = '';\r\n isGeneralEditor = false;\r\n public spiCode: number;\r\n public spiYear: number;\r\n public spiPartCode: number;\r\n\r\n @ViewChild('editorModalReports', {static: false})\r\n editorModalReports: ModalDirective;\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private accountService: AccountService,\r\n private translationService: AppTranslationService,\r\n private saleClosingManagementService: SaleClosingManagementService,\r\n private authService: AuthService,\r\n private datePipe: DatePipe,\r\n private sharedService: SharedService,\r\n private myaccountService: MyAccountService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n @Input()\r\n\r\n rowsReportCache: ReportAll[] = [];\r\n rowsReport: ReportAll[] = [];\r\n public isError = false;\r\n public objwarning: Warning = new Warning();\r\n loadingIndicator: boolean;\r\n selected = [];\r\n\r\n\r\n @ViewChild('indexTemplate', {static: true})\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', {static: true})\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('myTable', {static: true}) table: any;\r\n //public date: string;\r\n public dateObject: string;\r\n\r\n isPositivePrice = true;\r\n @ViewChild('priceEditor', {static: false})\r\n priceEditor: invpricecomponent;\r\n @ViewChild('editorModalprice', {static: false})\r\n editorModalprice: ModalDirective;\r\n\r\n ngOnInit() {\r\n this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\r\n //var yourDate = this.serverDate;\r\n //this.date = this.datePipe.transform(yourDate.setDate(yourDate.getDate() + 1), 'yyyy-MM-dd');\r\n //this.date = this.datePipe.transform(this.serverDate.setDate(this.serverDate.getDate() + 1), 'yyyy-MM-dd');\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n {prop: 'index', name: gT('returned.Index'), width: 60, cellTemplate: this.indexTemplate, canAutoResize: false},\r\n {prop: 'dapddcCode', name: gT('returned.ProductCode'), width: 120},\r\n {prop: 'dcDesc', name: gT('returned.ProductName'), width: 300},\r\n {prop: 'serialCode', name: gT('returned.SerialNumber'), width: 170},\r\n {prop: 'ncpPrice', name: gT('returned.UnitPrice'), width: 120, summaryFunc: cells => this.SumMoney(cells)},\r\n //{ prop: 'approvedDiscountValuePercent', name: gT('درصد تخفیف'), width: 120, summaryFunc: cells => this.SumMoney(cells) },\r\n //{ prop: 'approvedDiscountValuePrice', name: gT('مبلغ تخفیف'), width: 120, summaryFunc: cells => this.SumMoney(cells) },\r\n {prop: 'discountValuePercent', name: gT('returned.DiscountPercent'), width: 120, summaryFunc: cells => this.SumMoney(cells)},\r\n {prop: 'discountValuePrice', name: gT('returned.TheAmountOfDiscount'), width: 120, summaryFunc: cells => this.SumMoney(cells)},\r\n {prop: 'ncpPriceAfterDiscount', name: gT('returned.PriceAfterDiscount'), width: 120, summaryFunc: cells => this.SumMoney(cells)},\r\n {prop: 'tax', name: gT('returned.Taxation'), width: 120, summaryFunc: cells => this.SumMoney(cells)},\r\n {prop: 'ncpPriceTotal', name: gT('returned.TotalPrice'), width: 120, summaryFunc: cells => this.SumMoney(cells)}\r\n ];\r\n\r\n this.columns.push({name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false});\r\n this.loaddata();\r\n }\r\n\r\n reportsModal() {\r\n this.editorModalReports.show();\r\n }\r\n\r\n onEditorModalHidden() {\r\n }\r\n\r\n\r\n public isSaving = false;\r\n\r\n save() {\r\n this.isSaving = true;\r\n\r\n }\r\n\r\n saveSendProduct() {\r\n this.DepoRevertObj.DRTDCCode = Number(this.NewCode);\r\n this.DepoRevertObj.DRTDCCostomerCode = this.cMain;\r\n this.DepoRevertObj.DRTDCSubCostomerCode = this.cSub;\r\n this.DepoRevertObj.DRTDCDepCode = this.Depocode;\r\n this.DepoRevertObj.DRTDCOther = 0;\r\n this.DepoRevertObj.DRTDCPriceall = this.allsum;\r\n this.DepoRevertObj.DRTDCRemain = 0;\r\n //this.DepoRevertObj.DRTDCRevertDate = new Date().toLocaleDateString('en-US');\r\n //this.DepoRevertObj.DRTDCSysDate = new Date().toLocaleDateString('en-US');\r\n //this.DepoRevertObj.DRTDCRevertDatePrice = new Date().toLocaleDateString('en-US');\r\n this.DepoRevertObj.DRTDCRevertDate = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoRevertObj.DRTDCSysDate = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoRevertObj.DRTDCRevertDatePrice = this.serverDate.toLocaleDateString('en-US');\r\n\r\n\r\n this.DepoRevertObj.DRTDCUserCode = 27;\r\n this.DepoRevertObj.DRTDPartCode = 5;\r\n this.DepoRevertObj.DRTDFromAssignment = Number(this.assnumber);\r\n this.DepoRevertObj.DRTDFromAssignmentYear = Number(this.authService.currentUser.phoneNumber);\r\n this.DepoRevertObj.DRTDCYear = Number(this.authService.currentUser.phoneNumber);\r\n this.accountService.DepoRevertToDepoCustomersInsert(this.DepoRevertObj)\r\n .subscribe(a => this.DepoRevertToDepoCustomersInsertSave(),\r\n error => this.SaveError(error));\r\n }\r\n\r\n async DepoRevertToDepoCustomersInsertSave(): Promise {\r\n await this.accountService.DepoRevertToDepoCustomerDetailsInsert(this.rowSerial)\r\n .subscribe(res => {\r\n this.alertService.showMessage('Success', 'مرجوعی محصول با موفقیت انجام شد', MessageSeverity.success);\r\n this.isSavingAssignDepo = true;\r\n },\r\n error => this.SaveError(error));\r\n }\r\n\r\n allsum: number;\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n this.allsum = filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, {code: 'USD'})), 0);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, {code: 'USD'})), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n loaddata() {\r\n this.myaccountService.getDeposOwner(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n //this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res));\r\n }\r\n\r\n //MethodTest1(res: number): void {\r\n // this.accountService.getDepos(res).subscribe(res => this.methodLoaddepos(res));\r\n //}\r\n methodLoaddepos(res: import(\"../../models/Depos1.model\").Depos1[]): void {\r\n this.allDepos = res;\r\n this.allDepos.forEach((user, index) => {\r\n if (index == 0) {\r\n this.Depocode = user.value;\r\n this.accountService.GetNewCodeRevert(Number(this.authService.currentUser.phoneNumber), Number(this.Depocode)).subscribe(results => this.onDataLoadNewCode(results), error => this.onDataLoadFailed(error));\r\n }\r\n });\r\n }\r\n\r\n onDataLoadNewCode(res: number): void {\r\n this.NewCode = res.toString();\r\n }\r\n\r\n select(event: number) {\r\n this.Depocode = event.toString();\r\n this.accountService.GetNewCodeRevert(Number(this.authService.currentUser.phoneNumber), event).subscribe(results => this.onDataLoadNewCode(results), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n isInputTxtKeyNumber: boolean;\r\n @ViewChild(\"txtserial\") searchElement: ElementRef;\r\n\r\n //@ViewChild('txtserial', { static: true }) searchElement: ElementRef;\r\n\r\n public LoadingSearch(msg: string) {\r\n this.alertService.startLoadingMessage(msg, 'Search...');\r\n }\r\n\r\n public SuccessSearch_Sticky(msg: string) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', msg, MessageSeverity.success);\r\n this.SerialNUmber = \"\";\r\n this.isInputTxtKeyNumber = false;\r\n this.onFocus();\r\n }\r\n\r\n public SuccessSearch(msg: string) {\r\n this.alertService.showMessage('Success', msg, MessageSeverity.success);\r\n this.EmptySearch();\r\n }\r\n\r\n public WaringSearch(msg: string) {\r\n this.alertService.showMessage('Waring', msg, MessageSeverity.warn);\r\n this.EmptySearch();\r\n }\r\n\r\n public ErrorSearch(msg: string) {\r\n this.alertService.showMessage('Error', msg, MessageSeverity.error);\r\n this.EmptySearch();\r\n }\r\n\r\n public FailedSearch(error: any) {\r\n this.alertService.showMessage('Error', `Failed.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`, MessageSeverity.error);\r\n this.EmptySearch();\r\n }\r\n\r\n public EmptySearch() {\r\n this.SerialNUmber = \"\";\r\n this.alertService.stopLoadingMessage();\r\n this.isInputTxtKeyNumber = false;\r\n this.onFocus();\r\n }\r\n\r\n public onFocus() {\r\n if (true) {\r\n setTimeout(() => {\r\n this.searchElement.nativeElement.focus();\r\n }, 500);\r\n }\r\n //if (this.preinvoicenew) {\r\n // setTimeout(() => { // this will make the execution after the above boolean has changed\r\n // this.searchElement.nativeElement.focus();\r\n // }, 0);\r\n //}\r\n }\r\n\r\n onKeydownSerial(event) {\r\n this.LoadingSearch(\"در حال جستجوی بارکد ...\");\r\n if ((this.SerialNUmber == null || this.SerialNUmber == \"\" || this.SerialNUmber == \"undefinded\")) {\r\n this.WaringSearch('بارکد / کد کالا را وارد نمایید.');\r\n return;\r\n }\r\n this.isInputTxtKeyNumber = true;\r\n this.myaccountService.CheckDepoAssignmentIsRevertSerial(Number(this.authService.currentUser.phoneNumber), Number(this.Depocode), this.SerialNUmber).subscribe(\r\n results => this.checkrepeat(results),\r\n error => this.ErrorSearch(error));\r\n }\r\n\r\n index: number = 0;\r\n\r\n checkrepeat(res: boolean) {\r\n if (!res) {\r\n this.accountService.GetDepoAssignmentWithSerialListEndPoint(this.SerialNUmber, 5, Number(this.Depocode)).subscribe(\r\n results => this.onDataLoadSuccessfulDepoAssignmentWithSerial(results, this.SerialNUmber),\r\n error => this.ErrorSearch(error));\r\n } else {\r\n this.ErrorSearch('بارکد کالای ' + this.SerialNUmber + ' قبلا مرجوع شده است.');\r\n }\r\n }\r\n\r\n datediffrent: number;\r\n\r\n onDataLoadSuccessfulDepoAssignmentWithSerial(results: import(\"../../models/GetDepoAssignmentWithSerialResult.model\").GetDepoAssignmentWithSerialResult[], SerialNUmber: string): void {\r\n if (results != null && results.length > 0) {\r\n results.forEach((user) => {\r\n var CheckRepeat = true;\r\n this.rowSerialCash.forEach((obserial) => {\r\n if (obserial.serialCode == SerialNUmber) {\r\n CheckRepeat = false;\r\n }\r\n });\r\n if (CheckRepeat) {\r\n\r\n if ((this.assnumber == undefined || this.assnumber == null || this.assnumber == \"\") || user.dapCode.toString() == this.assnumber) {\r\n //const oneDay = (24 * 60 * 60 * 1000) * 7\r\n //const test1 = Number(new Date(this.date));\r\n //const test2 = Number(new Date(user.dapDateAssignment));\r\n //this.datediffrent = Math.round(Math.abs((test1 - test2) / oneDay));\r\n //ToDo:تاریخ مرجوعی باید اصلاح شود Error Error\r\n var date1 = new Date(user.dapDateAssignment).toLocaleDateString('fa-IR');\r\n //var date1 = new Date(date).toLocaleDateString('en-US');\r\n\r\n this.datediffrent = this.sharedService.checkDate(this.sharedService.getDateToMoment(date1));\r\n\r\n if (this.datediffrent <= 7) { //true this.datediffrent <= 7\r\n this.accountService.CheckExsitInvoiceAss(user.dapCode, Number(this.authService.currentUser.phoneNumber), Number(this.Depocode)).subscribe(\r\n results => this.checkDiscountInvoice(results, user, SerialNUmber),\r\n error => this.ErrorSearch(error));\r\n } else {\r\n this.ErrorSearch('از تاریخ حواله \\\"' + user.dapCode + '\\\" گذشته است ');\r\n }\r\n } else {\r\n this.ErrorSearch('شماره سریال ها باید از یک حواله باشند');\r\n }\r\n } else {\r\n this.ErrorSearch('شماره سریال تکراری می باشد');\r\n }\r\n });\r\n } else {\r\n this.ErrorSearch('سریال وارد شده نا معتبر است.');\r\n }\r\n }\r\n\r\n checkDiscountInvoice(results: boolean, selectSerial: GetDepoAssignmentWithSerialResult, SerialNUmber: string): void {\r\n selectSerial.countBack = \"1\";\r\n var count = 1;\r\n this.rowSerialCash.forEach((user) => {\r\n if (user.dapddcCode == selectSerial.dapddcCode) {\r\n count = this.rowSerialCash.filter(a => a.dapddcCode == selectSerial.dapddcCode).length + 1;\r\n }\r\n });\r\n selectSerial.discountValuePrice = selectSerial.discountValuePrice != null ? selectSerial.discountValuePrice : 0;\r\n selectSerial.discountValuePercent = selectSerial.discountValuePercent != null ? selectSerial.discountValuePercent : 0;\r\n //var spipAmount = selectSerial.discountDocumentId > 0 ? selectSerial.spipAmount : selectSerial.countBack;\r\n var ProductCount = selectSerial.discountDocumentId > 0 ? selectSerial.spipAmount - (count + selectSerial.returnedProductCount) : count;\r\n //ProductCount = ProductCount == 0 ? selectSerial.spipAmount : ProductCount;\r\n this.myaccountService.getSalePriceProductInfoForSaleInvoiceBack(selectSerial.spiYear, selectSerial.cMainCode, selectSerial.discountDocumentId, selectSerial.spiCode, selectSerial.spiPartCode, Number(this.Depocode), selectSerial.dapCode, selectSerial.dapddcCode, ProductCount, selectSerial.discountValuePrice, selectSerial.discountValuePercent)\r\n .subscribe(\r\n res => this.CheckReturnInvoice(results, selectSerial, SerialNUmber, res),\r\n error => this.FailedSearch(error)\r\n );\r\n }\r\n\r\n CheckReturnInvoice(results: boolean, selectSerial: GetDepoAssignmentWithSerialResult, SerialNUmber: string, newRow: VMSalePriceProductInfoForSalePerInvoiceBack): void {\r\n selectSerial.countBack = \"1\";\r\n var spipAmount = selectSerial.discountDocumentId > 0 ? this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.spipAmount) : this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.countBack);\r\n var count = 1;\r\n let InvoiceUnitPrice = 0;\r\n let InvoiceCount = 0;\r\n let InvoiceRealCount = 0;\r\n let InvoiceBackCount = 0;\r\n let InvoiceBeforeBackCount = 0;\r\n let InvoiceBeforeBackDiscountPercent = 0;\r\n let InvoiceBeforeBackDiscountPrice = 0;\r\n\r\n let InvoiceBackDiscountUnitPercent = 0;\r\n let InvoiceBackDiscountUnitPrice = 0;\r\n let InvoiceBackDiscountTotalPrice = 0;\r\n let InvoiceBackAfterDiscountUnitPrice = 0;\r\n let InvoiceBackTotalPrice = 0;\r\n let DiscountAmountId = \"\";\r\n\r\n this.rowSerialCash.forEach((user) => {\r\n if (user.dapddcCode == selectSerial.dapddcCode) {\r\n count = this.rowSerialCash.filter(a => a.dapddcCode == selectSerial.dapddcCode).length + 1;\r\n }\r\n });\r\n\r\n if (newRow != null) {\r\n\r\n InvoiceUnitPrice = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.ncpPrice);\r\n InvoiceCount = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.spipAmount);\r\n InvoiceRealCount = this.sharedService.CurrencyFormatterConvertToNumber(newRow.productCount);\r\n InvoiceBackCount = count;\r\n InvoiceBeforeBackCount = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.returnedProductCount);\r\n InvoiceBeforeBackDiscountPercent = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.returnedDiscountPercent);\r\n InvoiceBeforeBackDiscountPrice = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.returnedDiscountPrice);\r\n\r\n if (newRow.productCount == 0) {\r\n DiscountAmountId = selectSerial.discountAmountId;\r\n } else {\r\n DiscountAmountId = newRow.discountAmountId;\r\n selectSerial.discountAmountId = newRow.discountAmountId;\r\n\r\n }\r\n if (DiscountAmountId == \"Percentage\") {\r\n InvoiceBackDiscountUnitPercent = Number(((((InvoiceBeforeBackCount + InvoiceBackCount) * this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePercent)) +\r\n (((InvoiceCount - (InvoiceBeforeBackCount + InvoiceBackCount)) * (this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePercent) - this.sharedService.CurrencyFormatterConvertToNumber(newRow.discountValue))))) -\r\n (InvoiceBeforeBackDiscountPercent)).toFixed(3));\r\n\r\n InvoiceBackDiscountUnitPrice = InvoiceUnitPrice * InvoiceBackDiscountUnitPercent / 100;\r\n\r\n } else if (DiscountAmountId == \"Amount\") {\r\n InvoiceBackDiscountUnitPrice = Number(((((InvoiceBeforeBackCount + InvoiceBackCount) * this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePrice)) +\r\n (((InvoiceCount - (InvoiceBeforeBackCount + InvoiceBackCount)) * (this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePrice) - this.sharedService.CurrencyFormatterConvertToNumber(newRow.discountValue))))) -\r\n (InvoiceBeforeBackDiscountPrice)).toFixed(3));\r\n\r\n InvoiceBackDiscountUnitPercent = Number(this.sharedService.getPriceToPercentage(InvoiceBackDiscountUnitPrice, InvoiceUnitPrice).toFixed(3));\r\n ;\r\n } else {//Not Discount\r\n InvoiceBackDiscountUnitPercent = 0;\r\n InvoiceBackDiscountUnitPrice = 0;\r\n }\r\n\r\n\r\n InvoiceBackDiscountTotalPrice = InvoiceBackDiscountUnitPrice * (InvoiceBackCount);\r\n InvoiceBackAfterDiscountUnitPrice = InvoiceUnitPrice - InvoiceBackDiscountUnitPrice;\r\n InvoiceBackTotalPrice = (InvoiceBackCount) * InvoiceBackAfterDiscountUnitPrice;\r\n\r\n }\r\n\r\n this.rowSerialCash.forEach((user) => {\r\n if (user.dapddcCode == selectSerial.dapddcCode) {\r\n //count = this.rowSerialCash.filter(a => a.dapddcCode == selectSerial.dapddcCode).length + 1;\r\n user.ncpPrice = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.ncpPrice);\r\n user.approvedDiscountValuePercent = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePercent);\r\n user.approvedDiscountValuePrice = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePrice);\r\n user.discountValuePercent = ((InvoiceBackDiscountUnitPercent) / count);// * Number(spipAmount)\r\n user.discountValuePrice = ((InvoiceBackDiscountUnitPrice) / count);// * Number(spipAmount)\r\n user.ncpPriceAfterDiscount = ((Number(this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.ncpPrice)) - Number(this.sharedService.CurrencyFormatterConvertToNumber(user.discountValuePrice))) * Number(1));\r\n user.tax = Math.round((9 * Number(this.sharedService.CurrencyFormatterConvertToNumber(user.ncpPriceAfterDiscount))) / 100);\r\n user.ncpPriceTotal = (Number(this.sharedService.CurrencyFormatterConvertToNumber(user.ncpPriceAfterDiscount)) + Number(this.sharedService.CurrencyFormatterConvertToNumber(user.tax)));\r\n\r\n }\r\n });\r\n\r\n this.index = this.index + 1;\r\n (selectSerial as any).index = this.index;\r\n\r\n selectSerial.drtdcdyear = Number(this.authService.currentUser.phoneNumber);\r\n selectSerial.drtdcddepdode = this.Depocode;\r\n selectSerial.drtdcdcode = Number(this.NewCode);\r\n selectSerial.approvedDiscountValuePercent = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePercent);\r\n selectSerial.approvedDiscountValuePrice = this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.approvedDiscountValuePrice);\r\n selectSerial.discountValuePercent = ((Number(InvoiceBackDiscountUnitPercent)) / count);// * Number(spipAmount)\r\n selectSerial.discountValuePrice = ((Number(InvoiceBackDiscountUnitPrice)) / count);// * Number(spipAmount)\r\n selectSerial.ncpPriceAfterDiscount = ((Number(this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.ncpPrice)) - Number(this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.discountValuePrice))));\r\n selectSerial.tax = Math.round((9 * Number(this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.ncpPriceAfterDiscount))) / 100);\r\n selectSerial.ncpPriceTotal = (Number(this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.ncpPriceAfterDiscount)) + Number(this.sharedService.CurrencyFormatterConvertToNumber(selectSerial.tax)));\r\n this.nccode = selectSerial.contractCode.toString();\r\n this.cname = selectSerial.cName;\r\n this.assnumber = selectSerial.dapCode.toString();\r\n selectSerial.serialCode = SerialNUmber;\r\n this.cMain = selectSerial.cMainCode;\r\n this.cSub = selectSerial.cSubCode;\r\n this.assdate = new Date(selectSerial.dapDateAssignment.toString()).toLocaleDateString('fa-IR');\r\n this.rowSerialCash.push(selectSerial);\r\n this.rowSerial = [...this.rowSerialCash];\r\n this.SuccessSearch('شماره سریال به لیست اضافه گردید.');\r\n this.isSavingAssignDepo = false;\r\n this.isExistInvoice = results;\r\n this.spiCode = selectSerial.spiCode;\r\n this.spiYear = selectSerial.spiYear;\r\n this.spiPartCode = selectSerial.spiPartCode;\r\n\r\n this.rowSerialCash = this.rowSerialCash;\r\n this.rowSerialCash = [...this.rowSerialCash];\r\n\r\n this.onIndexingRows(this.rowSerial);\r\n\r\n }\r\n\r\n onDataLoadFailed(error: any): void {\r\n this.alertService.showMessage('خطا', error, MessageSeverity.warn);\r\n }\r\n\r\n onDataLoadSuccessful(results: ReportAll[]): void {\r\n if (results) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n results.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n var currencyFormatter = require('currency-formatter');\r\n user.sumPrice = currencyFormatter.format(user.sumPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n user.sumPriceWithKind2 = currencyFormatter.format(user.sumPriceWithKind2, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n });\r\n this.loadingIndicator = false;\r\n this.rowsReportCache = [...results];\r\n this.rowsReport = results;\r\n }\r\n }\r\n\r\n SaveError(error: any): void {\r\n this.isSavingAssignDepo = false;\r\n throw new Error(\"Method not implemented.\" + error);\r\n }\r\n\r\n ngAfterViewInit() {\r\n }\r\n\r\n onKeydownLoad(event) {\r\n }\r\n\r\n SettlementLoad(row) {\r\n }\r\n\r\n saveDepoRevert() {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n if (this.rowSerial.length > 0) {\r\n this.isSavingAssignDepo = true;\r\n this.alertService.startLoadingMessage('ثبت برگشتی...');\r\n\r\n var isDepoRevert = 0;\r\n var isExistBarcode = \"\";\r\n this.rowSerial.forEach(async (user, index) => {\r\n this.accountService.GetDepoAssignmentWithSerialListEndPoint(user.serialCode, 5, Number(this.Depocode)).subscribe(\r\n results => {\r\n isDepoRevert += 1;\r\n isExistBarcode += user.serialCode + \" \";\r\n },\r\n error => this.onDataLoadFailed(error));\r\n });\r\n\r\n if (isDepoRevert == 0) {\r\n\r\n var rowsDepoRevertToDepoCustomer: VMDepoRevertToDepoCustomers = new VMDepoRevertToDepoCustomers();\r\n\r\n this.DepoRevertObj.DRTDCCode = Number(this.NewCode);\r\n this.DepoRevertObj.DRTDCCostomerCode = this.cMain;\r\n this.DepoRevertObj.DRTDCSubCostomerCode = this.cSub;\r\n this.DepoRevertObj.DRTDCDepCode = this.Depocode;\r\n this.DepoRevertObj.DRTDCOther = 0;\r\n this.DepoRevertObj.DRTDCPriceall = this.allsum;\r\n this.DepoRevertObj.DRTDCRemain = 0;\r\n this.DepoRevertObj.DRTDCRevertDate = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoRevertObj.DRTDCSysDate = this.serverDate.toLocaleDateString('en-US');\r\n this.DepoRevertObj.DRTDCRevertDatePrice = this.serverDate.toLocaleDateString('en-US');\r\n\r\n this.DepoRevertObj.DRTDCUserCode = 27;\r\n this.DepoRevertObj.DRTDPartCode = 5;\r\n this.DepoRevertObj.DRTDFromAssignment = Number(this.assnumber);\r\n this.DepoRevertObj.DRTDFromAssignmentYear = Number(this.authService.currentUser.phoneNumber);\r\n this.DepoRevertObj.DRTDCYear = Number(this.authService.currentUser.phoneNumber);\r\n\r\n rowsDepoRevertToDepoCustomer.depoRevertObj = this.DepoRevertObj;\r\n rowsDepoRevertToDepoCustomer.rowSerial = [...this.rowSerial];\r\n rowsDepoRevertToDepoCustomer.isExistInvoice = this.isExistInvoice;\r\n\r\n this.myaccountService.NewDepoRevertToDepoCustomer(rowsDepoRevertToDepoCustomer).subscribe(res => this.DepoRevertSaved(res), error => this.SaveError(error));\r\n } else {\r\n this.ErrorSearch('بارکد های ' + isExistBarcode + ' قبلا مرجوع شده است.');\r\n }\r\n\r\n } else {\r\n this.ErrorSearch(\"بارکدی برای مرجوعی وارد نشده است.\");\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n DepoRevertSaved(res: number[]): void {\r\n if (res != null && res.length > 0 && res[0] > 0) {\r\n var msg = \"\";\r\n if (res[0] > 0) {\r\n msg = \"مرجوعی با شماره \" + res[0] + \" ثبت شد.\";\r\n }\r\n if (res[1] > 0) {\r\n msg += \"\\n\" + \"و برگشت از فروش با شماره \" + res[1] + \" ثبت شد.\";\r\n }\r\n\r\n if (msg != \"\") {\r\n this.SuccessSearch_Sticky(msg);\r\n this.resetForm();\r\n } else {\r\n this.ErrorSearch(\"خطا! متاسفانه مرجوعی ثبت نشد، پس از بررسی مجدد اقدام نمایید.\");\r\n }\r\n } else {\r\n this.ErrorSearch(\"متاسفانه مرجوعی ثبت نشد، پس از بررسی مجدد اقدام نمایید.\");\r\n }\r\n this.isSavingAssignDepo = false;\r\n }\r\n\r\n\r\n DeleteMethodBarcode(SelectRow: GetDepoAssignmentWithSerialResult) {\r\n var count = 1;\r\n this.rowSerialCash.forEach((user) => {\r\n if (user.dapddcCode == SelectRow.dapddcCode) {\r\n count = this.rowSerialCash.filter(a => a.dapddcCode == SelectRow.dapddcCode).length - 1;\r\n\r\n }\r\n });\r\n\r\n if (this.rowSerialCash.length > 0) {\r\n SelectRow.discountValuePrice = SelectRow.discountValuePrice != null && SelectRow.discountValuePrice == undefined ? SelectRow.discountValuePrice : 0;\r\n SelectRow.discountValuePercent = SelectRow.discountValuePercent != null && SelectRow.discountValuePercent == undefined ? SelectRow.discountValuePercent : 0;\r\n var ProductCount = SelectRow.discountDocumentId > 0 ? this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.spipAmount) - (count + this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.returnedProductCount)) : count;\r\n //ProductCount = ProductCount == 0 ? SelectRow.spipAmount : ProductCount;\r\n\r\n this.myaccountService.getSalePriceProductInfoForSaleInvoiceBack(SelectRow.spiYear, SelectRow.cMainCode, SelectRow.discountDocumentId, SelectRow.spiCode, SelectRow.spiPartCode, Number(this.Depocode), SelectRow.dapCode, SelectRow.dapddcCode, ProductCount, SelectRow.discountValuePrice, SelectRow.discountValuePercent)\r\n .subscribe(\r\n res => this.CheckDiscountForDeleteMethodBarcode(SelectRow, res),\r\n error => this.FailedSearch(error)\r\n );\r\n }\r\n }\r\n\r\n CheckDiscountForDeleteMethodBarcode(SelectRow: GetDepoAssignmentWithSerialResult, newRow: VMSalePriceProductInfoForSalePerInvoiceBack) {\r\n this.rowSerialCash = this.rowSerial;\r\n this.rowSerial.forEach(async (user, index) => {\r\n\r\n if (user.serialCode == SelectRow.serialCode) {\r\n this.rowSerial.splice(index, 1);\r\n this.WaringSearch(\"بارکد \" + user.serialCode + \" از لیست حذف شد.\");\r\n }\r\n });\r\n\r\n\r\n this.rowSerialCash = [...this.rowSerial];\r\n this.rowSerialCash = this.rowSerial;\r\n\r\n var count = 1;\r\n let InvoiceUnitPrice = 0;\r\n let InvoiceCount = 0;\r\n let InvoiceRealCount = 0;\r\n let InvoiceBackCount = 0;\r\n let InvoiceBeforeBackCount = 0;\r\n let InvoiceBeforeBackDiscountPercent = 0;\r\n let InvoiceBeforeBackDiscountPrice = 0;\r\n let InvoiceBackDiscountUnitPercent = 0;\r\n let InvoiceBackDiscountUnitPrice = 0;\r\n let InvoiceBackDiscountTotalPrice = 0;\r\n let InvoiceBackAfterDiscountUnitPrice = 0;\r\n let InvoiceBackTotalPrice = 0;\r\n let DiscountAmountId = \"\";\r\n\r\n this.rowSerialCash.forEach((user) => {\r\n if (user.dapddcCode == SelectRow.dapddcCode) {\r\n count = this.rowSerialCash.filter(a => a.dapddcCode == SelectRow.dapddcCode).length;\r\n\r\n }\r\n });\r\n\r\n if (this.rowSerialCash.length > 0) {\r\n SelectRow.discountValuePrice = SelectRow.discountValuePrice != null && SelectRow.discountValuePrice == undefined ? SelectRow.discountValuePrice : 0;\r\n SelectRow.discountValuePercent = SelectRow.discountValuePercent != null && SelectRow.discountValuePercent == undefined ? SelectRow.discountValuePercent : 0;\r\n\r\n if (newRow != null) {\r\n\r\n InvoiceUnitPrice = this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.ncpPrice);\r\n InvoiceCount = this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.spipAmount);\r\n InvoiceRealCount = this.sharedService.CurrencyFormatterConvertToNumber(newRow.productCount);\r\n InvoiceBackCount = count;\r\n InvoiceBeforeBackCount = this.sharedService.CurrencyFormatterConvertToNumber(newRow.returnedProductCount);\r\n InvoiceBeforeBackDiscountPercent = this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.returnedDiscountPercent);\r\n InvoiceBeforeBackDiscountPrice = this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.returnedDiscountPrice);\r\n\r\n if (newRow.productCount == 0) {\r\n DiscountAmountId = SelectRow.discountAmountId;\r\n } else {\r\n DiscountAmountId = newRow.discountAmountId;\r\n }\r\n if (DiscountAmountId == \"Percentage\") {\r\n InvoiceBackDiscountUnitPercent = Number(((((InvoiceBeforeBackCount + InvoiceBackCount) * this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.approvedDiscountValuePercent)) +\r\n (((InvoiceCount - (InvoiceBeforeBackCount + InvoiceBackCount)) * (this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.approvedDiscountValuePercent) - this.sharedService.CurrencyFormatterConvertToNumber(newRow.discountValue))))) -\r\n (InvoiceBeforeBackDiscountPercent)).toFixed(3));\r\n\r\n InvoiceBackDiscountUnitPrice = InvoiceUnitPrice * InvoiceBackDiscountUnitPercent / 100;\r\n\r\n } else if (DiscountAmountId == \"Amount\") {\r\n InvoiceBackDiscountUnitPrice = Number(((((InvoiceBeforeBackCount + InvoiceBackCount) * this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.approvedDiscountValuePrice)) +\r\n (((InvoiceCount - (InvoiceBeforeBackCount + InvoiceBackCount)) * (this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.approvedDiscountValuePrice) - this.sharedService.CurrencyFormatterConvertToNumber(newRow.discountValue))))) -\r\n (InvoiceBeforeBackDiscountPrice)).toFixed(3));\r\n\r\n InvoiceBackDiscountUnitPercent = Number(this.sharedService.getPriceToPercentage(InvoiceBackDiscountUnitPrice, InvoiceUnitPrice).toFixed(3));\r\n ;\r\n } else {//Not Discount\r\n InvoiceBackDiscountUnitPercent = 0;\r\n InvoiceBackDiscountUnitPrice = 0;\r\n }\r\n\r\n //InvoiceBackDiscountUnitPercent = (InvoiceBackCount * SelectRow.approvedDiscountValuePercent) + ((InvoiceCount - InvoiceBackCount) * (SelectRow.approvedDiscountValuePercent - newRow.discountValue));\r\n\r\n InvoiceBackDiscountTotalPrice = InvoiceBackDiscountUnitPrice * InvoiceBackCount;\r\n InvoiceBackAfterDiscountUnitPrice = InvoiceUnitPrice - InvoiceBackDiscountUnitPrice;\r\n InvoiceBackTotalPrice = InvoiceBackCount * InvoiceBackAfterDiscountUnitPrice;\r\n\r\n }\r\n\r\n\r\n this.rowSerialCash.forEach(async (user, index) => {\r\n var spipAmount = user.discountDocumentId > 0 ? this.sharedService.CurrencyFormatterConvertToNumber(user.spipAmount) : Number(user.countBack);\r\n count = 1;\r\n\r\n if (user.dapddcCode == SelectRow.dapddcCode) {\r\n count = this.rowSerialCash.filter(a => a.dapddcCode == SelectRow.dapddcCode).length;\r\n user.ncpPrice = this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.ncpPrice);\r\n user.approvedDiscountValuePercent = this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.approvedDiscountValuePercent);\r\n user.approvedDiscountValuePrice = this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.approvedDiscountValuePrice);\r\n user.discountValuePercent = ((InvoiceBackDiscountUnitPercent) / count);// * spipAmount\r\n user.discountValuePrice = ((InvoiceBackDiscountUnitPrice) / count);// * spipAmount\r\n user.ncpPriceAfterDiscount = ((this.sharedService.CurrencyFormatterConvertToNumber(SelectRow.ncpPrice) - this.sharedService.CurrencyFormatterConvertToNumber(user.discountValuePrice)) * Number(1));\r\n user.tax = Math.round((9 * Number(this.sharedService.CurrencyFormatterConvertToNumber(user.ncpPriceAfterDiscount))) / 100);\r\n user.ncpPriceTotal = (this.sharedService.CurrencyFormatterConvertToNumber(user.ncpPriceAfterDiscount) + this.sharedService.CurrencyFormatterConvertToNumber(user.tax));\r\n }\r\n\r\n });\r\n\r\n }\r\n\r\n this.rowSerialCash = this.rowSerialCash;\r\n this.rowSerialCash = [...this.rowSerialCash];\r\n\r\n this.rowSerial = [...this.rowSerialCash];\r\n\r\n if (this.rowSerial !== null && this.rowSerial.length > 0) {\r\n\r\n } else {\r\n this.resetForm();\r\n }\r\n this.onIndexingRows(this.rowSerial);\r\n }\r\n\r\n totalAmount = 0;\r\n\r\n onIndexingRows(rowSerialObj: GetDepoAssignmentWithSerialResult[]) {\r\n\r\n rowSerialObj.forEach((user, index, SaleCustomer) => {\r\n (user as any).index = this.index = index + 1;\r\n this.totalAmount += user.ncpPriceTotal;\r\n\r\n user.ncpPrice = this.sharedService.toConvertCurrencyFormatter(user.ncpPrice);\r\n user.tax = this.sharedService.toConvertCurrencyFormatter(user.tax);\r\n user.ncpPriceAfterDiscount = this.sharedService.toConvertCurrencyFormatter(user.ncpPriceAfterDiscount);\r\n user.approvedDiscountValuePercent = this.sharedService.toConvertCurrencyFormatter(user.approvedDiscountValuePercent);\r\n user.approvedDiscountValuePrice = this.sharedService.toConvertCurrencyFormatter(user.approvedDiscountValuePrice);\r\n user.ncpPriceTotal = this.sharedService.toConvertCurrencyFormatter(user.ncpPriceTotal);\r\n user.ncpDiscountPercent = this.sharedService.toConvertCurrencyFormatter(user.ncpDiscountPercent);\r\n user.discountValuePrice = this.sharedService.toConvertCurrencyFormatter(user.discountValuePrice);\r\n\r\n });\r\n\r\n if (this.totalAmount < 0) {\r\n this.isPositivePrice = false;\r\n } else {\r\n this.isPositivePrice = true;\r\n }\r\n\r\n this.rowSerialCash = [...rowSerialObj];\r\n this.rowSerial = rowSerialObj;\r\n }\r\n\r\n DeleteMethodBarcodeALL() {\r\n this.resetForm();\r\n this.WaringSearch(\"همه بارکد ها از لیست حذف شد.\");\r\n }\r\n\r\n resetForm() {\r\n this.rowSerial = [];\r\n this.rowSerialCash = this.rowSerial;\r\n this.index = 0;\r\n this.Depocode = \"\";\r\n this.NewCode = \"\";\r\n this.nccode = \"\";\r\n this.cname = \"\";\r\n this.assnumber = \"\";\r\n this.cMain = 0;\r\n this.cSub = 0;\r\n this.spiCode = 0;\r\n this.spiYear = 0;\r\n this.spiPartCode = 0;\r\n this.assdate = new Date().toLocaleDateString('fa-IR');\r\n this.rowSerial = [...this.rowSerialCash];\r\n this.isSavingAssignDepo = false;\r\n this.isExistInvoice = false;\r\n this.isPositivePrice = true;\r\n this.onIndexingRows(this.rowSerial);\r\n this.loaddata();\r\n }\r\n\r\n ShowPay() {\r\n //row.spiIsVoid || row.spiIsAcceptedrow: PreInvoice\r\n if (this.isPositivePrice) {\r\n this.alertService.showMessage('Warning', 'امکان پرداخت بیشتر از مبلغ قرارداد نیست.', MessageSeverity.warn);\r\n } else {\r\n if (this.totalAmount > 0) {\r\n\r\n } else {\r\n\r\n }\r\n this.priceEditor.EmptyData();\r\n this.priceEditor.NumberCuntract = {name: this.nccode != null ? this.nccode : ''};\r\n this.priceEditor.SaleReceiptObj.rcontractCode = Number(this.nccode);\r\n this.priceEditor.PreSeller = {name: this.cname};\r\n this.priceEditor.NumberPreInvoic = {name: this.spiCode.toString()};\r\n this.priceEditor.Cmain = this.cMain;\r\n //this.priceEditor.SaleSubReceiptObj.RSDate = \"\";\r\n this.priceEditor.SaleSubReceiptObj.rsPrice = 0;\r\n this.priceEditor.SaleSubReceiptObj.rSerial = \"\";\r\n this.priceEditor.Csub = this.cMain;\r\n this.priceEditor.spiCode = this.spiCode;\r\n this.priceEditor.sPIYear = this.spiYear;\r\n this.priceEditor.sPIPartCode = this.spiPartCode;\r\n this.priceEditor.CuntractNumber = Number(this.nccode);\r\n this.priceEditor.AllPay = this.totalAmount;\r\n //this.priceEditor.newprice(this.allbank, this.allsalebankaccounts, this.allhesabkindbank);\r\n this.priceEditor.AllBed = Number(this.priceEditor.AllPay - this.priceEditor.AllBes);\r\n\r\n this.priceEditor.loadReceipt();\r\n this.editorModalprice.show();\r\n //this.accountService.GetRNum(1399, 5, row.contractCode).subscribe(res => this.MethodGetRnum(res), error => this.ErrorGetRnum(error));\r\n }\r\n\r\n }\r\n\r\n}\r\n","import { CheckoutCashDeskModel } from \"./CashDesk/checkout-cash-desks.model\";\r\nimport { HesabKindBanks } from \"./HesabKindBanks.model\";\r\nimport { IInstallmentsDetaile } from \"./installment-detail.model\";\r\nimport { SaleBankAccounts } from \"./SaleBankAccounts.model\";\r\nimport { SalePreInvoiceForContractCheckInfoModel } from \"./SalePreInvoiceForContractCheckInfo.model\";\r\nimport { SaleSubReceiptSelect } from \"./SaleSubReceiptSelect.model\";\r\n\r\nexport class InputPricePaymentFormInvoiceSaleModel {\r\n installmentsDetail: IInstallmentsDetaile[];\r\n checkDetailList: SalePreInvoiceForContractCheckInfoModel[];\r\n saleReceiptList: SaleSubReceiptSelect[];\r\n checkoutCashDesk: CheckoutCashDeskModel[];\r\n contractStatus: boolean; //AcceptContract\r\n salebank: SaleBankAccounts[];\r\n hesabKind: HesabKindBanks[];\r\n saleBankAccounts: SaleBankAccounts[];\r\n sumPriceInvoice: number;\r\n remindPaymentInvoice: number;\r\n paymentInvoice: number;\r\n installmentInterest: number;\r\n}\r\n","import { concat, of } from 'rxjs';\nimport { Address } from './../../models/Address';\nimport { fadeInOut } from './../../services/animations';\nimport { SaleBankAccounts } from './../../models/SaleBankAccounts.model';\n//import { CashPOSVM } from './../../models/CashPOSVM';\n//import { CashPOS } from './../../models/CashPOS';\n//import { CashDesk } from './../../models/CashDesk';\nimport { Component, OnInit, ViewChild, Input, TemplateRef, Output, EventEmitter } from '@angular/core';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { Utilities } from '../../services/utilities';\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\nimport { AccountService } from '../../services/account.service';\nimport { AuthService } from '../../services/auth.service';\nimport { Permission } from '../../models/permission.model';\nimport { group } from '../../models/group.model';\nimport { AppTranslationService } from '../../services/app-translation.service';\n\n@Component({\n selector: 'app-address',\n templateUrl: './address.component.html',\n styleUrls: ['./address.component.scss'],\n animations: [fadeInOut]\n})\nexport class AddressComponent implements OnInit {\n\n public isEditMode = false;\n public isNewDesk = false;\n public isNewPOS = false;\n\n public isEditingSelf = false;\n public isSaving = false;\n public isEditSelf = false;\n public showValidationErrors = false;\n public uniqueId: string = Utilities.uniqueId();\n public isreal = true;\n submitted=false;\n public formResetToggle = true;\n public changesSavedCallback: () => void;\n public changesFailedCallback: () => void;\n public changesCancelledCallback: () => void;\n\n rowsCache: Address[] = [];\n rows: Address[] = [];\n\n public address: Address = new Address();\n saleBankAccounts:SaleBankAccounts[] =[];\n @Output() sendAddress = new EventEmitter();\n\n columns: any[] = [];\n loadingIndicator: boolean;\n @ViewChild('actionsTemplateCashDesk', { static: true })\n actionsTemplateCashDesk: TemplateRef;\n\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n\n group: group;\n\n public viewType:string ='allData';\n @Input()\n isViewOnly: boolean;\n\n\n //cashPOS\n\n constructor(private alertService: AlertService,\n private accountService: AccountService,\n private authService: AuthService,\n private translationService: AppTranslationService) {\n }\n ngOnInit() {\n this.viewType='allData';\n const gT = (key: string) => this.translationService.getTranslation(key);\n this.columns = [\n { prop:'apostalCode', name: 'کد پستی', width: 100 },\n { prop: 'aaddress', name: 'آدرس', width: 300},\n ];\n this.columns.push({ name: 'بروزرسانی', width: 250, cellTemplate: this.actionsTemplateCashDesk, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\n\n //this.loadCashDeskData();\n }\n public editAll(addressForEdit:Address[]){\n this.rows=addressForEdit;\n }\n Changetab(){\n this.viewType='allData';\n }\n loadCashDeskData() {\n this.alertService.startLoadingMessage();\n this.loadingIndicator = true;\n if (this.canViewCustomer) {\n if (!this.authService.isSessionExpired) {\n //this.accountService.CashDeskList().subscribe(res => this.onDataLoadSuccessful(res));\n }\n else {\n this.alertService.showMessage('پایان مدت زمان ورود', `لطفا مجددا به حساب کاربری خود وارد شوید!`, MessageSeverity.warn);\n }\n } else {\n }\n }\n // onDataLoadSuccessful(CashDesks: CashDesk[]) {\n //// this.alertService.stopLoadingMessage();\n //// this.loadingIndicator = false;\n //// CashDesks.forEach((user, index) => {\n //// (user as any).index = index + 1;\n //// });\n //// this.rowsCache = [...CashDesks];\n //// this.rows = CashDesks;\n // }\n newCashDesk() {\n this.isNewDesk=true;\n this.viewType='newCashDesk';\n }\n editCashDesk(row) {\n this.isNewDesk=false;\n this.address = row;\n this.viewType='editCashDesk';\n }\n deleteCashDesk(row:Address) {\n this.alertService.showDialog('آیا از حذف صندوق \\\"' + row.aId + '\\\" اطمینان دارید?', DialogType.confirm, () => this.deleteCashDeskHelper(row));\n }\n\n deleteCashDeskHelper(row: Address) {\n this.alertService.startLoadingMessage('حذف...');\n this.loadingIndicator = true;\n concat(\n of(this.rowsCache = this.rowsCache.filter(item => item !== row)),\n of(this.rows = this.rows.filter(item => item !== row)),\n of(this.sendAddress.emit(this.rows)),\n of(this.alertService.stopLoadingMessage())\n )\n this.loadingIndicator = false;\n }\n\n isEditOrNewCashDesk() {\n if (this.viewType=='editCashDesk' ||this.viewType=='newCashDesk') {\n return true;\n } else {\n return false;\n }\n }\n\n get canViewCustomer() {\n return this.accountService.userHasPermission(Permission.ViewCustomerPermission);\n }\n\n checkValidAddress(){\n if(\n (this.address.aaddress!=null ||this.address.aaddress!=undefined)\n &&\n (this.address.apostalCode!=null ||this.address.apostalCode!=undefined)\n )\n {\n return true;\n } else {\n return false;\n }\n }\n save() {\n this.isSaving = true;\n if (this.isNewDesk ) {\n if(this.rows.findIndex(item => item.apostalCode == this.address.apostalCode)<0)\n {\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\n this.saveSuccessCashDeskHelper(this.address);\n concat(\n of(this.rows.push(this.address)),\n of(this.rowsCache = [...this.rows]),\n of(this.sendAddress.emit(this.rows)),\n of(this.address=new Address())\n )\n }\n else {\n this.alertService.showMessage('', 'کد پستی وارد شده تکراری است', MessageSeverity.default);\n }\n }\n else if(!this.isNewDesk && this.checkValidAddress()) {\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\n this.saveSuccessCashDeskHelper(this.address);\n concat(\n of(this.rows[this.rows.findIndex(item => item.apostalCode === this.address.apostalCode)] = this.address),\n of(this.rowsCache = [...this.rows]),\n of(this.sendAddress.emit(this.rows)),\n of(this.address=new Address())\n )\n }else{\n return;\n }\n }\n cancel() {\n this.address = new Address();\n this.showValidationErrors = false;\n this.resetAddress();\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\n this.viewType='allData';\n this.alertService.resetStickyMessage();\n }\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n private saveFailedHelper(error: any) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error',\n 'The below errors occured whilst saving your changes:',\n MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n if (this.changesFailedCallback) {\n this.changesFailedCallback();\n }\n }\n private saveSuccessCashDeskHelper(desk?: Address) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n\n if (this.isNewDesk) {\n this.alertService.showMessage('Success', `آدرس با موفقیت ایجاد شد`, MessageSeverity.success);\n this.viewType='allData';\n } else if (!this.isNewDesk) {\n this.alertService.showMessage('Success', `آدرس با موفقیت اصلاح شد`, MessageSeverity.success);\n this.viewType='allData';\n }\n }\n\n resetAddress(replace = false) {\n if (!replace) {\n this.address=new Address();\n this.rowsCache = [];\n this.rows = [];\n } else {\n this.formResetToggle = false;\n setTimeout(() => {\n this.formResetToggle = true;\n });\n }\n }\n get canAssignGroups() {\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\n }\n onSubmit(){}\n}\n","
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
0\">\n \n \n \n {{value}}\n \n
\n
\n \n \n \n
\n","import { Component } from '@angular/core';\nimport { FormControl, Validators } from '@angular/forms';\r\n\n@Component({\n selector: 'visits-list-info',\n templateUrl: './visits-list-info.component.html',\n styleUrls: ['./visits-list-info.component.scss']\n})\nexport class VisitsListInfoComponent {\n public loadingIndicator = true;\n public rows: any[] = [\n {\n customerName: \"امیر\",\n visitDate: \"1400/11/27\",\n address: \"تهران\",\n location: \"تهران\",\n phoneNumber1: \"09147162064\",\n phoneNumber2: \"09147162064\",\n },\n {\n customerName: \"امیر\",\n visitDate: \"1400/11/27\",\n address: \"تهران\",\n location: \"تهران\",\n phoneNumber1: \"09147162064\",\n phoneNumber2: \"09147162064\",\n },\n {\n customerName: \"امیر\",\n visitDate: \"1400/11/27\",\n address: \"تهران\",\n location: \"تهران\",\n phoneNumber1: \"09147162064\",\n phoneNumber2: \"09147162064\",\n }\n ]\n public columns = [];\n public list: any[] = [\n { title: \"همه\" },\n { title: \"اجرا\" },\n { title: \"انتظار\" },\n { title: \"بایگانی\" }\n ]\n public listControl = new FormControl('', Validators.required);\n public customerName = new FormControl('', Validators.required);\n\n constructor() { }\n\n public ngOnInit() {\n this.loadingIndicator = false;\n }\n\n public visitorPlace(location: string) {\n console.log(location);\n }\n}\n","
\r\n
\r\n
\r\n \r\n لیست انتخاب\r\n \r\n --\r\n \r\n {{select.title}}\r\n \r\n \r\n لطفا گزینه مورد نظر را انتخاب کنید\r\n {{listControl.value?.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 {{customerName.value?.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

تاریخ ویزیت :1400/11/27

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class SalePreInvoiceForContracts {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(SPIYear?: number,\r\n SPIPartCode?: number,\r\n SPICode?: number,\r\n SPIKindCode?: number,\r\n SPIDate?: string,\r\n SPICustomerCode?: number,\r\n SPIFromDeliverytDate?: string,\r\n SPIIsVoid?: boolean,\r\n SPIIsAccepted?: boolean,\r\n SPIRegistUserCode?: number,\r\n SPIPrivateConditions?: string,\r\n SPISubCustomerCode?: number,\r\n PriceKind?: number,\r\n AssigneSalerCode?: number,\r\n DepoCode?: number,\r\n TypePrice?: number,\r\n IdSaleCustomerGroup?: number) {\r\n\r\n\r\n this.SPIYear = SPIYear;\r\n this.SPIPartCode = SPIPartCode;\r\n this.SPICode = SPICode;\r\n this.SPIKindCode = SPIKindCode;\r\n this.SPIDate = SPIDate;\r\n this.SPICustomerCode = SPICustomerCode;\r\n this.SPIFromDeliverytDate = SPIFromDeliverytDate;\r\n this.SPIIsVoid = SPIIsVoid;\r\n this.SPIIsAccepted = SPIIsAccepted;\r\n this.SPIRegistUserCode = SPIRegistUserCode;\r\n this.SPIPrivateConditions = SPIPrivateConditions;\r\n this.SPISubCustomerCode = SPISubCustomerCode;\r\n this.PriceKind = PriceKind;\r\n this.AssigneSalerCode = AssigneSalerCode;\r\n this.DepoCode = DepoCode;\r\n this.TypePrice = TypePrice;\r\n this.IdSaleCustomerGroup = IdSaleCustomerGroup;\r\n\r\n\r\n }\r\n public SPIYear: number;\r\n public SPIPartCode: number;\r\n public SPICode: number;\r\n public SPIKindCode: number;\r\n public SPIDate: string;\r\n public SPICustomerCode: number;\r\n public SPIFromDeliverytDate: string;\r\n public SPIToDeliveryDate: string;\r\n public SPIIsVoid: boolean;\r\n public SPIIsAccepted: boolean;\r\n public SPIRegistUserCode: number;\r\n public SPIAcceptedUserCode: number;\r\n public SPIPrivateConditions: string;\r\n public SPISubCustomerCode: number;\r\n public PriceKind: number;\r\n public AssigneSalerCode: number;\r\n public DepoCode: number;\r\n public TypePrice: number;\r\n public IdSaleCustomerGroup: number;\r\n\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport {\r\n HttpClient,\r\n HttpRequest,\r\n HttpEventType,\r\n HttpEvent\r\n} from \"@angular/common/http\";\r\nimport { map, tap, last } from \"rxjs/operators\";\r\nimport { BehaviorSubject } from \"rxjs\";\r\n\r\n@Injectable()\r\nexport class UploaderService {\r\n public progressSource = new BehaviorSubject(0);\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n\r\n upload(file: File) {\r\n\r\n let formData = new FormData();\r\n formData.append(\"avatar\", file);\r\n const req = new HttpRequest(\r\n \"POST\",\r\n \"http://localhost:5000/upload\",\r\n formData,\r\n {\r\n reportProgress: true\r\n }\r\n );\r\n\r\n return this.http.request(req).pipe(\r\n map(event => this.getEventMessage(event, file)),\r\n tap((envelope: any) => this.processProgress(envelope)),\r\n last()\r\n );\r\n }\r\n\r\n processProgress(envelope: any): void {\r\n if (typeof envelope === \"number\") {\r\n this.progressSource.next(envelope);\r\n\r\n }\r\n }\r\n convertToImg(source,dest) {\r\n for (var i = 0; i < source.length; i++) {\r\n let objectURL = 'data:image/png;base64,' + source[i];\r\n dest[i] = ''//this._sanitizer.bypassSecurityTrustUrl(objectURL);\r\n }\r\n }\r\n private getEventMessage(event: HttpEvent, file: File) {\r\n\r\n switch (event.type) {\r\n case HttpEventType.Sent:\r\n return `Uploading file \"${file.name}\" of size ${file.size}.`;\r\n case HttpEventType.UploadProgress:\r\n return Math.round((100 * event.loaded) / event.total);\r\n case HttpEventType.Response:\r\n return `File \"${file.name}\" was completely uploaded!`;\r\n default:\r\n return `File \"${file.name}\" surprising upload event: ${event.type}.`;\r\n }\r\n }\r\n}\r\n","\n\nexport class User {\n //subscribe(arg0: (res: any) => void, arg1: (error: any) => void) {\n // throw new Error(\"Method not implemented.\");\n //}\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(id?: string, userName?: string, fullName?: string, email?: string, jobTitle?: string, phoneNumber?: string, roles?: string[], cMainCode?: number, activityyear?: string, cSubCode?: number) {\n\n this.id = id;\n this.userName = userName;\n this.fullName = fullName;\n this.email = email;\n this.jobTitle = jobTitle;\n this.phoneNumber = phoneNumber;\n this.roles = roles;\n this.cMainCode = cMainCode;\n this.activityyear = activityyear;\n this.cSubCode = cSubCode;\n\n\n\n let c = {\n \"id\" :\"7a6a7f3d-1260-42d5-a761-09e84b17ed23\",\n \"userName\": \"Amir\",\n \"fullName\": \"Amiri\",\n \"email\": \"eslamshahr@gmail.com\",\n \"jobTitle\": \"1403\",\n \"phoneNumber\":\"1403\",\n \"roles\": [\"roles\"],\n \"cMainCode\": \"676\",\n \"activityyear\": \"1400\",\n \"cSubCode\": \"0\",\n }\n }\n\n\n\n get friendlyName(): string {\n let name = this.fullName || this.userName;\n if (this.jobTitle) {\n name = this.jobTitle + ' ' + name;\n }\n return name;\n }\n\n\n public id: string;\n public userName: string;\n public fullName: string;\n public email: string;\n public jobTitle: string;\n public phoneNumber: string;\n public isEnabled: boolean;\n public isLockedOut: boolean;\n public roles: string[];\n public cMainCode: number;\n public activityyear: string;\n public cSubCode: number;\n\n}\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\r\nimport * as moment from 'jalali-moment';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { ReportCashierByDateModel } from '../../../models/CashDesk/report-cashier-by-date.model';\r\nimport { ReportSaleCashDeskModel } from '../../../models/CashDesk/report-sale-cash-desk.model';\r\nimport { CashUser } from '../../../models/CashUser.model';\r\nimport { ReportCashier } from '../../../models/ReportCashier.model';\r\nimport { AccountService } from '../../../services/account.service';\r\nimport { AlertService, MessageSeverity } from '../../../services/alert.service';\r\nimport { fadeInOut } from '../../../services/animations';\r\nimport { AuthService } from '../../../services/auth.service';\r\nimport { MyCompanyService } from '../../../services/MyCompany.service';\r\nimport { CashDeskService } from '../../../services/cash-desk-service/cash-desk.service';\r\nimport { ConfirmMessageModel } from '../../../models/utilities/confirm-message.model';\nimport { Location } from '@angular/common';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { SaleReceiptService } from '../../../services/receipt-services/sale-receipt.service';\r\nimport { CashDeskDocumentType } from '../../../enums/cash-desk-document-type';\n\n@Component({\n selector: 'cash-desk-detail',\n templateUrl: './cash-desk-detail.component.html',\n styleUrls: ['./cash-desk-detail.component.scss'],\n animations: [fadeInOut]\n})\nexport class CashDeskDetailComponent implements OnInit {\n \n public loadingIndicator: boolean = true;\n public rowsReportCache: ReportCashier[] = [];\n public rowsReport: ReportCashier[] = [];\n public cashDeskDetail: ReportCashierByDateModel = new ReportCashierByDateModel();\n public checkoutCashDeskDetail: ReportCashierByDateModel = new ReportCashierByDateModel();\n public reportSaleCashDesk: ReportSaleCashDeskModel = new ReportSaleCashDeskModel();\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\n public cashDeskNumber: number = 0;\n public cashDeskDate = moment();\n public cashDate: string = '';\n public columns: any[] = [];\n public lastAccept: boolean = false;\n public currentRoute: string = '';\n public customerCode: number = 0;\n public customerName = \"\";\n\n DocNumber = 0;\n userId = 0;\n\n sumCustomerAcc = 0;\n sumCustomer = 0;\n notAcceptedContractPrice = 0;\n acceptedContractPrice = 0;\n canceledContractPrice = 0;\n contractPrice = 0;\n\n sumRecipt = 0;\n sumNaghd = 0;\n sumPos = 0;\n sumCheck = 0;\n sumHavaleh = 0;\n sumDiffOld = 0;\n sumAccount = 0;\n sumCashier = 0;\n sumCashierRecive = 0;\n sumCashierOld = 0;\n public isError = false;\n rowsCachUsersTemp: CashUser[] = [];\n rowsCachUsers: CashUser[] = [];\n\n\n Naghad = 0;\n Pos = 0;\n Check = 0;\n Havaleh = 0;\n hesab = 0;\n dateObjectFromDate = moment();\n dateObjectToDate = moment();\n Status = '';\n\n @ViewChild('editorModalReportCashier', { static: false })\n editorModalReportCashier: ModalDirective;\n\n @ViewChild('editorModalReportReciptCashier', { static: false })\n editorModalReportReciptCashier: ModalDirective;\n\n @ViewChild('editorModalSavePrice')\n editorModalSavePrice: ModalDirective;\n\n @ViewChild('editorModalCheckPrice')\n editorModalCheckPrice: ModalDirective;\n\n @ViewChild('editorModalContractsApproved')\n editorModalContractsApproved: ModalDirective;\n\n @ViewChild('editorModalNormalContracts')\n editorModalNormalContracts: ModalDirective;\n\n @ViewChild('editorModalCumulativeContracts')\n editorModalCumulativeContracts: ModalDirective;\n\n @ViewChild('editorModalApprovedDocuments')\n editorModalApprovedDocuments: ModalDirective;\n\n @ViewChild('editorModalInvalidatedDocuments')\n editorModalInvalidatedDocuments: ModalDirective;\n\n constructor(\n private alertService: AlertService,\n private accountService: AccountService,\n private saleReceiptService: SaleReceiptService,\n private myCompanyService: MyCompanyService,\n private authService: AuthService,\n private route: ActivatedRoute,\n private cashDeskService: CashDeskService,\n private location: Location) { }\n\n ngOnInit() {\n this.cashDate = this.route.snapshot.paramMap.get('cashDate');\n this.cashDate = moment(this.cashDate).locale('fa').format('YYYY/MM/DD').replace('-', '/');\n this.cashDeskDate = moment(this.cashDate, 'jYYYY,jMM,jDD');\n this.loaddata();\n }\n\n savePriceShow() {\n this.editorModalSavePrice.show();\n }\n\n checkPriceShow() {\n this.editorModalCheckPrice.show();\n }\n\n contractsApprovedShow() {\n this.editorModalContractsApproved.show();\n }\n\n normalContractsShow() {\n this.editorModalNormalContracts.show();\n }\n\n cumulativeContractsShow() {\n this.editorModalCumulativeContracts.show();\n }\n\n approvedDocumentsShow() {\n this.editorModalApprovedDocuments.show();\n }\n\n invalidatedDocumentsShow() {\n this.editorModalInvalidatedDocuments.show();\n }\n\n onEditorModalHidden() { }\n\n cleanData() {\n this.rowsReportCache = [];\n this.rowsReport = [];\n this.sumRecipt = 0;\n this.sumNaghd = 0;\n this.sumPos = 0;\n this.sumCheck = 0;\n this.sumHavaleh = 0;\n this.sumAccount = 0;\n this.sumDiffOld = 0;\n this.sumCashier = 0;\n this.sumCashierRecive = 0;\n this.sumCustomerAcc = 0;\n this.sumCustomer = 0;\n this.notAcceptedContractPrice = 0;\n this.acceptedContractPrice = 0;\n this.canceledContractPrice = 0;\n this.contractPrice = 0;\n this.loadingIndicator = false;\n }\n\n loaddata() {\n this.cleanData();\n this.loadingIndicator = true;\n this.accountService.getNameHeader(this.authService.currentUser.id).subscribe(\n res => {\n this.customerCode = res.cMainCode;\n this.customerName = res.cName;\n this.getData(this.customerCode);\n }\n , error => this.onDataLoadFailed(error)\n );\n }\n\n getData(Cmain: number): void {\n this.loadingIndicator = true;\n let cashDate: moment.Moment = moment(this.cashDate, 'jYYYY,jMM,jDD');\n let cashDate2 = cashDate.locale('en').format('YYYY-MM-DD');\n this.cashDeskService.allReportCashierByCheckoutCashDeskDetail(+this.authService.currentUser.phoneNumber, 5, Cmain, 0, cashDate2, true, false).subscribe(\n results => this.onDataLoadSuccessful(results),\n error => {\n this.myCompanyService.onCurrentUserDataLoadFailed(error)\n this.loadingIndicator = false\n });\n }\n\n onDataLoadFailed(error: any): void {\n this.alertService.showMessage('خطا', error, MessageSeverity.warn);\n this.loadingIndicator = false\n }\n\n onDataLoadSuccessful(results: ReportCashier[]): void {\n if (results && results.length > 0) {\n this.cashDeskNumber = results[0].checkoutCashDeskId;\n this.checkoutCashDeskDetail = new ReportCashierByDateModel();\n this.alertService.stopLoadingMessage();\n\n let tempRecipt = results.filter(x => x.typeDoc === 1);//رسید\n if (tempRecipt && tempRecipt.length > 0) {\n\n this.checkoutCashDeskDetail.sumRecipt = tempRecipt[0].rsPrice;\n this.checkoutCashDeskDetail.sumNaghd = tempRecipt[0].rsPrice1;\n this.checkoutCashDeskDetail.sumPos = tempRecipt[0].rsPrice2;\n this.checkoutCashDeskDetail.sumCheck = tempRecipt[0].rsPrice3;\n this.checkoutCashDeskDetail.sumHavaleh = tempRecipt[0].rsPrice4;\n this.checkoutCashDeskDetail.sumAccount = tempRecipt[0].rsPrice5;\n this.checkoutCashDeskDetail.sumDiffOld = tempRecipt[0].rsPrice6;\n this.checkoutCashDeskDetail.countALL += tempRecipt[0].countALL;\n\n this.checkoutCashDeskDetail.sumCashier = this.checkoutCashDeskDetail.sumNaghd + this.checkoutCashDeskDetail.sumPos + this.checkoutCashDeskDetail.sumCheck + this.checkoutCashDeskDetail.sumHavaleh;\n this.checkoutCashDeskDetail.sumCashierRecive = 0;\n }\n\n let temp = results.filter(x => x.typeDoc === 3);//فروش\n if (temp && temp.length > 0) {\n this.checkoutCashDeskDetail.sumCustomerAcc = temp[0].rsPrice16;\n this.checkoutCashDeskDetail.sumCustomer = temp[0].rsPrice17;\n this.checkoutCashDeskDetail.notAcceptedContractPrice = temp[0].notAcceptedContractPrice;\n this.checkoutCashDeskDetail.acceptedContractPrice = temp[0].acceptedContractPrice;\n this.checkoutCashDeskDetail.canceledContractPrice = temp[0].canceledContractPrice;\n this.checkoutCashDeskDetail.contractPrice = this.checkoutCashDeskDetail.sumRecipt - this.checkoutCashDeskDetail.acceptedContractPrice;\n this.checkoutCashDeskDetail.countALL += temp[0].countALL;\n }\n let tempNotAccept = results.filter(x => x.typeDoc === 4);//قرارداد تایید نشده\n if (tempNotAccept && tempNotAccept.length > 0) {\n this.checkoutCashDeskDetail.notAcceptedContractPrice = tempNotAccept[0].notAcceptedContractPrice;\n } \n\n this.loadingIndicator = false;\n this.rowsReportCache = [...results];\n this.rowsReport = results;\n }\n else {\n this.loadingIndicator = false;\n this.alertService.showMessage('هشدار', \" در بازه زمانی مشخص شده اطلاعاتی ثبت نشده است.\", MessageSeverity.warn);\n }\n }\n\n getCashDeskDocumentType(value) {\n return CashDeskDocumentType[value];\r\n }\n\n showReportCashier(ncIsAccepted: boolean, ncIsVoid: boolean) {\n if (!ncIsAccepted && !ncIsVoid) {\n this.Status = \"تایید نشده\";\n }\n else if (ncIsAccepted && !ncIsVoid) {\n this.Status = \"تایید شده\";\n }\n else if (!ncIsAccepted && ncIsVoid) {\n this.Status = \"ابطال شده\";\n }\n else {\n this.Status = \"\";\n }\n let cashDate: moment.Moment = moment(this.cashDate, 'jYYYY,jMM,jDD');\n let cashDate2 = cashDate.locale('en').format('YYYY-MM-DD');\n this.saleReceiptService.getAllReportContractsSaleReciptCash(+this.authService.currentUser.phoneNumber, 5, this.customerCode, 0, cashDate2, cashDate2, ncIsAccepted, ncIsVoid).subscribe(\n results => {\n if (results.length > 0) {\n this.reportSaleCashDesk = new ReportSaleCashDeskModel();\n this.reportSaleCashDesk.ncIsAccepted = ncIsAccepted;\n this.reportSaleCashDesk.ncIsVoid = ncIsVoid;\n this.reportSaleCashDesk.cashUsers = this.rowsCachUsersTemp;\n this.reportSaleCashDesk.customerCode = this.customerCode;\n this.reportSaleCashDesk.customerName = this.customerName;\n this.reportSaleCashDesk.reportContractsSaleReciptCash = new MatTableDataSource(results);\n let i = 1;\n this.reportSaleCashDesk.reportContractsSaleReciptCash.data.forEach((val) => {\n val.id = i++;\r\n this.reportSaleCashDesk.totalDebt = val.sumPriceContracted;\r\n this.reportSaleCashDesk.totalCredit = val.sumPayment;\r\n })\n this.reportSaleCashDesk.allremain = this.reportSaleCashDesk.totalDebt - this.reportSaleCashDesk.totalCredit;\n this.editorModalReportCashier.show();\n } else {\n this.alertService.showMessage('هشدار', 'داده ای برای سند مورد نظر یافت نشد.', MessageSeverity.warn);\r\n }\n },\n error => {\r\n console.log(error);\n });\n }\n\n reportSaleCashDeskClose() {\n this.reportSaleCashDesk = new ReportSaleCashDeskModel();\n this.editorModalReportCashier.hide();\n }\n\n showReportReciptCashier(ncIsAccepted: boolean, ncIsVoid: boolean) {\n let cashDate: moment.Moment = moment(this.cashDate, 'jYYYY,jMM,jDD');\n let cashDate2 = cashDate.locale('en').format('YYYY-MM-DD');\n this.saleReceiptService.getAllReportReciptsSaleReciptCash(+this.authService.currentUser.phoneNumber, 5, this.customerCode, 0, cashDate2, cashDate2, ncIsAccepted, ncIsVoid).subscribe(\n results => {\n if (results.length > 0) {\n this.reportSaleCashDesk = new ReportSaleCashDeskModel();\n this.reportSaleCashDesk.ncIsAccepted = ncIsAccepted;\n this.reportSaleCashDesk.ncIsVoid = ncIsVoid;\n this.reportSaleCashDesk.cashUsers = this.rowsCachUsersTemp;\n this.reportSaleCashDesk.customerCode = this.customerCode;\n this.reportSaleCashDesk.customerName = this.customerName;\n this.reportSaleCashDesk.reportReciptsSaleReciptCash = results;\n this.reportSaleCashDesk.reportReciptsSaleReciptCash.forEach((val) => {\n this.reportSaleCashDesk.totalDebt = val.sumPriceContracted;\r\n this.reportSaleCashDesk.totalCredit = val.sumPayment;\r\n })\n this.reportSaleCashDesk.allremain = this.reportSaleCashDesk.totalDebt - this.reportSaleCashDesk.totalCredit;\n this.editorModalReportReciptCashier.show();\n } else {\n this.alertService.showMessage('هشدار', 'داده ای برای سند مورد نظر یافت نشد.', MessageSeverity.warn);\r\n }\n },\n error => {\r\n console.log(error);\n });\n }\n\n closeReportReciptCashier() {\n this.reportSaleCashDesk = new ReportSaleCashDeskModel();\n this.editorModalReportReciptCashier.hide();\r\n }\n\n checkoutCashDesk() {\n this.confirmMessageObj.statusId = 1;\r\n this.confirmMessageObj.confirmType = 1;\r\n this.confirmMessageObj.title = \"تثبیت نهایی صندوق\";\r\n this.confirmMessageObj.text = `آیا مایل به تثبیت سند به تاریخ ${this.cashDate} می باشید؟`;\n this.lastAccept = true; \n }\n\n lastCheckoutCashDesk(event: boolean) {\n this.lastAccept = false; \n if (event) {\r\n if (this.checkoutCashDeskDetail.contractPrice >= 0) {\n if (this.cashDeskNumber <= 0) {\n let cashDate: moment.Moment = moment(this.cashDate, 'jYYYY,jMM,jDD');\n let cashDate2 = cashDate.locale('en').format('YYYY-MM-DD');\n this.checkoutCashDeskDetail.reportDate = cashDate2;\n this.checkoutCashDeskDetail.userId = this.authService.currentUser.id;\n this.checkoutCashDeskDetail.checkoutCashDeskId = 0;\n this.checkoutCashDeskDetail.customerCode = this.customerCode;\n this.cashDeskService.checkoutCashDesk(this.checkoutCashDeskDetail).subscribe(\n (res) => {\n this.alertService.showMessage('تثبیت صندوق', 'اطلاعات صندوق با موفقیت در سیستم ثبت گردید.', MessageSeverity.success);\r\n this.getData(this.customerCode);\r\n },\n (err) => {\r\n console.log(err);\r\n })\n } else {\n this.alertService.showMessage('اخطار', 'سند قبلا تثبیت گردیده است.', MessageSeverity.error);\n }\n } else {\n this.alertService.showMessage('اخطار', 'به دلیل مغایرت ریالی قادر به تثبیت صندوق نمی باشید.', MessageSeverity.error);\r\n }\r\n }\r\n }\n\n goBackPage() {\n this.location.back();\r\n }\n\n get userName(): string {\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\n }\n\n get fullName(): string {\n return this.authService.currentUser ? this.authService.currentUser.fullName : '';\n }\n\n}\n","
\r\n
\r\n\r\n
\r\n

\r\n \r\n تسویه حساب صندوقدار\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n شماره سند\r\n \r\n \r\n
\r\n
\r\n \r\n تاریخ\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
عنوانتعدادجمع مبلغپرداخت نـقدیواریزی(کارتخوان)اسناد(چک)حـواله(فیش واریزی)حسابتخفیف نقدی
{{getCashDeskDocumentType(row.typeDoc)}}{{row.countALL}}{{row.rsPrice | number}}{{row.rsPrice1 | number}}{{row.rsPrice2 | number}}{{row.rsPrice3 | number}}{{row.rsPrice4 | number}}{{row.rsPrice5 | number}}{{row.rsPrice6 | 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
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n قراردادهای تایید شده\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n مغایرت\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n قابل دریافت از صندوقدار\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n اختلاف حساب قبلی\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n دریافت شده از صندوقدار\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n\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}} - {{customerCode}} - {{customerName}}

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

رسیدهای پرداخت - {{customerCode}} - {{customerName}}

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import {Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges} from '@angular/core';\nimport {PreInvoice} from '../../../models/PreInvoice.model';\nimport {InputPricePaymentFormInvoiceSaleModel} from '../../../models/InputPricePaymentFormInvoiceSale.model';\nimport {SaleReceipt} from '../../../models/SaleReceipts/SaleReceipt.model';\nimport {SaleSubReceipt} from '../../../models/SaleReceipts/SaleSubReceipt.model';\nimport * as moment from 'jalali-moment';\nimport {AlertService, MessageSeverity} from '../../../services/alert.service';\nimport {AccountService} from '../../../services/account.service';\nimport {SharedService} from '../../../services/Shared.service';\nimport {ConfirmMessageEnum} from '../../../enums/confirm-message.enum';\nimport {ConfirmMessageModel} from '../../../models/utilities/confirm-message.model';\nimport {Utilities} from '../../../services/utilities';\nimport {SaleReceiptService} from \"../../../services/receipt-services/sale-receipt.service\";\nimport {AuthService} from \"../../../services/auth.service\";\nimport {SaleSubReceiptSelect} from \"../../../models/SaleSubReceiptSelect.model\";\n\n@Component({\n selector: 'app-sale-receipt-baratelectronic',\n templateUrl: './sale-receipt-baratelectronic.component.html',\n styleUrls: ['./sale-receipt-baratelectronic.component.scss']\n})\nexport class SaleReceiptBaratelectronicComponent implements OnInit, OnChanges {\n\n public loadingIndicator: boolean;\n public columns: any[] = [];\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\n public dateObjectRSDate = moment();\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\n public checkoutConfirm = false;\n public baratFile: File;\n\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;\n @Output() saveCheckDetailStatus = new EventEmitter();\n\n ngOnChanges(changes: SimpleChanges): void {\n }\n\n constructor(private alertService: AlertService,\n private accountService: AccountService,\n private saleReceiptService: SaleReceiptService,\n private authService: AuthService,\n private sharedService: SharedService) {\n }\n\n ngOnInit(): void {\n }\n\n cancel() {\n }\n\n getLoadGrid() {\n return this.inputPricePaymentFormInvoiceSale.saleReceiptList.filter(x => x.rsKind === 13);\n }\n\n save() {\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\n this.accountService.GetRSerialCheck(this.SaleSubReceiptObj.rSerial).subscribe(\n results => {\n const checkComplet = this.onCurrentCheck(results);\n if (checkComplet) {\n if (this.SaleSubReceiptObj.rsPrice > 0) {\n if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice === 0) {\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice < this.SaleSubReceiptObj.rsPrice) {\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice >= this.SaleSubReceiptObj.rsPrice) {\n const formData = new FormData;\n formData.append((1).toString(), this.baratFile);\n this.saleReceiptService.insertUploadCustomerImage(\n this.saleInvoiceDetail.spiCustomerCode.toString(),\n this.saleInvoiceDetail.spiSubCustomerCode.toString(),\n this.saleInvoiceDetail.contractCode.toString(),\n this.SaleSubReceiptObj.rSerial.toString(),\n formData)\n .subscribe(\n (res) => {\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\n this.SaleReceiptObj.rnum = 0;\n this.SaleReceiptObj.ryear = this.saleInvoiceDetail.spiYear;\n this.SaleReceiptObj.rmainCustomerCode = this.saleInvoiceDetail.spiCustomerCode;\n this.SaleReceiptObj.rsubCustomerCode = this.saleInvoiceDetail.spiSubCustomerCode;\n this.SaleReceiptObj.rpartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleReceiptObj.rkind = 1;\n this.SaleReceiptObj.rreceivedFor = -1;\n this.SaleReceiptObj.rreceivedNumber = this.saleInvoiceDetail.spiCode;\n this.SaleReceiptObj.rreceivedYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.risNotInCycle = false;\n this.SaleReceiptObj.rcontractYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\n this.SaleReceiptObj.sanavat = false;\n this.SaleReceiptObj.UserId = 0;\n this.SaleSubReceiptObj.rsKind = 13;\n this.SaleSubReceiptObj.rsPartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleSubReceiptObj.rsYear = this.saleInvoiceDetail.spiYear;\n this.SaleSubReceiptObj.rsReceiptKind = 1;\n this.SaleSubReceiptObj.rsNum = 0;\n // this.SaleSubReceiptObj.rsDate = Date.now();\n this.SaleSubReceiptObj.dueDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\n this.SaleSubReceiptObj.saleReceiptsId = 0;\n this.SaleReceiptObj.SaleSubReceipt = [];\n this.SaleReceiptObj.SaleSubReceipt.push(this.SaleSubReceiptObj);\n this.saleReceiptService.InsertSaleReceipt(this.SaleReceiptObj).subscribe(result => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' ثبت شد. ', MessageSeverity.success);\n this.SaleSubReceiptObj = new SaleSubReceipt();\n this.SaleSubReceiptObj.rsDes = \"\";\n this.SaleSubReceiptObj.rsDes = \"\";\n this.SaleSubReceiptObj.rSerial = \"\";\n this.SaleSubReceiptObj.rsPrice = 0;\n this.alertService.stopLoadingMessage();\n this.saveCheckDetailStatus.emit(true);\n } else if (result.actionStatus === 1) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n } else if (result.actionStatus === 2) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n }\n this.alertService.stopLoadingMessage();\n }, error => {\n });\n },\n (err) => {\n this.alertService.showMessage('عدم تایید', \"خطا در آپلود تصویر صورت گرفته است لطفا مجددا اقدام نمایید\", MessageSeverity.error);\n });\n } else {\n this.alertService.showMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\n\n }\n } else {\n this.alertService.showMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\n\n }\n }\n },\n error => this.onCurrentUserDataLoadFailed(error)\n );\n } else {\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات مربوط به پرداخت را وارد نمایید.', MessageSeverity.warn);\n }\n } else {\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\n this.confirmMessageObj.title = 'عدم پرداخت';\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به پرداخت نمی باشید.';\n this.checkoutConfirm = true;\n }\n }\n\n onCurrentCheck(results: boolean): boolean {\n if (results === true) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'شماره سریال تکراری می باشد', MessageSeverity.warn);\n return false;\n }\n\n\n if (this.SaleSubReceiptObj.rsPrice === 0 || this.SaleSubReceiptObj.rsPrice == null) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\n return false;\n }\n if (this.SaleSubReceiptObj.rSerial === \"\" || this.SaleSubReceiptObj.rSerial == null) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\n return false;\n }\n if ((this.SaleSubReceiptObj.rsBankAccountCode == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا بانک گشایش کننده را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n if ((this.SaleSubReceiptObj.rSBankTrader == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا بانک معامله کننده را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n if (this.dateObjectRSDate == null || this.dateObjectRSDate.toLocaleString() == \"undefined\" || this.dateObjectRSDate.toString() == undefined || this.dateObjectRSDate.toLocaleString() == \"\") {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\n return false;\n }\n let date = this.sharedService.checkDate(this.dateObjectRSDate);\n if (date > 0) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\n return false;\n }\n return true;\n }\n\n private onCurrentUserDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n\n showCheckoutConfirm(event: boolean) {\n this.checkoutConfirm = event;\n }\n\n deletebaratelectronic(row: SaleSubReceiptSelect) {\n this.saleReceiptService.deleteSaleReceipt(row).subscribe((result) => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' حذف گردید. ', MessageSeverity.success);\n this.saveCheckDetailStatus.emit(true);\n } else {\n this.alertService.showMessage('هشدار', result.actionDescription, MessageSeverity.error);\n }\n }, (error) => {\n this.alertService.showMessage('هشدار', error.message, MessageSeverity.warn);\n });\n }\n\n fileChangeEvent(event: FileList) {\n // console.log(event);\n let result;\n if (event.item(0).size <= 1000000 && event.item(0).type == \"image/jpeg\") {\n this.baratFile = event.item(0);\n const reader = new FileReader();\n reader.onload = (event2: any) => {\n result = event2.target.result;\n };\n\n } else {\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\n }\n }\n\n getFormatDateShamsi(date: string) {\n return new Date(date).toLocaleDateString(\"fa-IR\");\n }\n\n showCheckDetail(row: SaleSubReceiptSelect) {\n // this.inputPricePaymentFormInvoiceSale.checkDetailList.forEach((val, index) => {\n // if (val == row) {\n // if (this.showImageFiles[index] != null) {\n // this.checkImageStatus = true;\n // this.checkImage = this.showImageFiles[index];\n // } else {\n // this.checkImageStatus = false;\n // this.checkImageServer = this.domainName + val.imageAddress;\n // }\n // $('.check-image').modal('show');\n // return;\n // }\n // });\n }\n}\n","
\n
\n
\n
\n \n پیش فاکتور\n \n \n
\n
\n
\n
\n \n قرارداد\n \n \n
\n
\n
\n
\n
خریدار : {{ saleInvoiceDetail.cName }}
\n
\n
\n
\n\n
\n
\n \n سریال\n \n \n
\n\n
\n \n بانک گشایش کننده\n \n {{ bank.sbaBankName }}\n \n \n \n
\n\n
\n \n بانک معامله کننده اعتبار\n \n {{ bank.sbaBankName }}\n \n \n \n
\n\n
\n \n تاریخ سررسید\n \n \n \n \n
\n\n
\n \n مبلغ\n \n \n
\n\n
\n
\n \n \n
\n
\n\n
\n \n توضیحات\n \n \n
\n\n
\n
\n \n \n
\n
\n\n
\n\n
\n
\n \n\n \n \n {{ rowIndex + 1 }}\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n
\n
\n \n \n \n \n \n {{ getFormatDateShamsi(value) }}\n \n \n \n \n {{ value | number }} ریال\n \n \n \n
\n
\n
\n
\n\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-about-client',\n templateUrl: './about-client.component.html',\n styleUrls: ['./about-client.component.scss']\n})\nexport class AboutClientComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n
\n
\n

درباره ما

\n
\n
\n
\n
\n\n \n \n
\n
\n
\n
\n

شبکه گسترده پخش و فروش آرسام

\n
\n

\n رسالت ما فروش محصولات با کیفیت با قیمت مناسب می باشد.\n
\n شرکت آرسام تجارت نیکو با دارا بودن شبکه گسترده پخش محصولات تأسیساتی و لوازم خانگی اقدام به راه اندازی\n فروشگاه های زنجیره ای لورچ به منظور ارائه محصولات مرتبط با کالاهای مورد استفاده در ساختمان از طریق فروشگاه\n های زنجیره ای خرده فروشی نموده است.\n
\n شرکت آرسام تجارت نیکو تلاش دارد با تلفیقی از کارمندان توانمند با تجربه و با به کارگیری علوم پیشرفته و\n دیدگاهی جدید در ارائه محصولات در راستای شکل دهی بازارهای سنتی فعال در این صنوف به سمت بازارهای نوین و\n ایجاد فرصت های شغلی در سراسر ایران در پیشرفت و توسعه کشور عزیزمان سهیم شود\n
\n حوزه فعالیت این شرکت ارائه مجموعه کاملی از کالاهای ساختمانی از جمله:\n

\n

\n مصالح ، تأسیسات مکانیکی، تأسیسات برقی ، آشپزخانه ای ، بهداشتی ، ابزارآلات و ... میباشد.\n
\n ایجاد سبد کاملی از این محصولات این امکان را فراهم می نماید که فعالان صنعت ساختمانی در کوتاهترین زمان\n بتوانند نسبت به تأمین کالاهای مورد نیاز خود اقدام نمایند.\n کالاهای عرضه شده در این فروشگاه از برندهای معتبر داخلی تأمین می شود و به مصرف کننده ارائه می گردد. و در\n این فروشگاه قیمت مصرف کننده نهایی توسط تامین کننده با نظارت سازمان های متولی تعیین می گردد, که در راستای\n صیانت از حقوق مشتریان این فرصت را به مشتریان می دهد و به صورت مستقیم و بدون واسطه از تأمین کننده خرید\n نمایند.\n شرکت آرسام تجارت نیکو به عنوان یکی از شرکتهای گروه صنعتی لورچ در سال 1393 با هدف پخش محصولات و ایجاد شبکه\n فروش سراسری در تهران ثبت شده است. اولین فروشگاه جامع ساختمانی در تهران راه اندازی شد و در حال توسعه این\n نوع فروشگاه ها در کلیه استان ها می باشد.\n\n

\n

\n \n \n نمایش بیشتر\n \n \n نمایش کمتر\n \n \n

\n
\n
\n
\n
\n
\n
\n\n","import { Component, EventEmitter, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { SupliesDealer } from '../../models/SupliesDealer.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { IReturnProductBarcode, IReturnProductDescription } from '../../models/returnProductDescription';\r\nimport { IDepoViewDescription } from '../../models/DepoViewDescription.model';\r\nimport { IDepoRevertToDepo, IDepoRevertToDepoDetail, IDepoRevertToDepoDetailBarcode } from '../../models/DepoRevertToDepo.model';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\n\r\n@Component({\r\n selector: 'add-return-to-depo',\r\n templateUrl: 'add-return-to-depo.component.html',\r\n styleUrls: ['add-return-to-depo.component.scss']\r\n})\r\nexport class AddReturnToDepoComponent implements OnInit {\r\n public loadingIndicator: boolean = true;\r\n public depoViewDescription: IReturnProductDescription[] = [];\r\n public prodcutViewDescription: IDepoViewDescription[] = [];\r\n public depoRevertoDepo: IDepoRevertToDepo = new IDepoRevertToDepo();\r\n public depoRevertoDepoDetail: IDepoRevertToDepoDetail[] = [];\r\n public depoRevertoDepoDetailBarcode: IDepoRevertToDepoDetailBarcode[] = [];\r\n public columns = [];\r\n public storeLists: any;\r\n public supplierList: SupliesDealer[] = [];\r\n public supplierCode: number = 0;\r\n public expanded: any = {};\r\n public revertToDepoForm: FormGroup;\r\n public serialNumber: string = '';\r\n public repeatSerisl: any[] = [];\r\n public warrantyCheckbox: boolean = false;\r\n public saveRevertofDepo = new EventEmitter(false);\r\n\r\n\r\n @Output() saveAndLoadNewData = new EventEmitter();\r\n\r\n\r\n @ViewChild('depoDescriptionTable') depoDescriptionTable: any;\r\n\r\n @ViewChild('editorModalWarrantyInfo')\r\n editorModalWarrantyInfo: ModalDirective;\r\n\r\n constructor(private accountService: AccountService,\r\n private authService: AuthService,\r\n private fBuilder: FormBuilder,\r\n private alertService: AlertService,\r\n public dialog: MatDialog) { }\r\n\r\n ngOnInit() {\r\n this.allStoreListByUser();\r\n this.getSupplierList();\r\n\r\n this.revertToDepoForm = this.fBuilder.group({\r\n supplierCode: new FormControl(null, [Validators.required]),\r\n storeCode: new FormControl(null, [Validators.required]),\r\n serialNumber: new FormControl(null, [Validators.required]),\r\n warrantyStatus: new FormControl(null, [Validators.required])\r\n })\r\n }\r\n\r\n get revertForm() {\r\n return this.revertToDepoForm.controls;\r\n }\r\n\r\n public allStoreListByUser() {\r\n this.accountService.getDepoUserSelectsAllSite(this.authService.currentUser.id).subscribe(\r\n (res) => {\r\n this.storeLists = res;\r\n }\r\n )\r\n }\r\n\r\n public getSupplierList() {\r\n this.accountService.SupliesDealerList().subscribe(\r\n (res) => {\r\n this.supplierList = res;\r\n });\r\n }\r\n\r\n public onKeydownSerial(event: any) {\r\n this.serialNumber = event.target.value;\r\n this.loadingIndicator = true;\r\n this.accountService.getDepoViewDescription(this.serialNumber, this.revertToDepoForm.controls['storeCode'].value).subscribe(\r\n (res) => {\r\n if (res != null) {\r\n let findDepo = this.storeLists.find(x => x.depCode === res.depCode)\r\n if (findDepo != undefined) {\r\n let allowStoreCode = true;\r\n if (this.depoViewDescription.length != 0) {\r\n if (this.depoViewDescription[0].depoCode != res.depCode) {\r\n allowStoreCode = false;\r\n }\r\n } else {\r\n this.revertToDepoForm.controls.storeCode.setValue(res.depCode);\r\n }\r\n if (allowStoreCode) {\r\n this.repeatSerisl.push(res);\r\n if (!this.prodcutViewDescription.some(el => el.barCode === res.barCode) || this.prodcutViewDescription.length < 0) {\r\n this.depoViewDescription = [];\r\n this.prodcutViewDescription = this.repeatSerisl;\r\n this.prodcutViewDescription = [...this.prodcutViewDescription];\r\n this.prodcutViewDescription.forEach(res1 => {\r\n let temp = this.depoViewDescription.find(x => x.productCode == res1.productCode);\r\n if (temp != null) {\r\n let returnProductDescription = new IReturnProductBarcode();\r\n returnProductDescription.productCode = res1.productCode;\r\n returnProductDescription.productSerial = res1.barCode;\r\n returnProductDescription.productName = res1.dcDesc;\r\n temp.depoViewBarcodes.push(returnProductDescription);\r\n temp.productCount = temp.depoViewBarcodes.length;\r\n }\r\n else {\r\n let newReturnProductDescription = new IReturnProductDescription();\r\n newReturnProductDescription.productCode = res1.productCode;\r\n newReturnProductDescription.productName = res1.dcDesc;\r\n newReturnProductDescription.depoCode = res1.depCode;\r\n newReturnProductDescription.productCount = 1;\r\n newReturnProductDescription.depoViewBarcodes = [];\r\n\r\n let RevertProduct = new IReturnProductBarcode();\r\n RevertProduct.productCode = res1.productCode;\r\n RevertProduct.productName = res1.dcDesc;\r\n RevertProduct.productSerial = res1.barCode;\r\n newReturnProductDescription.depoViewBarcodes.push(RevertProduct);\r\n this.depoViewDescription.push(newReturnProductDescription);\r\n this.depoViewDescription = [...this.depoViewDescription];\r\n }\r\n });\r\n }\r\n else {\r\n this.alertService.showMessage('خطا', 'سریال از قبل توسط شما وارد شده است.', MessageSeverity.error);\r\n this.repeatSerisl.pop();\r\n }\r\n }\r\n this.loadingIndicator = false;\r\n this.serialNumber = null;\r\n } else {\r\n this.alertService.showMessage('خطا', 'دسترسی به این سریال برای شما مقدور نمی باشد.', MessageSeverity.error);\r\n this.serialNumber = null;\r\n this.loadingIndicator = false;\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'سریال وارد شده در انبار موجود نمی باشد', MessageSeverity.error);\r\n this.serialNumber = null;\r\n this.loadingIndicator = false;\r\n }\r\n },\r\n (err) => {\r\n this.loadingIndicator = false;\r\n this.serialNumber = null;\r\n this.alertService.showMessage('خطا', 'سریال مورد نظر در انبار موجود نمی باشد', MessageSeverity.error);\r\n }\r\n )\r\n }\r\n\r\n\r\n //public onKeydownSerial(event: any) {\r\n // this.serialNumber = event.target.value;\r\n // this.loadingIndicator = true;\r\n // if (this.revertToDepoForm.controls['supplierCode'].value !== null && this.revertToDepoForm.controls['storeCode'].value !== null) {\r\n // this.accountService.getDepoViewDescription(this.serialNumber).subscribe(\r\n // (res) => {\r\n // if (res != null) {\r\n // if (this.revertToDepoForm.controls['storeCode'].value == res.depCode) {\r\n // this.repeatSerisl.push(res);\r\n // if (!this.prodcutViewDescription.some(el => el.barCode === res.barCode) || this.prodcutViewDescription.length < 0) {\r\n // this.depoViewDescription = [];\r\n // this.prodcutViewDescription = this.repeatSerisl;\r\n // this.prodcutViewDescription = [...this.prodcutViewDescription];\r\n // this.prodcutViewDescription.forEach(res1 => {\r\n // let temp = this.depoViewDescription.find(x => x.productCode == res1.productCode);\r\n // if (temp != null) {\r\n // let returnProductDescription = new IReturnProductBarcode();\r\n // returnProductDescription.productCode = res1.productCode;\r\n // returnProductDescription.productSerial = res1.barCode;\r\n // returnProductDescription.productName = res1.dcDesc;\r\n // temp.depoViewBarcodes.push(returnProductDescription);\r\n // temp.productCount = temp.depoViewBarcodes.length;\r\n // }\r\n // else {\r\n // let newReturnProductDescription = new IReturnProductDescription();\r\n // newReturnProductDescription.productCode = res1.productCode;\r\n // newReturnProductDescription.productName = res1.dcDesc;\r\n // newReturnProductDescription.depoCode = res1.depCode;\r\n // newReturnProductDescription.productCount = 1;\r\n // newReturnProductDescription.depoViewBarcodes = [];\r\n\r\n // let RevertProduct = new IReturnProductBarcode();\r\n // RevertProduct.productCode = res1.productCode;\r\n // RevertProduct.productName = res1.dcDesc;\r\n // RevertProduct.productSerial = res1.barCode;\r\n // newReturnProductDescription.depoViewBarcodes.push(RevertProduct);\r\n // this.depoViewDescription.push(newReturnProductDescription);\r\n // this.depoViewDescription = [...this.depoViewDescription];\r\n // }\r\n // });\r\n // }\r\n // else {\r\n // this.alertService.showMessage('خطا', 'سریال از قبل توسط شما وارد شده است.', MessageSeverity.error);\r\n // this.repeatSerisl.pop();\r\n // }\r\n // } else {\r\n // this.alertService.showMessage('خطا', 'سریال کالا از انبار انتخابی نمی باشد.', MessageSeverity.error);\r\n // this.serialNumber = null;\r\n // this.loadingIndicator = false;\r\n // }\r\n // this.loadingIndicator = false;\r\n // this.serialNumber = null;\r\n // } else {\r\n // this.alertService.showMessage('خطا', 'همچین سریالی در انبار موجود نمی باشد', MessageSeverity.error);\r\n // this.serialNumber = null;\r\n // this.loadingIndicator = false;\r\n // }\r\n // },\r\n // (err) => {\r\n // this.loadingIndicator = false;\r\n // this.serialNumber = null;\r\n // this.alertService.showMessage('خطا', 'سریال مورد نظر در انبار موجود نمی باشد', MessageSeverity.error);\r\n // }\r\n // )\r\n // } else {\r\n // this.alertService.showMessage('خطا', 'تامین کننده یا انبار انتخاب نشده اشت.', MessageSeverity.error);\r\n // }\r\n //}\r\n\r\n public toggleExpandRow(row) {\r\n this.depoDescriptionTable.rowDetail.toggleExpandRow(row)\r\n }\r\n\r\n public onDetailToggle(event) { }\r\n\r\n sendDepoReturnDescription() {\r\n this.depoViewDescription.forEach((res, index) => {\r\n this.depoRevertoDepo.Drtdyear = Number(this.authService.currentUser.phoneNumber);\r\n this.depoRevertoDepo.Drtdcode = 0;\r\n this.depoRevertoDepo.DrtddepCode = res.depoCode;\r\n this.depoRevertoDepo.DrtdrevertDate = this.accountService.getServerDateTime();\r\n this.depoRevertoDepo.DrtdsysDate = this.accountService.getServerDateTime();\r\n this.depoRevertoDepo.DrtduserCode = 31;\r\n this.depoRevertoDepo.DrtddealerCode = this.revertToDepoForm.controls['supplierCode'].value;\r\n this.depoRevertoDepo.Drtdpriceall = 10;\r\n this.depoRevertoDepo.Drtddiscount = 0;\r\n this.depoRevertoDepo.Drtdother = 0;\r\n this.depoRevertoDepo.Drtdremain = 0;\r\n this.depoRevertoDepo.Drtdtax = 0;\r\n this.depoRevertoDepo.Drtdtransport = 0;\r\n this.depoRevertoDepo.DrtddkindRevert = 1;\r\n this.depoRevertoDepo.DrtddateSession = null;\r\n this.depoRevertoDepo.DrtdnumSession = '';\r\n this.depoRevertoDepo.DrtdstatuseRevert = 0;\r\n this.depoRevertoDepo.DrtdcancelBit = false;\r\n\r\n let depoRevertToDepoDetail = new IDepoRevertToDepoDetail();\r\n depoRevertToDepoDetail.Drtddyear = Number(this.authService.currentUser.phoneNumber);\r\n depoRevertToDepoDetail.Drtddcode = 0;\r\n depoRevertToDepoDetail.DrtdddepCode = res.depoCode;\r\n depoRevertToDepoDetail.Drtdddccode = res.productCode;\r\n depoRevertToDepoDetail.Drtddcount = res.productCount;\r\n depoRevertToDepoDetail.Drtdddesc = '';\r\n depoRevertToDepoDetail.DrtddreciveNumber = 0;\r\n depoRevertToDepoDetail.Drtddprice = 0;\r\n depoRevertToDepoDetail.Drtddpricefinal = 0;\r\n depoRevertToDepoDetail.DrtdddescPrice = '';\r\n depoRevertToDepoDetail.DrtdendPrice = 0;\r\n depoRevertToDepoDetail.DrtdpricePersonel = 0;\r\n depoRevertToDepoDetail.Drtddpricefinal = 0;\r\n depoRevertToDepoDetail.DrtdpriceEstehlak = 0;\r\n depoRevertToDepoDetail.DrtdpriceMali = 0;\r\n depoRevertToDepoDetail.DrtdpriceSale = 0;\r\n\r\n res.depoViewBarcodes.forEach((val) => {\r\n let depoRevertToDepoDetailBarcode = new IDepoRevertToDepoDetailBarcode();\r\n depoRevertToDepoDetailBarcode.Drtddyear = Number(this.authService.currentUser.phoneNumber);\r\n depoRevertToDepoDetailBarcode.DrtdddepCode = res.depoCode;\r\n depoRevertToDepoDetailBarcode.Drtdddccode = res.productCode;\r\n depoRevertToDepoDetailBarcode.Drtddcode = 0;\r\n depoRevertToDepoDetailBarcode.DRTDDBarcode = val.productSerial;\r\n this.depoRevertoDepoDetailBarcode.push(depoRevertToDepoDetailBarcode);\r\n })\r\n depoRevertToDepoDetail.DepoRevertToDepoDetailBarcode = [...this.depoRevertoDepoDetailBarcode];\r\n this.depoRevertoDepoDetail.push(depoRevertToDepoDetail);\r\n this.depoRevertoDepoDetailBarcode = [];\r\n })\r\n this.depoRevertoDepo.DepoRevertToDepoDetail = [...this.depoRevertoDepoDetail];\r\n this.accountService.postDepoReverToDepoes(this.depoRevertoDepo).subscribe(\r\n (res) => {\r\n this.depoViewDescription = [];\r\n this.prodcutViewDescription = [];\r\n this.repeatSerisl = [];\r\n this.depoRevertoDepo = new IDepoRevertToDepo();\r\n this.alertService.showMessage('ذخیره', \"اطلاعات با موفقیت ذخیره شد.\", MessageSeverity.success);\r\n this.saveRevertofDepo.emit(true);\r\n this.saveAndLoadNewData.emit(this.revertToDepoForm.controls['storeCode'].value);\r\n this.revertToDepoForm.reset();\r\n },\r\n (err) => {\r\n this.depoRevertoDepo = null;\r\n this.depoRevertoDepo.DepoRevertToDepoDetail = [];\r\n this.depoRevertoDepoDetailBarcode = [];\r\n }\r\n )\r\n }\r\n\r\n showModal(event: any) {\r\n this.warrantyCheckbox = event.target.checked\r\n if (this.warrantyCheckbox) {\r\n this.editorModalWarrantyInfo.show();\r\n } else {\r\n event.target.unchecked;\r\n }\r\n }\r\n\r\n editorModalHide() {\r\n this.editorModalWarrantyInfo.hide();\r\n this.warrantyCheckbox = false;\r\n }\r\n\r\n\r\n removeProduct(row) {\r\n this.depoViewDescription.forEach((element, index) => {\r\n if (element == row) this.depoViewDescription.splice(index, 1);\r\n return;\r\n });\r\n this.depoViewDescription = [...this.depoViewDescription];\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n سریال کالا\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\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 {Observable} from 'rxjs';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {ConfigurationService} from '../configuration.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class SaleClosingManagementService {\r\n allowChangeData = true;\r\n urlService = \"/api/SaleClosingManagement/\";\r\n\r\n\r\n constructor(\r\n private configurations: ConfigurationService,\r\n private http: HttpClient) {\r\n }\r\n\r\n\r\n get baseAddress() {\r\n return this.configurations.baseUrl + this.urlService;\r\n }\r\n\r\n getAllowSale(): Observable {\r\n return this.http.get(this.baseAddress + \"get-allow-sale\");\r\n }\r\n}\r\n","export class updateCheckModel {\r\n isUpdate: boolean;\r\n SayadiNumber: string;\r\n checkNumber: string;\r\n}\r\n","import { Component, OnInit, AfterViewInit, TemplateRef, ViewChild, Input } from '@angular/core';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\n\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { User } from '../../models/user.model';\r\nimport { Role } from '../../models/role.model';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { UserEdit } from '../../models/user-edit.model';\r\nimport { UserInfoComponent } from './user-info.component';\r\nimport { AuthService } from '../../services/auth.service';\r\n\r\n\r\n@Component({\r\n selector: 'users-management',\r\n templateUrl: './users-management.component.html',\r\n styleUrls: ['./users-management.component.scss']\r\n})\r\nexport class UsersManagementComponent implements OnInit, AfterViewInit {\r\n columns: any[] = [];\r\n rows: User[] = [];\r\n rowsCache: User[] = [];\r\n editedUser: UserEdit;\r\n sourceUser: UserEdit;\r\n editingUserName: { name: string };\r\n loadingIndicator: boolean;\r\n public Cmain: number;\r\n allRoles: Role[] = [];\r\n\r\n\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('userNameTemplate', { static: true })\r\n userNameTemplate: TemplateRef;\r\n\r\n @ViewChild('rolesTemplate', { static: true })\r\n rolesTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n @ViewChild('userEditor', { static: true })\r\n userEditor: UserInfoComponent;\r\n\r\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private accountService: AccountService, private authService: AuthService) {\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'jobTitle', name: gT('users.management.Title'), width: 50 },\r\n { prop: 'userName', name: gT('users.management.UserName'), width: 90, cellTemplate: this.userNameTemplate },\r\n { prop: 'fullName', name: gT('users.management.FullName'), width: 120 },\r\n { prop: 'email', name: gT('users.management.Email'), width: 140 },\r\n { prop: 'roles', name: gT('users.management.Roles'), width: 120, cellTemplate: this.rolesTemplate },\r\n { prop: 'phoneNumber', name: gT('users.management.PhoneNumber'), width: 100 }\r\n ];\r\n\r\n if (this.canManageUsers) {\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n\r\n this.loadData();\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n\r\n this.userEditor.changesSavedCallback = () => {\r\n this.addNewUserToList();\r\n this.editorModal.hide();\r\n };\r\n\r\n this.userEditor.changesCancelledCallback = () => {\r\n this.editedUser = null;\r\n this.sourceUser = null;\r\n this.editorModal.hide();\r\n };\r\n }\r\n\r\n\r\n addNewUserToList() {\r\n if (this.sourceUser) {\r\n Object.assign(this.sourceUser, this.editedUser);\r\n\r\n let sourceIndex = this.rowsCache.indexOf(this.sourceUser, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rowsCache, sourceIndex, 0);\r\n }\r\n\r\n sourceIndex = this.rows.indexOf(this.sourceUser, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rows, sourceIndex, 0);\r\n }\r\n\r\n this.editedUser = null;\r\n this.sourceUser = null;\r\n } else {\r\n const user = new User();\r\n Object.assign(user, this.editedUser);\r\n this.editedUser = null;\r\n\r\n let maxIndex = 0;\r\n for (const u of this.rowsCache) {\r\n if ((u as any).index > maxIndex) {\r\n maxIndex = (u as any).index;\r\n }\r\n }\r\n\r\n (user as any).index = maxIndex + 1;\r\n\r\n this.rowsCache.splice(0, 0, user);\r\n this.rows.splice(0, 0, user);\r\n this.rows = [...this.rows];\r\n }\r\n }\r\n\r\n\r\n loadData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest(res));\r\n\r\n \r\n }\r\n\r\n MethodTest(joker: number) {\r\n \r\n\r\n if (this.canViewRoles) {\r\n this.accountService.getUsersAndRoles(0, 0, joker).subscribe(results => this.onDataLoadSuccessful(results[0], results[1]), error => this.onDataLoadFailed(error));\r\n } else {\r\n this.accountService.getUsers().subscribe(users => this.onDataLoadSuccessful(users, this.accountService.currentUser.roles.map(x => new Role(x))), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n }\r\n\r\n\r\n onDataLoadSuccessful(users: User[], roles: Role[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n users.forEach((user, index, users) => {\r\n (user as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...users];\r\n this.rows = users;\r\n\r\n this.allRoles = roles;\r\n }\r\n\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.userName, r.fullName, r.email, r.phoneNumber, r.jobTitle, r.roles));\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.editingUserName = null;\r\n this.userEditor.resetForm(true);\r\n }\r\n\r\n\r\n newUser() {\r\n this.editingUserName = null;\r\n this.sourceUser = null;\r\n this.editedUser = this.userEditor.newUser(this.allRoles);\r\n this.editorModal.show();\r\n }\r\n\r\n\r\n editUser(row: UserEdit) {\r\n this.editingUserName = { name: row.userName };\r\n this.sourceUser = row;\r\n this.editedUser = this.userEditor.editUser(row, this.allRoles);\r\n this.editorModal.show();\r\n }\r\n\r\n\r\n deleteUser(row: UserEdit) {\r\n this.alertService.showDialog('آیا از حذف کاربر \\\"' + row.userName + '\\\" اطمینان دارید?', DialogType.confirm, () => this.deleteUserHelper(row));\r\n }\r\n\r\n\r\n deleteUserHelper(row: UserEdit) {\r\n\r\n this.alertService.startLoadingMessage('Deleting...');\r\n this.loadingIndicator = true;\r\n\r\n this.accountService.deleteUser(row)\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.rowsCache = this.rowsCache.filter(item => item !== row);\r\n this.rows = this.rows.filter(item => item !== row);\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the user.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n\r\n get canAssignRoles() {\r\n return this.accountService.userHasPermission(Permission.assignRolesPermission);\r\n }\r\n\r\n get canViewRoles() {\r\n return this.accountService.userHasPermission(Permission.viewRolesPermission);\r\n }\r\n\r\n get canManageUsers() {\r\n return this.accountService.userHasPermission(Permission.manageUsersPermission);\r\n }\r\n}\r\n","
\n
\n
\n
\n >\n
\n
\n \n
\n\n \n \n\n \n {{value}}\n \n\n \n \n \n \n {{value}}\n \n \n\n \n {{role}}\n \n\n \n \n \n\n\n
\n
\n
\n
\n

{{'users.management.NewUser' | translate}}

\n

{{'users.management.EditUser' | translate:editingUserName}}

\n \n
\n
\n \n
\n
\n
\n
\n
\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class VMSalePreInvoiceForContractProduct_BarCode {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(spipYear?: number, spipPartCode?: number, spipCode?: number, spipRevesion?: number, spipProductCode?: string, spipAmount?: number, spipFromDeliveryDate?: string, spipToDeliveryDate?: string, spipPrice?: number, spipDiscountPercent?: number, spipTaxStore?: number, spipComissionStore?: number, spipBasePrice?: number, spipOverHead?: number, spipPriceArsam?: number, MoneyCode?: number, BarCode?: string) {\r\n this.spipYear = spipYear;\r\n this.spipPartCode = spipPartCode;\r\n this.spipCode = spipCode;\r\n this.spipRevesion = spipRevesion;\r\n this.spipProductCode = spipProductCode;\r\n this.spipAmount = spipAmount;\r\n this.spipFromDeliveryDate = spipFromDeliveryDate;\r\n this.spipToDeliveryDate = spipToDeliveryDate;\r\n this.spipPrice = spipPrice;\r\n this.spipDiscountPercent = spipDiscountPercent;\r\n this.spipComissionStore = spipComissionStore;\r\n this.spipTaxStore = spipTaxStore;\r\n this.spipBasePrice = spipBasePrice;\r\n this.spipOverHead = spipOverHead;\r\n this.spipPriceArsam = spipPriceArsam;\r\n this.moneyCode = MoneyCode;\r\n this.barCode = BarCode;\r\n }\r\n public spipYear: number;\r\n public spipPartCode: number;\r\n public spipCode: number;\r\n public spipRevesion: number;\r\n public spipProductCode: string;\r\n public spipAmount: number;\r\n public spipFromDeliveryDate: string;\r\n public spipToDeliveryDate: string;\r\n public spipPrice: number;\r\n public spipDiscountPercent: number;\r\n public spipComissionStore: number;\r\n public spipTaxStore: number;\r\n public spipBasePrice: number;\r\n public spipOverHead: number;\r\n public spipPriceArsam: number;\r\n public moneyCode: number; \r\n public barCode: string;\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, Subject, forkJoin, from } from 'rxjs';\r\nimport { mergeMap, tap } from 'rxjs/operators';\r\nimport { AccountEndpoint } from './account-endpoint.service';\r\nimport { SalecustomerEndpoint } from './salecustomer-endpoint.service';\r\nimport { AuthService } from './auth.service';\r\nimport { SaleCustomer } from '../models/SaleCustomer.model';\r\nimport { Permission, PermissionNames, PermissionValues } from '../models/permission.model';\r\nimport { ViewModelUser } from '../models/CMainCode.model'\r\nimport { group } from '../models/group.model';\r\nimport { Global } from '../models/Global.model';\r\nimport { Params } from '@angular/router';\r\n@Injectable()\r\nexport class GlobalConstantsservice {\r\n\r\n constructor( private AccountEndpoint: AccountEndpoint, private authService: AuthService) {\r\n }\r\n\r\n //ngOnInit() {\r\n // this.AccountEndpoint.GetCMainCodeEndpoint(this.authService.currentUser.id).subscribe(res => (this.methodreturn(res)));\r\n //}\r\n\r\n //ngOnChanges() {\r\n // this.AccountEndpoint.GetCMainCodeEndpoint(this.authService.currentUser.id).subscribe(res => (this.methodreturn(res)));\r\n //}\r\n //public static obj: Global = new Global();\r\n //static getCuurrntCmain() {\r\n // AccountEndpoint.GetCMainCodeEndpointStatic(AuthService.currentUser.id).subscribe(res => (this.methodreturn(res)));\r\n //}\r\n //static methodreturn(res: number): void {\r\n // this.obj.cmain = res;\r\n //}\r\n\r\n\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\nimport { CustomerImagesNameEnum } from '../../enums/customer-images-name.enum';\nimport { ShowUploadPage } from '../../enums/show-upload-page.enum';\nimport { SaleCustomerImageModel } from '../../models/SaleCustomerImage.model';\nimport { environment } from '../../../environments/environment';\nimport { SaleCustomerImageInfosService } from '../../services/sale-customer-service/sale-customer-image-infos.service';\nimport { PreInvoice } from '../../models/PreInvoice.model';\nimport { GradeModel } from '../../Grades/Grade.model';\nimport { CustomerGradeModel } from '../../models/customer-grade.model';\nimport { CustomerGradeService } from '../../services/sale-customer-service/customer-grade.service';\nimport { AuthService } from '../../services/auth.service';\ndeclare var $: any;\n\n@Component({\n selector: 'record-personal-information-info',\n templateUrl: './record-personal-information-info.component.html',\n styleUrls: ['./record-personal-information-info.component.scss']\n})\nexport class RecordPersonalInformationInfoComponent implements OnInit {\n public checkInformationForm: FormGroup;\n public uploadFiles: File[] = [];\n public listUploadFileName: string[] = [];\n public images: File[] = [];\n public image: File;\n public imageSrc: string;\n public modalEnumValue = CustomerImagesNameEnum;\n public showUploadPage = ShowUploadPage;\n public checkIamge: boolean = true;\n public customerImagesObj = new SaleCustomerImageModel();\n public tooltipText: string = '';\n \n @Input() selectedGrade: CustomerGradeModel;\n @Input() customerImages: SaleCustomerImageModel[] = [];\n @Input() customerInfoData: SaleCustomer;\n @Input() applicantPage: number = 0;\n @Input() gradeInfos: GradeModel[] = [];\n @Output() changeModal = new EventEmitter();\n @Output() getCustomerImage = new EventEmitter();\n @Output() changeGrade = new EventEmitter();\n\n constructor(private formbuilder: FormBuilder\n , private alertService: AlertService\n , private saleCustomerImageInfosService: SaleCustomerImageInfosService\n , private customerGradeService: CustomerGradeService\n , private authService: AuthService) { }\n\n ngOnInit() {\n this.checkInformationForm = this.formbuilder.group({\n birthCertificate: new FormControl(\"\", [Validators.required]),\n nationalCard: new FormControl(\"\", [Validators.required]),\n certificateOfEmployment: new FormControl(\"\", [Validators.required]),\n eductionOfSalaries: new FormControl(\"\", [Validators.required]),\n validationReport: new FormControl(\"\", [Validators.required]),\n selectedGradeInfo: new FormControl(\"\")\n });\n }\n\n onSelectUploadFile(event: FileList, value: number) {\n let insertImage = false;\n if (this.uploadFiles.length == 0) {\n insertImage = true;\n }\n else if (this.uploadFiles.length > 0) {\n if (this.listUploadFileName.find((find) => find == event.item(0).name) == undefined)\n insertImage = true;\n }\n if (insertImage) {\n this.listUploadFileName.push(event.item(0).name);\n if (event.item(0).size <= 1000000 && event.item(0).type == \"image/jpeg\") {\n this.uploadFiles[value - 1] = event.item(0);\n if (this.uploadFiles[value - 1] && event.length != 0) {\n let reader = new FileReader();\n reader.onload = (event2: any) => {\n this.images[value - 1] = event2.target.result;\n }\n reader.readAsDataURL(this.uploadFiles[value - 1]);\n }\n const formData = new FormData;\n formData.append(value.toString(), this.uploadFiles[value - 1]);\n this.saleCustomerImageInfosService.uploadCustomerImages(this.customerInfoData.cMainCode.toString(), this.customerInfoData.cSubCode.toString(), formData)\n .subscribe((res) => {\n this.responseUploadCustomerImages(this.customerInfoData.cMainCode, this.customerInfoData.cSubCode, value);\n });\n\n } else {\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\n }\n } else {\n this.alertService.showMessage('هشدار', 'عکس انتخابی از قبل در لیست وجود دارد.', MessageSeverity.warn)\n }\n }\n\n responseUploadCustomerImages(cMainCode: number, cSubCode: number, value: number) {\n let newSaleCustomerImage: SaleCustomerImageModel[] = [];\n let SaleCustomerImage = new SaleCustomerImageModel();\n const findCustomerImages = this.customerImages.find(x => x.saleCustomerImageTypeId == value);\n SaleCustomerImage.id = findCustomerImages != undefined ? findCustomerImages.id : 0;\n SaleCustomerImage.cMainCode = cMainCode;\n SaleCustomerImage.cSubCode = cSubCode;\n SaleCustomerImage.saleCustomerImageStatusId = 1;\n SaleCustomerImage.saleCustomerImageTypeId = value;\n SaleCustomerImage.isDeleted = 0;\n newSaleCustomerImage.push(SaleCustomerImage);\n this.saleCustomerImageInfosService.addOrUploadImageCustomerInfo(newSaleCustomerImage).subscribe(\n (result) => {\n this.getCustomerImage.emit();\n });\n\n }\n\n submitCheckInformationForm() {\n if (this.applicantPage === ShowUploadPage.customers) {\n let allowInsert = true;\n\n if (this.customerImages.find(x => x.saleCustomerImageTypeId == 1) == undefined) {\n this.alertService.showMessage('هشدار', 'لطفا تصویر شناسنامه را بارگذاری نمایید', MessageSeverity.warn);\n allowInsert = false;\n }\n if (this.customerImages.find(x => x.saleCustomerImageTypeId == 2) == undefined) {\n this.alertService.showMessage('هشدار', 'لطفا تصویر کارت ملی را بارگذاری نمایید', MessageSeverity.warn);\n allowInsert = false;\n }\n if (this.customerImages.find(x => x.saleCustomerImageTypeId == 3) == undefined) {\n this.alertService.showMessage('هشدار', 'لطفا تصویر اشتغال بکار یا جواز کسب یا فیش حقوقی را بارگذاری نمایید', MessageSeverity.warn);\n allowInsert = false;\n }\n if (this.customerImages.find(x => x.saleCustomerImageTypeId == 5) == undefined) {\n this.alertService.showMessage('هشدار', 'لطفا گزارش اعتبارسنجی سامانه ایران کردیت را بارگذاری نمایید', MessageSeverity.warn);\n allowInsert = false;\n }\n if (allowInsert) {\n this.alertService.showMessage('ارسال شد', 'مدارک آپلود شده با موفقیت در سرور ذخیره گردیده است.', MessageSeverity.success);\n this.changeModal.emit();\n }\n }\n else if (this.applicantPage === ShowUploadPage.customerDocuments) {\n this.saleCustomerImageInfosService.updateCustomerImage(this.customerImages).subscribe(\n (res) => {\n let customerGrade = new CustomerGradeModel();\n customerGrade.Active = true;\n customerGrade.CustomerId = this.selectedGrade.CustomerId;\n customerGrade.GradeId = this.selectedGrade.GradeId;\n customerGrade.InsertUser = this.authService.currentUser.id;\n this.customerGradeService.addCustomerGrade(customerGrade).subscribe((res) => {\n this.alertService.showMessage('ذخیره شد', 'اطلاعات با موفقیت در سرور ذخیره شدند.', MessageSeverity.success);\n this.changeModal.emit();\n },\n (err) => {\n this.alertService.showMessage('ذخیره اطلاعات', 'در ثبت گرید خطایی رخ داده است', MessageSeverity.error);\n this.changeModal.emit();\n });\n },\n (err) => {\n this.alertService.showMessage('هشدار', 'مشکلی در ارتباط با سرور پیش آمده لطفا دوباره تلاش کنید.', MessageSeverity.warn)\n }\n )\n\n }\n }\n\n cnacelUpload() {\n this.checkInformationForm.reset();\n this.changeModal.emit();\n }\n\n showImage(value: number) {\n const findImage = this.customerImages.find(x => x.saleCustomerImageTypeId == value);\n if (findImage != undefined) {\n const domainName = environment.production ? 'https://172.16.60.10/' : 'https://localhost:44350/';\n this.imageSrc = domainName + findImage.imageAddress;\n $('.birthCertificateModal').modal('show');\n }\n else {\n this.alertService.showMessage('هشدار', 'عکسی برای نمایش وجود ندارد.', MessageSeverity.warn);\n }\n }\n\n statusImage(value: number, status: number) {\n let findImage = this.customerImages.find(x => x.saleCustomerImageTypeId == value);\n if (findImage != undefined) {\n if (status === 3) {\n $('.input-box').modal('show');\n this.customerImagesObj = findImage;\n findImage.saleCustomerImageStatusId = status;\n } else {\n findImage.saleCustomerImageStatusId = status;\n findImage.notAcceptDescription = '';\n }\n } else {\n this.alertService.showMessage('هشدار', 'تصویری در جهت تایید یا رد بارگذاری نگردیده است', MessageSeverity.warn);\n }\n this.SetGardeCustomer();\n }\n\n SetGardeCustomer() {\n this.changeGrade.emit();\n }\n\n allowUseUploadImage(imageType: number) {\n let findImage = this.customerImages.find(x => x.saleCustomerImageTypeId == imageType);\n let imageStatus = false;\n if ((findImage != undefined) && (findImage.saleCustomerImageStatusId == 2)) {\n imageStatus = true;\n }\n return imageStatus;\n }\n\n saveChange() {\n $('.input-box').modal('hide');\n }\n\n closeModal() {\n $('.birthCertificateModal').modal('hide');\n }\n\n backgroundChange(value: number, customerData: SaleCustomerImageModel[]) {\n let classname = 'white-back';\n if (this.applicantPage === ShowUploadPage.customers) {\n if (customerData.length > 0) {\n customerData.forEach((item) => {\n if (item.saleCustomerImageTypeId == value) {\n if (item.saleCustomerImageStatusId === 3) {\n classname = 'light-red-back';\n } else {\n classname = 'light-green-back';\n }\n }\n });\n }\n } else {\n if (customerData.length > 0) {\n customerData.forEach((item) => {\n if (item.saleCustomerImageTypeId == value) {\n if (item.saleCustomerImageStatusId === 3) {\n classname = 'light-red-back';\n } else if (item.saleCustomerImageStatusId === 2) {\n classname = 'light-green-back';\n }\n }\n });\n }\n }\n return classname;\n }\n\n closeInputBoxModal() {\n $('.input-box').modal('hide');\n }\n\n showTooltip(imageType: number) {\n let findImage = this.customerImages.find(x => x.saleCustomerImageTypeId == imageType);\n if (findImage != undefined) {\n this.tooltipText = findImage.notAcceptDescription;\n }\n }\n\n hideTooltip(value) {\n if (this.customerImages.length > 0) {\n this.tooltipText = '';\n }\n }\n\n}\n","
\r\n
\r\n
\r\n\r\n
\r\n

بارگذاری مدارک

\r\n

مدارک بارگذاری شده

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

نام و نام خانوادگی : {{customerInfoData.cName}}

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

کد ملی : {{customerInfoData.cPublicCode}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n عکس شناسنامه *\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n عکس کارت ملی *\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n عکس اشتغال بکار یا جواز کسب یا فیش حقوقی *\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n گواهی کسر از حقوق دولتی\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n گزارش اعتبارسنجی سامانه ایران کردیت *\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n سطح مشتری برای دریافت اقساط\r\n
\r\n
\r\n
\r\n
\r\n \r\n انتخاب گرید\r\n \r\n \r\n ({{grade.gradeName}}) تا سقف ({{grade.gradeMoney}})\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
نمایش تصویر
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n علت عدم تایید\r\n
\r\n
\r\n
\r\n
\r\n \r\n توضیحات\r\n \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, OnDestroy, Input} from '@angular/core';\r\nimport {AlertService, MessageSeverity, DialogType} from '../../services/alert.service';\r\nimport {AuthService} from '../../services/auth.service';\r\nimport {ConfigurationService} from '../../services/configuration.service';\r\nimport {Utilities} from '../../services/utilities';\r\nimport {UserLogin} from '../../models/user-login.model';\r\nimport {AccountService} from '../../services/account.service';\r\nimport {MyCompanyService} from '../../services/MyCompany.service';\r\nimport {SharedService} from '../../services/Shared.service';\r\nimport {Subscription} from 'rxjs';\r\nimport {User} from '../../models/user.model';\r\nimport {SaleCustomer} from '../../models/SaleCustomer.model';\r\nimport {AbstractControl, FormBuilder, FormControl, FormGroup, ValidationErrors, ValidatorFn, Validators} from '@angular/forms';\r\nimport {SaleClosingManagementService} from '../../services/base-services/sale-closing-management.service';\r\nimport {Router} from \"@angular/router\";\r\n\r\n\r\ndeclare var $;\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss']\r\n})\r\n\r\nexport class LoginComponent implements OnInit, OnDestroy {\r\n\r\n public loginForm!: FormGroup;\r\n isLoading = false;\r\n formResetToggle = true;\r\n userLogin = new UserLogin();\r\n modalClosedCallback: () => void;\r\n public cmain: string;\r\n loginStatusSubscription: any;\r\n subscription: Subscription;\r\n message: string;\r\n public showPassword: boolean;\r\n public showPasswordOnPress: boolean;\r\n\r\n captchaConfig: any = {\r\n type: 1,\r\n length: 5,\r\n cssClass: \"custom\",\r\n back: {\r\n stroke: \"#2F9688\",\r\n solid: \"#f2efd2\",\r\n },\r\n font: {\r\n color: \"#000000\",\r\n size: \"50px\",\r\n },\r\n };\r\n captch_input: any = null;\r\n code: any = null;\r\n resultCode: any = null;\r\n checkCaptchaValue: boolean = false;\r\n\r\n // the captcha config\r\n // public theme: 'light' | 'dark' = 'light';\r\n // public size: 'compact' | 'normal' = 'normal';\r\n // public lang = 'en';\r\n // public type: 'image' | 'audio';\r\n\r\n constructor(private authService: AuthService,\r\n private alertService: AlertService,\r\n private router: Router,\r\n private fBuilder: FormBuilder,\r\n private accountService: AccountService,\r\n private configurations: ConfigurationService,\r\n private myCompanyService: MyCompanyService,\r\n private saleClosingManagementService: SaleClosingManagementService,\r\n private sharedService: SharedService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.createCaptcha();\r\n\r\n this.saleClosingManagementService.getAllowSale().subscribe(res => {\r\n this.saleClosingManagementService.allowChangeData = res;\r\n });\r\n this.loginForm = this.fBuilder.group({\r\n username: new FormControl(\"\", Validators.required),\r\n password: new FormControl(\"\", Validators.required),\r\n recaptcha: new FormControl(\"\", [Validators.required, this.createMatchCaptchaValidator()]),\r\n rememberme: new FormControl()\r\n });\r\n\r\n this.userLogin.rememberMe = this.authService.rememberMe;\r\n\r\n if (this.getShouldRedirect()) {\r\n this.authService.redirectLoginUser();\r\n } else {\r\n this.loginStatusSubscription = this.authService.getLoginStatusEvent().subscribe(isLoggedIn => {\r\n if (this.getShouldRedirect()) {\r\n this.authService.redirectLoginUser();\r\n }\r\n });\r\n }\r\n\r\n this.subscription = this.sharedService.currentMessage.subscribe(message => this.message = message);\r\n }\r\n\r\n get username() {\r\n return this.loginForm.controls[\"username\"];\r\n }\r\n\r\n get password() {\r\n return this.loginForm.controls[\"password\"];\r\n }\r\n\r\n get recaptcha() {\r\n return this.loginForm.controls[\"recaptcha\"];\r\n }\r\n\r\n cancel() {\r\n this.router.navigate(['']);\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.loginStatusSubscription) {\r\n this.loginStatusSubscription.unsubscribe();\r\n }\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n public getuserLogined(isUserLoggedIn: boolean, CMain: number) {\r\n if (isUserLoggedIn && this.authService.currentUser) {\r\n if (CMain > 0) {\r\n this.accountService.getNameHeader(this.authService.currentUser.id).subscribe(res => this.MethodSetValueStore(res), error => this.myCompanyService.saveFailedHelper(error));\r\n\r\n } else {\r\n this.accountService.get_User(this.accountService.currentUser.id).subscribe(res => this.MethodSetValueSuppliers(res), error => this.myCompanyService.saveFailedHelper(error));\r\n }\r\n }\r\n }\r\n\r\n MethodSetValueSuppliers(user: User) {\r\n this.sharedService.changeMessage(\" کاربر فعال: \" + user.userName == this.accountService.currentUser.fullName ? \"\" : user.userName + \" - \" + this.accountService.currentUser.fullName + \" \" + \"نسخه:\" + \"0.0.0\");\r\n }\r\n\r\n MethodSetValueStore(saleCustomer: SaleCustomer) {\r\n this.sharedService.changeMessage(\" کاربر فعال: \" + saleCustomer.cName == this.accountService.currentUser.fullName ? \"\" : saleCustomer.cName + \" - \" + this.accountService.currentUser.fullName + \" \" + \"نسخه:\" + \"0.0.0\");\r\n }\r\n\r\n getShouldRedirect() {\r\n return this.authService.isLoggedIn && !this.authService.isSessionExpired;\r\n }\r\n\r\n\r\n submitLoginForm() {\r\n if (this.loginForm.valid) {\r\n this.isLoading = true;\r\n this.alertService.startLoadingMessage('', 'تلاش برای ورود به سیستم...');\r\n let {username, password, rememberme} = this.loginForm.value;\r\n this.authService.login(username, password, rememberme)\r\n .subscribe(\r\n resault => {\r\n this.alertService.stopLoadingMessage();\r\n this.isLoading = false;\r\n this.reset();\r\n this.accountService.getCMainCode(resault.id).subscribe(res => this.MethodTestCmain(res));\r\n this.alertService.showMessage('ورود', `خوش آمدید ${resault.userName}!`, MessageSeverity.success);\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n if (Utilities.checkNoNetwork(error)) {\r\n this.alertService.showStickyMessage(Utilities.noNetworkMessageCaption, Utilities.noNetworkMessageDetail, MessageSeverity.error, error);\r\n this.offerAlternateHost();\r\n } else {\r\n const errorMessage = Utilities.getHttpResponseMessage(error);\r\n if (errorMessage) {\r\n this.alertService.showStickyMessage('عدم ورود', this.mapLoginErrorMessage(errorMessage), MessageSeverity.error, error);\r\n } else {\r\n this.alertService.showStickyMessage('عدم ورود', 'An error occured whilst logging in, please try again later.\\nError: ' + Utilities.getResponseBody(error), MessageSeverity.error, error);\r\n }\r\n }\r\n setTimeout(() => {\r\n this.isLoading = false;\r\n }, 500);\r\n });\r\n } else {\r\n Object.keys(this.loginForm.controls).forEach(field => {\r\n const control = this.loginForm.get(field);\r\n control?.markAsTouched({onlySelf: true});\r\n });\r\n }\r\n }\r\n\r\n MethodTestCmain(res: any) {\r\n this.cmain = res;\r\n this.getuserLogined(true, res);\r\n\r\n }\r\n\r\n offerAlternateHost() {\r\n if (Utilities.checkIsLocalHost(location.origin) && Utilities.checkIsLocalHost(this.configurations.baseUrl)) {\r\n this.alertService.showDialog('Dear Developer!\\nIt appears your backend Web API service is not running...\\n' +\r\n 'Would you want to temporarily switch to the online Demo API below?(Or specify another)',\r\n DialogType.prompt,\r\n (value: string) => {\r\n this.configurations.baseUrl = value;\r\n this.configurations.tokenUrl = value;\r\n this.alertService.showStickyMessage('API Changed!', 'The target Web API has been changed to: ' + value, MessageSeverity.warn);\r\n },\r\n null,\r\n null,\r\n null,\r\n this.configurations.fallbackBaseUrl);\r\n }\r\n }\r\n\r\n\r\n mapLoginErrorMessage(error: string) {\r\n\r\n if (error == 'invalid_username_or_password') {\r\n return 'نام کاربری و رمز عبور اشتباه است';\r\n }\r\n\r\n if (error == 'invalid_grant') {\r\n return 'اکانت شما غیرفعال شده است';\r\n }\r\n return error;\r\n }\r\n\r\n reset() {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n\r\n // Function to check if captcha input is correct\r\n createMatchCaptchaValidator(): ValidatorFn {\r\n return (control: AbstractControl): ValidationErrors | null => {\r\n const value = control.value;\r\n if (!value) {\r\n return null;\r\n }\r\n const hasUpperCase = /[A-Z]+/.test(value);\r\n const hasValid = this.resultCode === value ? true : false;\r\n const passwordValid = hasUpperCase && hasValid;\r\n return !passwordValid ? {captchaMatch: true} : null;\r\n };\r\n }\r\n\r\n // Function to create a new captcha\r\n createCaptcha() {\r\n let char =\r\n Math.random()\r\n .toString(24)\r\n .substring(2, this.captchaConfig.length) +\r\n Math.random().toString(24).substring(2, 4);\r\n this.code = this.resultCode = char.toUpperCase();\r\n\r\n setTimeout(() => {\r\n let captcahCanvas: any = document.getElementById(\"captcahCanvas\");\r\n var ctx = captcahCanvas.getContext(\"2d\");\r\n ctx.fillStyle = this.captchaConfig.back.solid;\r\n ctx.fillRect(0, 0, captcahCanvas.width, captcahCanvas.height);\r\n\r\n ctx.beginPath();\r\n\r\n captcahCanvas.style.letterSpacing = 15 + \"px\";\r\n ctx.font = this.captchaConfig.font.size + \" \" + this.captchaConfig.font.family;\r\n ctx.fillStyle = this.captchaConfig.font.color;\r\n ctx.textBaseline = \"middle\";\r\n ctx.fillText(this.code, 300, 50);\r\n if (this.captchaConfig.back.stroke) {\r\n ctx.strokeStyle = this.captchaConfig.back.stroke;\r\n for (var i = 0; i < 150; i++) {\r\n ctx.moveTo(Math.random() * 300, Math.random() * 300);\r\n ctx.lineTo(Math.random() * 300, Math.random() * 300);\r\n }\r\n ctx.stroke();\r\n }\r\n\r\n }, 100);\r\n // Generate captcha code and render it on canvas\r\n }\r\n\r\n // Function to reload captcha\r\n reloadCaptcha(): void {\r\n this.createCaptcha();\r\n // Reload captcha by generating a new code\r\n }\r\n\r\n}\r\n","
\r\n
\r\n

ورود کاربر

\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n این قسمت اجباری می باشد.\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n این قسمت اجباری می باشد.\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n این قسمت اجباری می باشد.\r\n متن تصویر درست نمی باشد.\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\n\r\nimport { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../../services/alert.service';\r\nimport { Utilities } from '../../../services/utilities';\r\nimport { SaleCustomer } from '../../../models/SaleCustomer.model';\r\nimport { AccountService } from '../../../services/account.service';\r\nimport { AuthService } from '../../../services/auth.service';\r\n\r\nimport { Permission } from '../../../models/permission.model';\r\nimport { group } from '../../../models/group.model';\r\nimport { ViewModelUser } from '../../../models/CMainCode.model';\r\nimport { SaleCustomerService } from '../../../services/SaleCustomer.service';\r\nimport { Ostan } from '../../../models/Ostan.model';\r\nimport { City } from '../../../models/City.model';\r\nimport { PubCar } from '../../../models/PubCar.model';\r\nimport { PubCarKind } from '../../../models/PubCarKind.model';\r\nimport { PubDrivers } from '../../../models/PubDrivers.model';\r\n\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'print-depo',\r\n templateUrl: './print-depo.component.html'\r\n})\r\nexport class printdepoComponent {\r\n\r\n public isEditMode = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public objPubDrivers: PubDrivers = new PubDrivers();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allPubCar: PubCar[] = [];\r\n public Dcode: number;\r\n public Dccode: number;\r\n public payam: string = \"In the name Of God\";\r\n editingCName: { name: string };\r\n NumberLoading: { name: string };\r\n NumberOrder: { name: string };\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService, private SaleCustomerService: SaleCustomerService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.LoadDriversCars();\r\n this.accountService.GetNewDriverCode().subscribe(res => this.MethodloadNewCode(res));\r\n this.accountService.getNameHeader(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res), error => this.saveFailedHelper(error));\r\n this.NumberLoading = { name: \"1256\" };\r\n this.NumberOrder = { name: \"45901\" };\r\n }\r\n MethodTest1(joker: SaleCustomer) {\r\n this.editingCName = { name: joker.cName };\r\n }\r\n\r\n private LoadDriversCars() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getPubCars().subscribe(results => this.onCurrentHesabKindDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n\r\n private onCurrentHesabKindDataLoadSuccessful(PubcarsObj: PubCar[]) {\r\n PubcarsObj.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.Dccode = user.ccode;\r\n\r\n }\r\n });\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.allPubCar = PubcarsObj;\r\n\r\n }\r\n\r\n MethodloadNewCode(loadNewCode: number) {\r\n this.objPubDrivers.dcode = loadNewCode;\r\n\r\n }\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n if (this.isNewCustomer) {\r\n this.objPubDrivers.dccode = this.Dccode;\r\n this.objPubDrivers.DStore = true;\r\n this.accountService.newPubDrivers(this.objPubDrivers).subscribe(s => this.saveSubSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n else {\r\n }\r\n }\r\n\r\n cancel() {\r\n\r\n this.objPubDrivers = new PubDrivers();\r\n\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n private saveSubSuccessHelper() {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ` راننده با موفقیت ایجاد شد`, MessageSeverity.success);\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n }\r\n\r\n newCar(allkind: PubCarKind[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.objPubDrivers = new PubDrivers();\r\n this.edit();\r\n return this.objPubDrivers;\r\n }\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.objPubDrivers = new PubDrivers();\r\n Object.assign(this.objPubDrivers, this.objPubDrivers);\r\n } else {\r\n if (!this.objPubDrivers) {\r\n this.objPubDrivers = new PubDrivers();\r\n }\r\n }\r\n this.isEditMode = true;\r\n }\r\n\r\n onChange(number?: number) {\r\n this.Dccode = number;\r\n }\r\n\r\n\r\n\r\n private saveSuccessHelper(objPubDrivers?: PubDrivers) {\r\n\r\n if (objPubDrivers) {\r\n Object.assign(this.objPubDrivers, objPubDrivers);\r\n }\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n Object.assign(this.objPubDrivers, this.objPubDrivers);\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('Success', `خودرو با موفقیت ایجاد شد`, MessageSeverity.success);\r\n\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات خودرو با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به خودرو با موفقیت ثبت شد', MessageSeverity.success);\r\n //this.refreshLoggedInUser();\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n //if (!replace) {\r\n // this.form.reset();\r\n //} else {\r\n // this.formResetToggle = false;\r\n\r\n // setTimeout(() => {\r\n // this.formResetToggle = true;\r\n // });\r\n //}\r\n }\r\n\r\n private testIsRoleUserCountChanged(currentUser: SaleCustomer, editedUser: SaleCustomer) {\r\n\r\n const rolesAdded = this.isNewCustomer ? editedUser.group : editedUser.group.filter(role => currentUser.group.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewCustomer ? [] : currentUser.group.filter(role => editedUser.group.indexOf(role) == -1);\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n\r\n getGroupByName(name: string) {\r\n return this.allPubCar.find((r) => r.cnumer == name);\r\n }\r\n\r\n\r\n\r\n\r\n editcustomer(sale: PubCar, allPUbkind: PubCarKind[]) {\r\n if (sale) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = false;\r\n\r\n\r\n\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n\r\n}\r\n","
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.NumberBargiei' | translate:NumberLoading}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.StoreHavaleh' | translate:editingCName}}
\r\n
\r\n
\r\n
{{'InvoiceSale.editor.NumberPreInvoice' | translate:NumberOrder}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

\r\n Address : street city, state 0000\r\n Email : JohnDoe@gmail.com\r\n Phone : 555-555-5555\r\n

\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \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

Qty

Sub Total

Communication

5

$375.00

Asset Gathering

3

$225.00

Design Development

5

$375.00

Animation

20

$1500.00

Animation Revisions

10

$750.00

tax

$419.25

Total

$3,644.25

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

\r\n Thank you for your business! Payment is expected within 31 days; please process this invoice within that time. There will be a 5% interest charge per month on late invoices.\r\n

\r\n
\r\n\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 {Observable} from 'rxjs';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {ConfigurationService} from '../configuration.service';\r\nimport {CreditInstitutionPlansModel} from '../../models/credit-institution/credit-institution-plans.model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CreditInstitutiomService {\r\n\r\n baseUrl = \"/api/CreditInstitution/\";\r\n\r\n get baseAddress() {\r\n return this.configurations.baseUrl + this.baseUrl;\r\n }\r\n\r\n constructor(\r\n private configurations: ConfigurationService,\r\n private http: HttpClient) {\r\n }\r\n\r\n getCreditInstitutionPlansForCustomers(mainCode: number, subCode: number): Observable {\r\n return this.http.get(this.baseAddress + \"get-credit-institution-plans-for-customers/\" + `${mainCode}/${subCode}`);\r\n }\r\n}\r\n","\n\nexport class PreInvoiceContract {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(NCCode?: number, NCYear?: number, SPIPartCode?: number, SPIYear?: number, SPICode?: number, SPIProductCode?: string, Amount?: number, SPIRevesion?: number, BarCode?: string) {\n this.NCCode = NCCode;\n this.NCYear = NCYear;\n this.SPIPartCode = SPIPartCode;\n this.SPIYear = SPIYear;\n this.SPICode = SPICode;\n this.SPIProductCode = SPIProductCode;\n this.Amount = Amount;\n this.SPIRevesion = SPIRevesion;\n\n this.barCode = BarCode;\n\n }\n public NCCode: number;\n public NCYear: number;\n public SPIPartCode: number;\n public SPIYear: number;\n public SPICode: number;\n public SPIProductCode: string;\n public Amount: number;\n public SPIRevesion: number;\n\n public barCode: string;\n\n\n\n\n}\n","\n\nimport { SaleSendProduct } from \"./SaleSendProduct.model\";\nimport { VMSaleSubSendProduct_BarCode } from \"./VMSaleSubSendProduct_BarCode.model\";\n\n \n\nexport class VMSelectSaleSubSendProduct_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(saleSendProduct?: SaleSendProduct, rowsNewProduct?: VMSaleSubSendProduct_BarCode[], code?: number) {\n\n this.saleSendProduct = saleSendProduct;\n this.rowsNewProduct = rowsNewProduct;\n this.code = code;\n\n }\n\n public saleSendProduct: SaleSendProduct = new SaleSendProduct();\n public rowsNewProduct: VMSaleSubSendProduct_BarCode[] = [];\n public code: number;\n\n}\n","\n\nexport class group {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(NameGroup?: string, idGroup?: number) {\n\n this.idGroup = idGroup;\n this.NameGroup = NameGroup;\n }\n public idGroup: number;\n public NameGroup: string;\n\n}\n","import { MatPaginatorIntl } from \"@angular/material/paginator\";\r\n\r\nexport function CustomPaginator() {\r\n const customPaginatorIntl = new MatPaginatorIntl();\r\n\r\n customPaginatorIntl.itemsPerPageLabel = 'تعداد آیتم در صفحه:';\r\n\r\n return customPaginatorIntl;\r\n}\r\n","import {Component, EventEmitter, Input, OnChanges, OnInit, Output} from '@angular/core';\r\nimport {PreInvoice} from '../../models/PreInvoice.model';\r\nimport {AlertService, MessageSeverity} from '../../services/alert.service';\r\nimport {SalePreInvoiceForContractCheckInfoModel} from '../../models/SalePreInvoiceForContractCheckInfo.model';\r\nimport {SalePreInvoiceForContractCheckInfoService} from '../../services/api-services/sale-preinvoice-for-contract-check-info-service';\r\nimport {InputPricePaymentFormInvoiceSaleModel} from '../../models/InputPricePaymentFormInvoiceSale.model';\r\nimport {environment} from '../../../environments/environment';\r\nimport {ConfirmMessageModel} from '../../models/utilities/confirm-message.model';\r\nimport {updateCheckModel} from '../../models/sale-pre-invoice/update-check.model';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'sale-preinvoice-for-contract-check-info',\r\n templateUrl: './sale-preinvoice-for-contract-check-info.component.html',\r\n styleUrls: ['./sale-preinvoice-for-contract-check-info.component.scss']\r\n})\r\nexport class SalesPreInvoiceForContractCheckInfoComponent implements OnInit, OnChanges {\r\n public loadingIndicator: boolean = false;\r\n public enableSummary: boolean = true;\r\n public summaryPosition: string = 'bottom';\r\n public documentDate: string = '';\r\n public SerialNumber = \"\";\r\n public isEdit: boolean = false;\r\n public isEditContractCode: boolean = false;\r\n public salePreInvoiceCheckInfoDetail = this.salePerInvoiceForContractCheckInfoService.salePreInvoiceCheckInfoDetail;\r\n public checkAmount: string = '';\r\n public uploadCheckFiles: File[] = [];\r\n public showImageFiles: File[] = [];\r\n public listUploadFileName: string[] = [];\r\n public checkDetailListTable: SalePreInvoiceForContractCheckInfoModel[] = [];\r\n public columns: any[] = [];\r\n public checkImage: File;\r\n public checkImageServer: string = '';\r\n public checkImageStatus: boolean = true;\r\n public imageName: string = '';\r\n public countOfCheck: number = 1;\r\n public addOrUpdateStatus: boolean = true;\r\n public updateCheck = new updateCheckModel;\r\n public domainName = environment.production ? 'https://172.16.60.10/' : 'https://localhost:44350/';\r\n @Input() oldcheckDetailList: SalePreInvoiceForContractCheckInfoModel[];\r\n @Input() saleInvoiceDetail: PreInvoice;\r\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;// = new InputPricePaymentFormInvoiceSaleModel()\r\n @Output() saveCheckDetailStatus = new EventEmitter();\r\n\r\n\r\n constructor(private salePerInvoiceForContractCheckInfoService: SalePreInvoiceForContractCheckInfoService,\r\n private alertService: AlertService) {\r\n }\r\n\r\n ngOnChanges() {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n fileChangeEvent(event: FileList) {\r\n if (event.length > 0) {\r\n let insertImage = false;\r\n if (this.uploadCheckFiles.length == 0) {\r\n insertImage = true;\r\n } else if (this.uploadCheckFiles.length > 0) {\r\n if (this.listUploadFileName.find((find) => find == event.item(0).name) == undefined) {\r\n insertImage = true;\r\n }\r\n }\r\n if (insertImage) {\r\n this.listUploadFileName.push(event.item(0).name);\r\n if (event.item(0).size <= 1000000 && event.item(0).type == \"image/jpeg\") {\r\n this.uploadCheckFiles[this.countOfCheck - 1] = event.item(0);\r\n //this.checkIamge = false;\r\n if (this.uploadCheckFiles[this.countOfCheck - 1] && event.length != 0) {\r\n let reader = new FileReader();\r\n reader.onload = (event2: any) => {\r\n this.showImageFiles[this.countOfCheck - 1] = event2.target.result;\r\n };\r\n reader.readAsDataURL(this.uploadCheckFiles[this.countOfCheck - 1]);\r\n }\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.alertService.showMessage('هشدار', 'عکس انتخابی از قبل در لیست وجود دارد.', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.uploadCheckFiles.splice(this.countOfCheck - 1, 1);\r\n }\r\n }\r\n\r\n\r\n checkSayadiNumber() {\r\n if ((this.salePreInvoiceCheckInfoDetail.sayadiNumber != '') && (this.salePreInvoiceCheckInfoDetail.sayadiNumber != undefined)) {\r\n if ((this.salePreInvoiceCheckInfoDetail.id == 0) || (this.salePreInvoiceCheckInfoDetail.id == undefined)) {\r\n let countValidInsert = this.updateCheck.isUpdate ? 1 : 0;\r\n const findOld = this.oldcheckDetailList.find(x => x.sayadiNumber === this.salePreInvoiceCheckInfoDetail.sayadiNumber);\r\n if (findOld != undefined) {\r\n this.alertService.showMessage('', 'شماره صیادی وارد شده از قبل در سیستم وارد شده است', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.sayadiNumber = '';\r\n }\r\n const findItem = this.inputPricePaymentFormInvoiceSale.checkDetailList.filter(x => x.sayadiNumber == this.salePreInvoiceCheckInfoDetail.sayadiNumber);\r\n if ((findItem != undefined) && (findItem.length > countValidInsert)) {\r\n this.alertService.showMessage('', 'شماره صیادی وارد شده تکراری می باشد', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.sayadiNumber = '';\r\n }\r\n } else {\r\n if (this.salePreInvoiceCheckInfoDetail.sayadiNumber != this.updateCheck.SayadiNumber) {\r\n const findOld = this.oldcheckDetailList.find(x => x.sayadiNumber === this.salePreInvoiceCheckInfoDetail.sayadiNumber);\r\n if (findOld != undefined) {\r\n this.alertService.showMessage('', 'شماره صیادی وارد شده از قبل در سیستم وارد شده است', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.sayadiNumber = '';\r\n }\r\n const findItem = this.inputPricePaymentFormInvoiceSale.checkDetailList.filter(x => x.sayadiNumber == this.salePreInvoiceCheckInfoDetail.sayadiNumber);\r\n if ((findItem != undefined) && (findItem.length > 1)) {\r\n this.alertService.showMessage('', 'شماره صیادی وارد شده تکراری می باشد', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.sayadiNumber = '';\r\n }\r\n }\r\n }\r\n\r\n }\r\n }\r\n\r\n checkCheckNumber() {\r\n if ((this.salePreInvoiceCheckInfoDetail.checkNumber != '') && (this.salePreInvoiceCheckInfoDetail.checkNumber != undefined)) {\r\n if ((this.salePreInvoiceCheckInfoDetail.id == 0) || (this.salePreInvoiceCheckInfoDetail.id == undefined)) {\r\n let countValidInsert = this.updateCheck.isUpdate ? 1 : 0;\r\n const findOld = this.oldcheckDetailList.find(x => x.checkNumber == this.salePreInvoiceCheckInfoDetail.checkNumber);\r\n if (findOld != undefined) {\r\n this.alertService.showMessage('', 'شماره چک وارد شده از قبل در سیستم وارد شده است', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.checkNumber = '';\r\n }\r\n const findItem = this.inputPricePaymentFormInvoiceSale.checkDetailList.filter(x => x.checkNumber == this.salePreInvoiceCheckInfoDetail.checkNumber);\r\n if ((findItem != undefined) && (findItem.length > countValidInsert)) {\r\n this.alertService.showMessage('', 'شماره چک وارد شده تکراری می باشد', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.checkNumber = '';\r\n }\r\n } else {\r\n if (this.salePreInvoiceCheckInfoDetail.checkNumber != this.updateCheck.checkNumber) {\r\n const findOld = this.oldcheckDetailList.find(x => x.checkNumber == this.salePreInvoiceCheckInfoDetail.checkNumber);\r\n if (findOld != undefined) {\r\n this.alertService.showMessage('', 'شماره چک وارد شده از قبل در سیستم وارد شده است', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.checkNumber = '';\r\n }\r\n const findItem = this.inputPricePaymentFormInvoiceSale.checkDetailList.filter(x => x.checkNumber == this.salePreInvoiceCheckInfoDetail.checkNumber);\r\n if ((findItem != undefined) && (findItem.length > 1)) {\r\n this.alertService.showMessage('', 'شماره چک وارد شده تکراری می باشد', MessageSeverity.error);\r\n this.salePreInvoiceCheckInfoDetail.checkNumber = '';\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n //ToDo: ثبت چک برای اقساط\r\n addCheckInfo() {\r\n this.checkSayadiNumber();\r\n this.checkCheckNumber();\r\n if ((this.salePreInvoiceCheckInfoDetail.checkNumber == undefined) || (this.salePreInvoiceCheckInfoDetail.sayadiNumber == undefined) || (this.salePreInvoiceCheckInfoDetail.bankName == undefined)) {\r\n this.alertService.showMessage('', 'لطفا اطلاعات مربوط به چک را کامل وارد نمایید', MessageSeverity.error);\r\n return;\r\n }\r\n if ((this.salePreInvoiceCheckInfoDetail.checkNumber == '') || (this.salePreInvoiceCheckInfoDetail.sayadiNumber == '')) {\r\n this.alertService.showMessage('', 'لطفا اطلاعات مربوط به چک را کامل وارد نمایید', MessageSeverity.error);\r\n return;\r\n }\r\n\r\n if (!this.updateCheck.isUpdate) {\r\n if (this.uploadCheckFiles[this.countOfCheck - 1] == undefined) {\r\n this.alertService.showMessage('هشدار', 'عکس مربوط به اطلاعات وارد نشده است.', MessageSeverity.error);\r\n return;\r\n }\r\n }\r\n\r\n let currencyFormatter = require('currency-formatter');\r\n if (this.addOrUpdateStatus) {\r\n if (this.checkAmount && this.salePreInvoiceCheckInfoDetail.bankName && this.salePreInvoiceCheckInfoDetail.checkNumber && this.salePreInvoiceCheckInfoDetail.sayadiNumber) {\r\n this.loadingIndicator = true;\r\n this.salePreInvoiceCheckInfoDetail.id = 0;\r\n this.salePreInvoiceCheckInfoDetail.amount = +currencyFormatter.unformat(this.checkAmount, {code: 'USD'});\r\n this.salePreInvoiceCheckInfoDetail.cMainCode = this.saleInvoiceDetail.spiCustomerCode;\r\n this.salePreInvoiceCheckInfoDetail.cSubCode = this.saleInvoiceDetail.spiSubCustomerCode;\r\n this.salePreInvoiceCheckInfoDetail.contractCode = this.saleInvoiceDetail.contractCode;\r\n this.salePreInvoiceCheckInfoDetail.invoiceCode = this.saleInvoiceDetail.spiCode;\r\n this.salePreInvoiceCheckInfoDetail.saleCustomerImageStatusId = 1;\r\n this.inputPricePaymentFormInvoiceSale.checkDetailList.push(this.salePreInvoiceCheckInfoDetail);\r\n this.inputPricePaymentFormInvoiceSale.checkDetailList = [...this.inputPricePaymentFormInvoiceSale.checkDetailList];\r\n this.loadingIndicator = false;\r\n this.salePreInvoiceCheckInfoDetail = new SalePreInvoiceForContractCheckInfoModel();\r\n this.checkAmount = '';\r\n\r\n const formData = new FormData;\r\n formData.append((1).toString(), this.uploadCheckFiles[0]);\r\n this.salePerInvoiceForContractCheckInfoService.insertUploadCustomerImage(\r\n this.saleInvoiceDetail.spiCustomerCode.toString(),\r\n this.saleInvoiceDetail.spiSubCustomerCode.toString(),\r\n this.saleInvoiceDetail.spiCode.toString(),\r\n formData)\r\n .subscribe(\r\n (res) => {\r\n this.salePerInvoiceForContractCheckInfoService.addOrUploadImageCustomerInfo(this.inputPricePaymentFormInvoiceSale.checkDetailList).subscribe(\r\n () => {\r\n this.alertService.showMessage('ذخیره', 'اطلاعات چک ها با موفقیت درج گردید.', MessageSeverity.success);\r\n },\r\n (err) => {\r\n this.alertService.showMessage('ذخیره', err.error, MessageSeverity.error);\r\n }\r\n );\r\n },\r\n (err) => {\r\n });\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا تمام اطلاعات فرم را پر کنید.', MessageSeverity.error);\r\n }\r\n\r\n }\r\n this.updateCheck.isUpdate = false;\r\n }\r\n\r\n sendSalePerInvoiceForContractCheckInfo() {\r\n let allowInsert = true;\r\n let findDiffrentStatusId = this.inputPricePaymentFormInvoiceSale.checkDetailList.find(x => x.saleCustomerImageStatusId !== 6);\r\n if (findDiffrentStatusId !== null) {\r\n if (this.salePerInvoiceForContractCheckInfoService.saveChechImageStatus) {//when Add new item\r\n if (this.inputPricePaymentFormInvoiceSale.installmentsDetail.length === this.uploadCheckFiles.length && this.inputPricePaymentFormInvoiceSale.installmentsDetail.length === this.inputPricePaymentFormInvoiceSale.checkDetailList.length) {\r\n allowInsert = true;\r\n } else {\r\n this.alertService.showMessage('هشدار', 'تعداد موارد آپلود شده نمیتواند بیشتر از تعداد اقساط باشد.', MessageSeverity.warn);\r\n allowInsert = false;\r\n }\r\n } else {\r\n if (this.uploadCheckFiles.length > 0) {\r\n allowInsert = true;\r\n } else {\r\n allowInsert = false;\r\n this.insertSalePreInvoiceCheckDetail();\r\n }\r\n }\r\n\r\n if (allowInsert) {\r\n const formData = new FormData;\r\n for (let i = 0; i < this.inputPricePaymentFormInvoiceSale.installmentsDetail.length; i++) {\r\n formData.append((i + 1).toString(), this.uploadCheckFiles[i]);\r\n }\r\n this.salePerInvoiceForContractCheckInfoService.insertUploadCustomerImage(\r\n this.saleInvoiceDetail.spiCustomerCode.toString(),\r\n this.saleInvoiceDetail.spiSubCustomerCode.toString(),\r\n this.saleInvoiceDetail.spiCode.toString(),\r\n formData)\r\n .subscribe(\r\n (res) => {\r\n this.insertSalePreInvoiceCheckDetail();\r\n },\r\n (err) => {\r\n });\r\n }\r\n } else {\r\n this.alertService.showMessage('هشدار', 'امکان ثبت دوباره چک های تایید شده وجود ندارد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n insertSalePreInvoiceCheckDetail() {\r\n this.salePerInvoiceForContractCheckInfoService.addOrUploadImageCustomerInfo(this.inputPricePaymentFormInvoiceSale.checkDetailList).subscribe(\r\n (res) => {\r\n this.alertService.showMessage('ذخیره', 'اطلاعات چک ها با موفقیت درج گردید.', MessageSeverity.success);\r\n this.saveCheckDetailStatus.emit(true);\r\n },\r\n (err) => {\r\n this.alertService.showMessage('ذخیره', err.error, MessageSeverity.error);\r\n }\r\n );\r\n }\r\n\r\n showCheckDetail(row: SalePreInvoiceForContractCheckInfoModel) {\r\n this.inputPricePaymentFormInvoiceSale.checkDetailList.forEach((val, index) => {\r\n if (val == row) {\r\n if (this.showImageFiles[index] != null) {\r\n this.checkImageStatus = true;\r\n this.checkImage = this.showImageFiles[index];\r\n } else {\r\n this.checkImageStatus = false;\r\n this.checkImageServer = this.domainName + val.imageAddress;\r\n }\r\n $('.check-image').modal('show');\r\n return;\r\n }\r\n });\r\n }\r\n\r\n\r\n getFormatDateShamsi(date: string) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n\r\n closeModal() {\r\n $('.check-image').modal('hide');\r\n }\r\n\r\n backgroundChange = (item: SalePreInvoiceForContractCheckInfoModel) => {\r\n if (item.saleCustomerImageStatusId === 2) {\r\n return 'light-green-back';\r\n } else if (item.saleCustomerImageStatusId === 3) {\r\n return 'light-red-back';\r\n } else {\r\n return 'white-back';\r\n }\r\n };\r\n\r\n emptySumm() {\r\n return 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
\r\n
\r\n
\r\n \r\n قرارداد\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
خریدار : {{saleInvoiceDetail.cName}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n مبلغ چک\r\n \r\n \r\n
\r\n
\r\n \r\n شماره حساب بانکی چک\r\n \r\n \r\n
\r\n
\r\n \r\n شماره شبا حساب چک\r\n \r\n \r\n
\r\n
\r\n \r\n شماره صیادی چک\r\n \r\n \r\n
\r\n
\r\n \r\n شماره چک\r\n \r\n \r\n
\r\n
\r\n \r\n بانک چک\r\n \r\n بانک چک\r\n {{bank.sbaBankName}}\r\n \r\n \r\n
\r\n
\r\n \r\n تاریخ وصول چک *\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n توضیحات\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{ rowIndex + 1 }}\r\n \r\n \r\n \r\n \r\n {{value | number}} ریال\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{getFormatDateShamsi(value)}}\r\n \r\n \r\n \r\n \r\n {{value.substr(0, 10) | titlecase}}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\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';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { AuthService } from './auth.service';\nimport { EndpointBase } from './endpoint-base.service';\nimport { ConfigurationService } from './configuration.service';\n\n@Injectable()\nexport class SalecustomerEndpoint extends EndpointBase {\n private readonly _SaleCustomerUrl: string = '/api/SaleCustomers/Sale';\n private readonly _SaleAllCustomerUrl: string = '/api/SaleCustomers/SaleAll';\n\n constructor(private configurations: ConfigurationService, http: HttpClient, authService: AuthService) {\n super(http, authService);\n }\n\n get SaleCustomerUrl() { return this.configurations.baseUrl + this._SaleCustomerUrl; }\n getSaleCustomerProfileEndpoint(CMainCode?: number): Observable {\n const endpointUrl = CMainCode ? `${this.SaleCustomerUrl}/${CMainCode}` : `${this._SaleCustomerUrl}`;\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\n catchError(error => {\n return this.handleError(error, () => this.getSaleCustomerProfileEndpoint(CMainCode));\n }));\n }\n\n get SaleAllCustomerUrl() { return this.configurations.baseUrl + this._SaleAllCustomerUrl; }\n getAllSaleCustomerProfileEndpoint(CMainCode?: number): Observable {\n const endpointUrl = CMainCode ? `${this.SaleAllCustomerUrl}/${CMainCode}` : `${this._SaleAllCustomerUrl}`;\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\n catchError(error => {\n return this.handleError(error, () => this.getAllSaleCustomerProfileEndpoint(CMainCode));\n }));\n }\n\n}\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

{{sale.cSubCode}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n ردیف\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'InvoiceSale.editor.barcode' | translate}}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'InvoiceSale.editor.ProductName' | translate}}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'InvoiceSale.editor.remanid' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{'InvoiceSale.editor.Count' | translate}}\r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'InvoiceSale.editor.Price' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n کمیسیون\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{'InvoiceSale.editor.Ammount' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n مالیات\r\n \r\n \r\n\r\n \r\n \r\n {{ value }}\r\n \r\n \r\n جمع کل\r\n \r\n \r\n \r\n \r\n حذف\r\n \r\n \r\n حذف\r\n \r\n \r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{'SaleCustomer.management.NewSaleCustomer' | translate}}

\r\n

{{'users.management.EditUser' | translate:editingUserName}}

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

{{'InvoiceSale.editor.SelectGoods' | 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","import * as moment from 'jalali-moment';\r\nimport { Component, OnInit, ViewChild, Input, TemplateRef, AfterViewInit, ErrorHandler, ElementRef } from '@angular/core';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\n\r\nimport { Permission } from '../../models/permission.model';\r\nimport { group } from '../../models/group.model';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\nimport { SaleCustomerService } from '../../services/SaleCustomer.service';\r\nimport { Ostan } from '../../models/Ostan.model';\r\nimport { City } from '../../models/City.model';\r\nimport { customerInfoComponent } from './customer-info.component';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { User } from '../../models/user.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { jqxGridComponent } from 'jqwidgets-ng/jqxgrid';\r\nimport { goodsInfoComponent } from './goods-info.component';\r\nimport { Depos1 } from '../../models/Depos1.model';\r\nimport { DepoCode } from '../../models/DepoCode.model';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\nimport { NewCode } from '../../models/NewCode.model';\r\nimport { SalePreInvoiceForContracts } from '../../models/SalePreInvoiceForContracts.model';\r\nimport { salescustomercomponent } from './sales-customer.component';\r\nimport { SalePreInvoiceForContractProduct } from '../../models/SalePreInvoiceForContractProduct.model';\r\nimport { invpricecomponent } from './inv-price.component';\r\nimport { invcheckcomponent } from './inv-check.component';\r\nimport { invInstallmentcomponent } from './inv-Installment.component';\r\nimport { HesabKindBanks } from '../../models/HesabKindBanks.model';\r\nimport { SaleBankAccounts } from '../../models/SaleBankAccounts.model';\r\nimport { SaleNewContract } from '../../models/SaleNewContract.model';\r\nimport { ContractProduct } from '../../models/ContractProduct.model';\r\nimport { PreInvoiceContract } from '../../models/PreInvoiceContract.model';\r\nimport { parse } from 'querystring';\r\nimport { GlobalConstantsservice } from '../../services/GlobalConstants.service';\r\nimport { SalePriceKind } from '../../models/SalePriceKind.model';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'inv-info',\r\n templateUrl: './inv-info.component.html'\r\n})\r\nexport class invInfoComponent implements ErrorHandler {\r\n isMoveGroup: boolean = false;\r\n MoveGroupDepo: boolean = false;\r\n lenght: number;\r\n public EnabaleChange = false;\r\n handleError(error: any): void {\r\n this.isError = true;\r\n }\r\n\r\n\r\n public dateObject: string;\r\n public dateObjectto: string;\r\n public dateObjectfrom: string;\r\n\r\n\r\n public totallAll: string;\r\n public totallTax: string;\r\n public totallSum: string;\r\n public showBool: false;\r\n\r\n public totallAllRows: number = 0;\r\n public totallTaxRows: number = 0;\r\n public totallSumRows: number = 0;\r\n public totallComissionRows: number = 0;\r\n\r\n\r\n public showMyPropColumn = false;\r\n\r\n public isEditMode = false;\r\n public isshownew = true;\r\n public CAssignSaler: number;\r\n public isError = false;\r\n public isSelect = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isEditing = false;\r\n public isCan = true;\r\n editingUserName='';\r\n AllowEdit =false;\r\n public isNewCus = false;\r\n public Ncpcodeobject: number;\r\n public allhesabkindbank: HesabKindBanks[] = [];\r\n public allsalebankaccounts: SaleBankAccounts[] = [];\r\n public allbank: SaleBankAccounts[] = [];\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public sale: SaleCustomer = new SaleCustomer();\r\n public SaleNewContractObj: SaleNewContract = new SaleNewContract();\r\n public SaleNewContractProductObj: ContractProduct = new ContractProduct();\r\n\r\n public SalePreInvoice: SalePreInvoiceForContracts = new SalePreInvoiceForContracts();\r\n public SalePreInvoiceSaleNewContract: PreInvoiceContract = new PreInvoiceContract();\r\n public SalePreInvoiceProduct: SalePreInvoiceForContractProduct = new SalePreInvoiceForContractProduct();\r\n public allgroup: group[] = [];\r\n public allostan: Ostan[] = [];\r\n public allsalepreinvoice: SalePriceKind[] = [];\r\n public gr: group = new group();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allCity: City[] = [];\r\n public allDepos: Depos1[] = [];\r\n public Cmain: number;\r\n public Csub: number;\r\n public sourcePreInvoiceInfo: PreInvoice;\r\n public spiCode: number;\r\n public CuntractNumber: number;\r\n public TypePrice: number = 1;\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public SPISubCustomerCode: number;\r\n public NewNumber: number;\r\n public myArrId: string[] = new Array();\r\n public Depocode: string;\r\n public rowsSelectInv: DepoCode[] = [];\r\n public columns: any[] = [];\r\n public preinvoicenew: boolean;\r\n public saleGroup: string = \"3\";\r\n\r\n serverDate:Date;\r\n editing = {};\r\n Sale: SaleCustomer;\r\n @ViewChild('editorModal', { static: false })\r\n editorModal: ModalDirective;\r\n\r\n @ViewChild('editorModalgoods', { static: false })\r\n editorModalgoods: ModalDirective;\r\n\r\n @ViewChild('editorModalprice', { static: false })\r\n editorModalprice: ModalDirective;\r\n\r\n @ViewChild('editorModalcheck', { static: false })\r\n editorModalcheck: ModalDirective;\r\n\r\n @ViewChild('editorModalghest', { static: false })\r\n editorModalghest: ModalDirective;\r\n\r\n\r\n\r\n editingCName: { name: string };\r\n editingCUser: { name: string };\r\n public rows: SaleCustomer[] = [];\r\n public rowsDepoCode: DepoCode[] = [];\r\n public rowsDepoCodeCash: DepoCode[] = [];\r\n\r\n\r\n //columns: any[] = [];\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n @ViewChild('cName', { static: false })\r\n public cName;\r\n\r\n @ViewChild('group', { static: false })\r\n public group;\r\n\r\n @ViewChild('cPublicCode', { static: false })\r\n public cPublicCode;\r\n\r\n @ViewChild('cTel', { static: false })\r\n public cTel;\r\n\r\n @ViewChild('cAddress', { static: false })\r\n public cAddress;\r\n\r\n @ViewChild('cOstan', { static: false })\r\n public cOstan;\r\n\r\n @ViewChild('cCity', { static: false })\r\n public cCity;\r\n\r\n @ViewChild('rolesSelector', { static: false })\r\n public rolesSelector;\r\n\r\n\r\n @ViewChild('myGroup', { static: false })\r\n public myGroup;\r\n\r\n\r\n\r\n @ViewChild('CustomerEditor', { static: false })\r\n CustomerEditor: customerInfoComponent;\r\n\r\n @ViewChild('goodsEditor', { static: false })\r\n goodsEditor: goodsInfoComponent;\r\n\r\n @ViewChild('priceEditor', { static: false })\r\n priceEditor: invpricecomponent;\r\n\r\n @ViewChild('checkEditor', { static: false })\r\n checkEditor: invcheckcomponent;\r\n\r\n @ViewChild('ghestEditor', { static: false })\r\n ghestEditor: invInstallmentcomponent;\r\n\r\n\r\n\r\n @ViewChild('selectionlog', { static: false }) selectionlog: ElementRef;\r\n @ViewChild('myGrid', { static: false }) myGrid: jqxGridComponent;\r\n\r\n getWidth(): any {\r\n if (document.body.offsetWidth < 850) {\r\n return '90%';\r\n }\r\n\r\n return 1100;\r\n }\r\n\r\n\r\n\r\n\r\n //generaterow(): any {\r\n\r\n // let row = {};\r\n // let rownumber: number = 0;\r\n\r\n // this.goodsEditor.rowsSelect.forEach(function (value) {\r\n // rownumber++;\r\n // row['CRows'] = rownumber;\r\n // row['dcDesc'] = value.dcDesc;\r\n // row['depCode'] = value.depCode;\r\n // row['idGroup'] = value.idGroup;\r\n // row['overhead'] = value.overhead;\r\n // row['pPrice'] = value.pPrice;\r\n // row['priceArsam'] = value.priceArsam;\r\n // row['priceStore'] = value.priceStore;\r\n // row['remanid'] = value.remanid;\r\n // });\r\n\r\n // //let productindex = Math.floor(Math.random() * this.CPreorderinventor.length);\r\n // //let price = parseFloat(this.cInspecificgroup[productindex]);\r\n // //let quantity = 1 + Math.round(Math.random() * 10);\r\n // //row['cProductCode'] = this.cProductCode[Math.floor(Math.random() * this.cProductCode.length)];\r\n // //row['cProductName'] = this.cProductName[Math.floor(Math.random() * this.cProductName.length)];\r\n // //row['CPreorderinventor'] = this.CPreorderinventor[productindex];\r\n // //row['cInspecificgroup'] = price;\r\n // //row['cCount'] = quantity;\r\n // //row['cDiscount'] = price * quantity;\r\n\r\n // return row;\r\n //}\r\n\r\n //generateData(): any {\r\n // let data = {};\r\n\r\n // //for (let i = 0; i < 10; i++) {\r\n // // let row = this.generaterow();\r\n // // data[i] = row;\r\n // //}\r\n // return data;\r\n //}\r\n\r\n //source: any =\r\n // {\r\n // localdata: this.generateData(),\r\n // datatype: 'local',\r\n // datafields:\r\n // [\r\n // { name: 'CRows', type: 'number' },\r\n // { name: 'depCode', type: 'string' },\r\n // { name: 'dcDesc', type: 'string' },\r\n // { name: 'pPrice', type: 'number' },\r\n // { name: 'priceStore', type: 'number' },\r\n // { name: 'priceArsam', type: 'number' },\r\n // { name: 'overhead', type: 'number' },\r\n // { name: 'remanid', type: 'number' },\r\n // { name: 'idGroup', type: 'number' }\r\n\r\n // ]\r\n // };\r\n //dataAdapter: any = new jqx.dataAdapter(this.source);\r\n //columns: any[] =\r\n // [\r\n // { text: '#', datafield: 'CRows', width: 20, cellsalign: 'right', align: 'right' },\r\n // { text: 'کد کالا', datafield: 'depCode', width: 100, cellsalign: 'right', align: 'right' },\r\n // { text: 'نام', datafield: 'dcDesc', width: 300, cellsalign: 'right', align: 'right' },\r\n // { text: 'مبلغ پایه', datafield: 'pPrice', width: 80, cellsalign: 'right', align: 'right' },\r\n // { text: 'مبلغ فروشگاه', datafield: 'priceStore', width: 50, cellsalign: 'right', align: 'right' },\r\n // { text: 'مبلغ آرسام', datafield: 'priceArsam', width: 90, cellsalign: 'right', cellsformat: 'c2', align: 'right' },\r\n // { text: 'هزینه', datafield: 'overhead', cellsalign: 'right', cellsformat: 'c2', width: 60, align: 'right' },\r\n // { text: 'باقیمانده', datafield: 'remanid', cellsalign: 'right', cellsformat: 'c2', width: 80, align: 'right' },\r\n // { text: 'گروه', datafield: 'idGroup', cellsalign: 'right', cellsformat: 'c2', width: 80, align: 'right' }\r\n // ];\r\n //rendertoolbar = (toolbar: any): void => {\r\n // let container = document.createElement('div');\r\n // container.style.margin = '5px';\r\n\r\n // let buttonContainer1 = document.createElement('div');\r\n // let buttonContainer2 = document.createElement('div');\r\n // let buttonContainer3 = document.createElement('div');\r\n // let buttonContainer4 = document.createElement('div');\r\n\r\n // buttonContainer1.id = 'buttonContainer1';\r\n // buttonContainer2.id = 'buttonContainer2';\r\n // buttonContainer3.id = 'buttonContainer3';\r\n // buttonContainer4.id = 'buttonContainer4';\r\n\r\n // buttonContainer1.style.cssText = 'float: right';\r\n // buttonContainer2.style.cssText = 'float: right; margin-left: 5px';\r\n // buttonContainer3.style.cssText = 'float: right; margin-left: 5px';\r\n // buttonContainer4.style.cssText = 'float: right; margin-left: 5px';\r\n\r\n // container.appendChild(buttonContainer1);\r\n // container.appendChild(buttonContainer2);\r\n // container.appendChild(buttonContainer3);\r\n // container.appendChild(buttonContainer4);\r\n // toolbar[0].appendChild(container);\r\n\r\n // let addRowButton = jqwidgets.createInstance('#buttonContainer1', 'jqxButton', { theme: 'material', width: 105, value: 'اضافه کردن سطر' });\r\n // //let addMultipleRowsButton = jqwidgets.createInstance('#buttonContainer2', 'jqxButton', { theme: 'material', width: 170, value: 'Add Multiple New Rows' });\r\n // let deleteRowButton = jqwidgets.createInstance('#buttonContainer3', 'jqxButton', { theme: 'material', width: 100, value: 'حذف سطر' });\r\n // let updateRowButton = jqwidgets.createInstance('#buttonContainer4', 'jqxButton', { theme: 'material', width: 100, value: 'ویرایش سطر' });\r\n\r\n // addRowButton.addEventHandler('click', () => {\r\n\r\n // this.Sale = this.CustomerEditor.newCustomer(this.allgroup, this.allostan);\r\n // if (!this.isreal) {\r\n // this.goodsEditor.Year = 1398;\r\n // this.goodsEditor.usercode = 0;\r\n // this.goodsEditor.DCMainUnit = 0;\r\n // this.goodsEditor.TarazAll = 1;\r\n // this.goodsEditor.IsPrice = false;\r\n // this.goodsEditor.DepCode = this.Depocode;\r\n // this.goodsEditor.isreal = false;\r\n // }\r\n // else {\r\n // this.goodsEditor.Year = 1398;\r\n // this.goodsEditor.usercode = 0;\r\n // this.goodsEditor.DCMainUnit = 0;\r\n // this.goodsEditor.TarazAll = 1;\r\n // this.goodsEditor.IsPrice = false;\r\n // this.goodsEditor.myArrId = this.myArrId;\r\n // this.goodsEditor.isreal = true;\r\n // }\r\n // this.goodsEditor.LoadDepoCode();\r\n // this.editorModalgoods.show();\r\n\r\n\r\n\r\n\r\n // })\r\n\r\n // //addMultipleRowsButton.addEventHandler('click', () => {\r\n // // this.myGrid.beginupdate();\r\n // // for (let i = 0; i < 10; i++) {\r\n // // let datarow = this.generaterow();\r\n // // this.myGrid.addrow(null, datarow);\r\n // // }\r\n // // this.myGrid.endupdate();\r\n // //})\r\n\r\n // deleteRowButton.addEventHandler('click', () => {\r\n // let selectedrowindex = this.myGrid.getselectedrowindex();\r\n // let rowscount = this.myGrid.getdatainformation().rowscount;\r\n // if (selectedrowindex >= 0 && selectedrowindex < parseFloat(rowscount)) {\r\n // let id = this.myGrid.getrowid(selectedrowindex);\r\n // this.myGrid.deleterow(id);\r\n // }\r\n // })\r\n\r\n // updateRowButton.addEventHandler('click', () => {\r\n // let datarow = this.generaterow();\r\n // let selectedrowindex = this.myGrid.getselectedrowindex();\r\n // let rowscount = this.myGrid.getdatainformation().rowscount;\r\n // if (selectedrowindex >= 0 && selectedrowindex < parseFloat(rowscount)) {\r\n // let id = this.myGrid.getrowid(selectedrowindex);\r\n // this.myGrid.updaterow(id, datarow);\r\n // this.myGrid.ensurerowvisible(selectedrowindex);\r\n // }\r\n // })\r\n //};\r\n\r\n\r\n //sourcenew: any[] = [{\r\n // label: \"Peppermint Hot Chocolate\",\r\n // value: \"Chocolate Beverage\",\r\n // group: \"Hot Chocolate\"\r\n //}, {\r\n // label: \"Salted Caramel Hot Chocolate\",\r\n // value: \"Chocolate Beverage\",\r\n // group: \"Hot Chocolate\"\r\n //}, {\r\n // label: \"White Hot Chocolate\",\r\n // value: \"Chocolate Beverage\",\r\n // group: \"Hot Chocolate\"\r\n //}, {\r\n // label: \"Caffe Americano\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Caffe Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Caffe Mocha\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Cappuccino\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Caramel Brulee Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Caramel Macchiato\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Peppermint Hot Chocolate\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Cinnamon Dolce Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Eggnog Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Espresso\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Espresso Con Panna\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Espresso Macchiato\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Flavored Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Gingerbread Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"White Chocolate Mocha\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Skinny Peppermint Mocha\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Skinny Flavored Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Pumpkin Spice Latte\",\r\n // value: \"Espresso Beverage\",\r\n // group: \"Espresso\"\r\n //}, {\r\n // label: \"Caffe Vanilla Frappuccino\",\r\n // value: \"Frappuccino Blended Beverage\",\r\n // group: \"Frappuccino\"\r\n //}, {\r\n // label: \"Caffe Vanilla Frappuccino Light\",\r\n // value: \"Frappuccino Blended Beverage\",\r\n // group: \"Frappuccino\"\r\n //}, {\r\n // label: \"Caramel Brulee Frappuccino\",\r\n // value: \"Frappuccino Blended Beverage\",\r\n // group: \"Frappuccino\"\r\n //}, {\r\n // label: \"Caramel Brulee Frappuccino Light\",\r\n // value: \"Frappuccino Blended Beverage\",\r\n // group: \"Frappuccino\"\r\n //}, {\r\n // label: \"Eggnog Frappuccino\",\r\n // value: \"Frappuccino Blended Beverage\",\r\n // group: \"Frappuccino\"\r\n //}, {\r\n // label: \"Mocha Frappuccino\",\r\n // value: \"Frappuccino Blended Beverage\",\r\n // group: \"Frappuccino\"\r\n //}, {\r\n // label: \"Tazo Green Tea Creme Frappuccino\",\r\n // value: \"Frappuccino Blended Beverage\",\r\n // group: \"Frappuccino\"\r\n //}]\r\n\r\n selectStore(event: number) {\r\n\r\n this.myArrId.splice(0, 1);\r\n this.myArrId.push(event.toString());\r\n\r\n };\r\n\r\n select(event: number) {\r\n\r\n this.Depocode = event.toString();\r\n\r\n };\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n @ViewChild('NameSelector', { static: false })\r\n public NameSelector;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('editTemplate', { static: true })\r\n editTemplate: TemplateRef;\r\n\r\n\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n\r\n\r\n constructor(private alertService: AlertService,\r\n private GlobalConstantsservice: GlobalConstantsservice,\r\n private accountService: AccountService, private authService: AuthService,\r\n private SaleCustomerService: SaleCustomerService,\r\n private translationService: AppTranslationService) {\r\n this.serverDate =this.accountService.getServerDateTime();\r\n }\r\n\r\n\r\n\r\n\r\n\r\n ngOnInit() {\r\n\r\n\r\n if (!this.isGeneralEditor) {\r\n\r\n }\r\n this.isNewCus = false;\r\n this.loadCurrentGroupData();\r\n this.loadCurrentOstanData();\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res));\r\n\r\n //this.Cmain = GlobalConstantsservice.obj.cmain;\r\n //this.SaleCustomerService.getSaleCustomer(this.Cmain).subscribe(results => this.onDataLoadSuccessful(results[0]), error => this.onDataLoadFailed(error));\r\n //this.goodsEditor.CMainCode = this.Cmain;\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'depCode', name: gT('کد کالا'), width: 100 },\r\n { prop: 'dcDesc', name: gT('نام'), width: 500 },\r\n { prop: 'remanid', name: gT('موجودی'), width: 120 },\r\n { prop: 'Count', name: gT('تعداد'), width: 120, cellTemplate: this.editTemplate },\r\n { prop: 'pPrice', name: gT('قیمت پابه'), width: 150 },\r\n { prop: 'overhead', name: gT('هزینه'), width: 150 },\r\n { prop: 'priceArsam', name: gT('قمیت آرسام'), width: 150 },\r\n { prop: 'priceStore', name: gT('قیمت فروشگاه'), width: 150 },\r\n { prop: 'priceDiscount', name: gT('تخفیف فروشگاه'), width: 150 },\r\n { prop: 'priceTax', name: gT('مالیات'), width: 150 },\r\n { prop: 'TotalAmount', name: gT('مبلغ کل'), width: 150 },\r\n { prop: 'idGroup', name: gT('کد گروه'), width: 150 }\r\n ];\r\n this.columns.push({ name: '', width: 200, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.loadBank();\r\n this.loadHesabKind();\r\n this.loadSaleBankAccount();\r\n this.dateObject = this.serverDate.toLocaleDateString('fa-IR');\r\n this.dateObjectfrom = this.serverDate.toLocaleDateString('fa-IR');\r\n var yourDate = this.serverDate;\r\n this.dateObjectto = new Date(yourDate.setDate(yourDate.getDate() + 2)).toLocaleDateString('fa-IR');\r\n //this.dateObjectto = new Date(this.serverDate.setDate(this.serverDate.getDate() + 2)).toLocaleDateString('fa-IR');\r\n\r\n //const gT = (key: string) => this.translationService.getTranslation(key);\r\n //this.columns = [\r\n // { prop: 'index', name: '#', width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n // { prop: 'cProductCode', name: gT('InvoiceSale.editor.ProductCode'), width: 120 },\r\n // { prop: 'cProductName', name: gT('InvoiceSale.editor.ProductName'), width: 90 },\r\n // { prop: 'CPre-orderinventor', name: gT('InvoiceSale.editor.Pre-orderinventory'), width: 120 },\r\n // { prop: 'cCount', name: gT('InvoiceSale.editor.Count'), width: 140 },\r\n // { prop: 'cInspecificgroup', name: gT('InvoiceSale.editor.Inspecificgroup'), width: 140 },\r\n // { prop: 'cDiscount', name: gT('InvoiceSale.editor.Discount'), width: 140 },\r\n // { prop: 'cTax', name: gT('InvoiceSale.editor.Tax'), width: 140 },\r\n // { prop: 'cTotalAmount', name: gT('InvoiceSale.editor.TotalAmount'), width: 140 },\r\n // { prop: 'ctotal', name: gT('InvoiceSale.editor.total'), width: 140 }\r\n //];\r\n //this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n MethodReload(Cmain: number) {\r\n\r\n if (this.isreal) {\r\n this.accountService.getDepos(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n }\r\n else {\r\n this.accountService.getDeposOwner(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n }\r\n }\r\n\r\n MethodTest1(joker: number) {\r\n this.Cmain = joker;\r\n this.SaleCustomerService.getSaleCustomer(joker).subscribe(results => this.onDataLoadSuccessful(results[0]), error => this.onDataLoadFailed(error));\r\n this.goodsEditor.CMainCode = joker;\r\n this.accountService.GetAssigneSaler(this.Cmain).subscribe(res => this.methodAssignSaler(res), error => this.ErrorFiled(error));\r\n }\r\n methodAssignSaler(res: number): void {\r\n this.CAssignSaler = res;\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.goodsEditor.SaveCus) {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res));\r\n }\r\n\r\n this.goodsEditor.changesCancelledCallback = () => {\r\n this.editorModalgoods.hide();\r\n this.rowsDepoCode = [...this.goodsEditor.selected];\r\n\r\n if (this.rowsDepoCode.length > 0) {\r\n this.EnabaleChange = true;\r\n }\r\n };\r\n }\r\n\r\n\r\n\r\n methodLoaddepos(Depos: Depos1[]) {\r\n\r\n //Depos.forEach(function(value){\r\n\r\n // });\r\n this.allDepos = Depos;\r\n this.allDepos.forEach((user, index) => {\r\n if (index == 0) {\r\n this.Depocode = user.value;\r\n }\r\n });\r\n }\r\n indexpreinvoice: number;\r\n lenghNUmber: number;\r\n async MethodloadNewCode(loadNewCode: number) {\r\n\r\n //this.accountService.InsertPreInvoice(1398, 5, loadNewCode, 4, '2019-04-17 00:00:00.000', this.Cmain, this.Csub, '2019-04-15 00:00:00.000', '2019-05-21 00:00:00.000', false, false, 73, 0, '', 7, 15, 34).subscribe(s => this.saveSuccessHelper(this.sale), error => this.saveFailedHelper(error));;\r\n //this.SalePreInvoice.SPIDate = new Date().toLocaleDateString('en-US');\r\n //this.SalePreInvoice.SPIFromDeliverytDate = new Date().toLocaleDateString('en-US');\r\n this.SalePreInvoice.SPIDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoice.SPIFromDeliverytDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoice.SPIYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoice.SPIPartCode = 5;\r\n this.SalePreInvoice.SPICode = this.indexpreinvoice = loadNewCode;\r\n this.SalePreInvoice.SPIKindCode = 4;\r\n this.SalePreInvoice.SPICustomerCode = this.Cmain;\r\n this.SalePreInvoice.SPISubCustomerCode = this.Csub;\r\n var yourDate = this.serverDate;\r\n this.SalePreInvoice.SPIToDeliveryDate = new Date(yourDate.setDate(yourDate.getDate() + 2)).toLocaleDateString('en-US');\r\n //this.SalePreInvoice.SPIToDeliveryDate = new Date(this.serverDate.setDate(this.serverDate.getDate() + 2)).toLocaleDateString('en-US');\r\n this.SalePreInvoice.SPIIsVoid = false;\r\n this.SalePreInvoice.SPIIsAccepted = false;\r\n this.SalePreInvoice.SPIRegistUserCode = 73;\r\n this.SalePreInvoice.SPIAcceptedUserCode = 0;\r\n this.SalePreInvoice.SPIPrivateConditions = \"\";\r\n this.SalePreInvoice.PriceKind = 3;\r\n this.SalePreInvoice.AssigneSalerCode = this.CAssignSaler;\r\n this.SalePreInvoice.DepoCode = Number(this.Depocode.toString());\r\n this.SalePreInvoice.TypePrice = this.TypePrice;\r\n this.SalePreInvoice.IdSaleCustomerGroup = this.goodsEditor.IdGroup;\r\n await this.accountService.newPreInvoice(this.SalePreInvoice).subscribe(s => this.savePreInvoiceSuccessHelpernotmessage(), error => this.saveerror(error));\r\n //this.rowsDepoCode.forEach(function (a) {\r\n\r\n }\r\n savePreInvoiceSuccessHelpernotmessage() {\r\n var currencyFormatter = require('currency-formatter');\r\n this.lenghNUmber = 0;\r\n this.rowsDepoCode.forEach(async (user, index) => {\r\n this.lenghNUmber++;\r\n this.SalePreInvoiceProduct.spipYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoiceProduct.spipPartCode = 5;\r\n this.SalePreInvoiceProduct.spipCode = this.indexpreinvoice;\r\n this.SalePreInvoiceProduct.spipRevesion = 0;\r\n this.SalePreInvoiceProduct.spipProductCode = user.depCode; \r\n this.SalePreInvoiceProduct.barCode = user.depBarCode != null || user.depBarCode != 'undefined' ? user.depBarCode : '-';\r\n this.SalePreInvoiceProduct.moneyCode = user.moneyCode != null ? user.moneyCode : 0;\r\n\r\n this.SalePreInvoiceProduct.spipAmount = user.count;\r\n //this.SalePreInvoiceProduct.spipFromDeliveryDate = new Date().toLocaleDateString('en-US');\r\n //this.SalePreInvoiceProduct.spipToDeliveryDate = new Date().toLocaleDateString('en-US');\r\n this.SalePreInvoiceProduct.spipFromDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoiceProduct.spipToDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoiceProduct.spipPrice = currencyFormatter.unformat(user.priceStore, { code: 'USD' });\r\n this.SalePreInvoiceProduct.spipDiscountPercent = currencyFormatter.unformat(user.priceDiscount, { code: 'USD' });\r\n this.SalePreInvoiceProduct.spipComissionStore = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], { code: 'USD' });\r\n this.SalePreInvoiceProduct.spipTaxStore = currencyFormatter.unformat(this.rowsDepoCode[index][\"totaltax\"], { code: 'USD' });\r\n this.SalePreInvoiceProduct.spipBasePrice = currencyFormatter.unformat(this.rowsDepoCode[index][\"pPriceAll\"], { code: 'USD' });\r\n this.SalePreInvoiceProduct.spipOverHead = currencyFormatter.unformat(this.rowsDepoCode[index][\"overheadAll\"], { code: 'USD' });\r\n this.SalePreInvoiceProduct.spipPriceArsam = currencyFormatter.unformat(this.rowsDepoCode[index][\"priceArsamAll\"], { code: 'USD' });\r\n await this.accountService.newPreInvoiceProduct(this.SalePreInvoiceProduct).subscribe(s => this.savePreInvoiceSuccessHelpernotmessageProduct(), error => this.saveerror(error));;\r\n\r\n\r\n });\r\n this.savePreInvoiceSuccessHelper(\"\");\r\n\r\n }\r\n savePreInvoiceSuccessHelpernotmessageProduct() {\r\n if (this.lenghNUmber == this.rowsDepoCode.length) {\r\n\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('Success', ` بیش فاکتور با موفقیت صادر شد`, MessageSeverity.success);\r\n\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات بیش فاکتور با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به بیش فاکتور با موفقیت ثبت شد', MessageSeverity.success);\r\n\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n }\r\n\r\n MethodBackCmainCSub(Cmain: number, Csub: number) {\r\n this.Cmain = Cmain;\r\n this.Csub = Csub;\r\n //this.accountService.getGroupsCustomers(Cmain, Csub).subscribe(res => this.onLoadGroup(res));\r\n }\r\n\r\n newUser() {\r\n this.isEditing = false;\r\n }\r\n public AcceptPreInvoice(sPIYear: number, sPIPartCode: number, spiCode: number) {\r\n this.accountService.UpdateAccept(sPIYear, sPIPartCode, spiCode).subscribe(s => this.savePreInvoiceSuccessHelperAccept(), error => this.saveFailedHelper(error));\r\n }\r\n AcceptPreInvoiced(){}\r\n private loadHesabKind() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getHesabKind().subscribe(results => this.onCurrentHesabKindDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n\r\n private loadSaleBankAccount() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getBankAccount(1).subscribe(results => this.onCurrentBankAccountDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private loadBank() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getBankAccount(2).subscribe(results => this.onCurrentBankDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n\r\n\r\n private onCurrentHesabKindDataLoadSuccessful(hesabKind: HesabKindBanks[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allhesabkindbank = hesabKind;\r\n }\r\n\r\n private onCurrentBankAccountDataLoadSuccessful(salebankacc: SaleBankAccounts[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allsalebankaccounts = salebankacc;\r\n }\r\n\r\n\r\n private onCurrentBankDataLoadSuccessful(salebank: SaleBankAccounts[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allbank = salebank;\r\n }\r\n\r\n VoidPreInvoice() {\r\n this.accountService.UpdateVoid(this.sPIYear, this.sPIPartCode, this.spiCode).subscribe(s => this.savePreInvoiceSuccessHelperVoid(), error => this.saveFailedHelper(error));\r\n\r\n }\r\n\r\n updateValue(event, rowIndex) {\r\n var currencyFormatter = require('currency-formatter');\r\n if (event.target.value != \"\") {\r\n\r\n var tocam = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"priceStore\"], { code: 'USD' }));\r\n var tocam2 = Number(this.rowsDepoCode[rowIndex][\"priceArsam\"]);\r\n var tocam3 = Number(event.target.value);\r\n var cam = (tocam - tocam2) * (tocam3);\r\n\r\n this.rowsDepoCode[rowIndex][\"priceArsamAll\"] = tocam2 * tocam3;\r\n this.rowsDepoCode[rowIndex][\"pPriceAll\"] = Number(this.rowsDepoCode[rowIndex][\"pPrice\"]) * tocam3;\r\n this.rowsDepoCode[rowIndex][\"overheadAll\"] = Number(this.rowsDepoCode[rowIndex][\"overhead\"]) * tocam3;\r\n this.rowsDepoCode[rowIndex][\"totalComision\"] = currencyFormatter.format(Number(cam), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"count\"] = event.target.value;\r\n this.rowsDepoCode[rowIndex][\"totalAmount\"] = currencyFormatter.format(Math.round(this.rowsDepoCode[rowIndex][\"count\"] * tocam), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totaltax\"] = currencyFormatter.format(Math.round((9 * currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totalAmount\"], { code: 'USD' })) / 100), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totalSum\"] = currencyFormatter.format(Math.round(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totalAmount\"], { code: 'USD' }) + currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totaltax\"], { code: 'USD' })), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.totallAllRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallSumRows = 0;\r\n this.totallComissionRows = 0;\r\n\r\n this.rowsDepoCode.forEach((user, index) => {\r\n var totalAll = this.rowsDepoCode[index][\"totalAmount\"];\r\n var totalta = this.rowsDepoCode[index][\"totaltax\"];\r\n var totalsu = this.rowsDepoCode[index][\"totalSum\"];\r\n var totalco = this.rowsDepoCode[index][\"totalComision\"];\r\n this.totallAllRows = this.totallAllRows + Number(currencyFormatter.unformat(totalAll, { code: 'USD' }));\r\n this.totallTaxRows = this.totallTaxRows + Number(currencyFormatter.unformat(totalta, { code: 'USD' }));\r\n this.totallSumRows = this.totallSumRows + Number(currencyFormatter.unformat(totalsu, { code: 'USD' }));\r\n this.totallComissionRows = this.totallComissionRows + Number(currencyFormatter.unformat(totalco, { code: 'USD' }));\r\n });\r\n\r\n } else {\r\n this.rowsDepoCode[rowIndex][\"count\"] = 0;\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n InputGoods() {\r\n\r\n if (this.MoveGroupDepo && this.isMoveGroup) {\r\n\r\n if (!this.isreal) {\r\n this.goodsEditor.Year = Number(this.authService.currentUser.phoneNumber);\r\n this.goodsEditor.usercode = 0;\r\n this.goodsEditor.DCMainUnit = 0;\r\n this.goodsEditor.TarazAll = 1;\r\n this.goodsEditor.IsPrice = false;\r\n this.goodsEditor.DepCode = this.Depocode;\r\n this.goodsEditor.isreal = false;\r\n }\r\n else {\r\n this.goodsEditor.Year = Number(this.authService.currentUser.phoneNumber);\r\n this.goodsEditor.usercode = 0;\r\n this.goodsEditor.DCMainUnit = 0;\r\n this.goodsEditor.TarazAll = 1;\r\n this.goodsEditor.IsPrice = false;\r\n this.goodsEditor.DepCode = this.Depocode;\r\n this.goodsEditor.isreal = true;\r\n }\r\n this.goodsEditor.LoadDepoCode();\r\n this.editorModalgoods.show();\r\n }\r\n else {\r\n\r\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات را کامل وارد کنید انبار - گروه', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n\r\n\r\n onChange(number?: number) {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodBackCmainCSub(res, number!));\r\n //this.Cmain = GlobalConstantsservice.obj.cmain;\r\n //this.Csub = number;\r\n //this.accountService.getGroupsCustomers(this.Cmain, this.Csub).subscribe(res => this.onLoadGroup(res));\r\n this.isSelect = true;\r\n }\r\n\r\n onChangegroup(idGroup) {\r\n this.goodsEditor.IdGroup = idGroup;\r\n this.isMoveGroup = true;\r\n }\r\n\r\n onEditorModalHidden() {\r\n }\r\n\r\n\r\n\r\n changePrice() {\r\n this.TypePrice = 1;\r\n\r\n }\r\n\r\n changecheck() {\r\n this.TypePrice = 2;\r\n\r\n }\r\n\r\n changeghest() {\r\n this.TypePrice = 3;\r\n\r\n }\r\n\r\n changereal() {\r\n this.isreal = true;\r\n this.MethodReload(this.Cmain);\r\n\r\n\r\n }\r\n\r\n changeLegal() {\r\n this.isreal = false;\r\n this.MethodReload(this.Cmain);\r\n }\r\n\r\n\r\n changeTypeStore(ObjNumber: number) {\r\n this.MoveGroupDepo = true;\r\n if (ObjNumber == 1) {\r\n\r\n this.isreal = true;\r\n this.MethodReload(this.Cmain);\r\n\r\n }\r\n else {\r\n\r\n this.isreal = false;\r\n this.MethodReload(this.Cmain);\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n changeTypeTasviyeh(objNumber: number) {\r\n if (objNumber == 1) {\r\n\r\n this.TypePrice = 1;\r\n\r\n }\r\n else if (objNumber == 2) {\r\n\r\n this.TypePrice = 2;\r\n\r\n }\r\n else if (objNumber == 3) {\r\n\r\n this.TypePrice = 3;\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 var isCan = true;\r\n if (this.rowsDepoCode.length == 0) {\r\n isCan = false;\r\n this.alertService.showMessage('Warning', 'شما هیچ کالایی را انتخاب نکرده اید', MessageSeverity.warn);\r\n }\r\n this.rowsDepoCode.forEach((user, index) => {\r\n if (user.count > user.remanid) {\r\n isCan = false;\r\n this.alertService.showMessage('Warning', 'مقدار پیش فاکتور از مانده کالا بیشتر است...' + \" \" + \"کالای ردیف\" + \" \" + (index + 1).toString(), MessageSeverity.warn);\r\n }\r\n });\r\n\r\n\r\n if (this.rowsDepoCode.length > 12) {\r\n isCan = false;\r\n this.alertService.showMessage('Warning', 'شما مجاز به بیشتر از 12 عدد کالا نیستید', MessageSeverity.warn);\r\n }\r\n\r\n this.rowsDepoCode.forEach((user, index) => {\r\n\r\n if (user.count == 0) {\r\n isCan = false;\r\n this.alertService.showMessage('Warning', 'مقدار کالا را وارد نکرده اید...' + \" \" + \"کالای ردیف\" + \" \" + (index + 1).toString(), MessageSeverity.warn);\r\n }\r\n });\r\n\r\n if (isCan) {\r\n if (this.isNewCustomer) {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n this.accountService.GetNewCode(Number(this.authService.currentUser.phoneNumber), 5).subscribe(res => this.MethodloadNewCode(res));\r\n }\r\n else {\r\n this.accountService.updateCustomer(this.sale).subscribe(s => this.saveSuccessHelper(this.sale), error => this.saveFailedHelper(error));\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n onDataLoadSuccessful(SaleCustomer: SaleCustomer[]) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n SaleCustomer.forEach((user, index, SaleCustomer) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.onChange(user.cSubCode);\r\n }\r\n });\r\n //this.rowsCache = [...SaleCustomer];\r\n this.rows = [...SaleCustomer];\r\n //this.allgroup = groups;\r\n }\r\n\r\n\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n ErrorFiled(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `AssignerSaler.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n this.sale = this.sale = new SaleCustomer();\r\n } else {\r\n this.sale = new SaleCustomer();\r\n }\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveerror(error: any) {\r\n this.alertService.showMessage('error', error, MessageSeverity.error);\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, '', MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n private loadCurrentGroupData() {\r\n this.alertService.startLoadingMessage();\r\n if (this.canAssignGroups) {\r\n this.accountService.getgroups().subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n\r\n }\r\n }\r\n\r\n private loadCurrentOstanData() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getostans().subscribe(results => this.onCurrentUserDataLoadOstanSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n private onCurrentUserDataLoadSuccessful(groups: group[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allgroup = groups;\r\n if (this.isNewCus) {\r\n this.Sale = this.CustomerEditor.newCustomer( this.allostan,this.allgroup);\r\n this.editorModal.show();\r\n }\r\n }\r\n\r\n\r\n\r\n private onCurrentUserDataLoadOstanSuccessful(ostans: Ostan[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allostan = ostans;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n this.gr = new group();\r\n }\r\n\r\n newCustomer(allgroup: group[], allostan: Ostan[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.sale = new SaleCustomer();\r\n //this.allgroup = [...allgroup];\r\n //this.allostan = [...allostan];\r\n this.edit();\r\n return this.sale;\r\n }\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.sale = new SaleCustomer();\r\n Object.assign(this.sale, this.sale);\r\n } else {\r\n if (!this.sale) {\r\n this.sale = new SaleCustomer();\r\n }\r\n }\r\n this.isEditMode = true;\r\n }\r\n\r\n get canacceptpreinvoice() {\r\n return this.accountService.userHasPermission(Permission.taeedpreInvoice);\r\n }\r\n\r\n get CanManageCustomer() {\r\n return this.accountService.userHasPermission(Permission.manageCustomerPermission);\r\n }\r\n\r\n onLoadGroup(groups: group[]) {\r\n groups.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.goodsEditor.IdGroup = user.idGroup;\r\n this.isMoveGroup = true;\r\n }\r\n });\r\n\r\n this.allgroup = groups;\r\n //this.myGroup.refresh();\r\n }\r\n\r\n private savePreInvoiceSuccessHelperAccept(SalePreInvoice?: string) {\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n\r\n if (this.TypePrice == 1) {\r\n\r\n this.accountService.GetNewCodeContract(Number(this.authService.currentUser.phoneNumber), 5).subscribe(res => this.MethodloadNewCodeContract(res));\r\n\r\n }\r\n else if (this.TypePrice == 2) {\r\n\r\n this.editorModalcheck.show();\r\n }\r\n else if (this.TypePrice == 3) {\r\n this.editorModalghest.show();\r\n }\r\n }\r\n }\r\n\r\n MethodloadNewCodeContract(loadNewCode: number) {\r\n\r\n this.SaleNewContractObj.ncyear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleNewContractObj.ncpartCode = 5;\r\n this.SaleNewContractObj.nccode = this.Ncpcodeobject = loadNewCode;\r\n this.SaleNewContractObj.nckindCode = 1;\r\n //this.SaleNewContractObj.ncdate = new Date().toLocaleDateString('en-US');\r\n //this.SaleNewContractObj.ncfromCreditDate = new Date().toLocaleDateString('en-US');\r\n // this.SaleNewContractObj.nctoCreditDate = new Date().toLocaleDateString('en-US');\r\n this.SaleNewContractObj.ncdate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleNewContractObj.ncfromCreditDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleNewContractObj.nctoCreditDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SaleNewContractObj.nccustomerCode = this.Cmain;\r\n this.SaleNewContractObj.ncsubCustomerCode = this.SPISubCustomerCode;\r\n this.SaleNewContractObj.ncsaleFactor = \"\";\r\n this.SaleNewContractObj.ncbuyFactor = \"\";\r\n this.SaleNewContractObj.ncregistUserCode = 43;\r\n this.SaleNewContractObj.ncPrivateConditions = \"\";\r\n this.SaleNewContractObj.PriceKind = 3;\r\n this.SaleNewContractObj.ncStatusNumber = 0;\r\n this.SaleNewContractObj.ncStatusString = \"قرارداد\";\r\n this.SaleNewContractObj.ncStatusAccept = false;\r\n this.accountService.newSaleNewContracts(this.SaleNewContractObj).subscribe(s => this.saveContractSuccessHelper(), error => this.saveerror(error));\r\n }\r\n\r\n\r\n private saveContractSuccessHelper(SalePreInvoice?: string) {\r\n this.accountService.getPreInvoiceProduct(Number(this.authService.currentUser.phoneNumber), 5, this.spiCode).subscribe(res => this.MethodTestContract(res));\r\n }\r\n\r\n MethodTestContract(con: SalePreInvoiceForContractProduct[]) {\r\n\r\n con.forEach(async (ObjSale) => {\r\n\r\n this.lenght = con.length;\r\n this.SaleNewContractProductObj.nCPYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleNewContractProductObj.nCPPartCode = 5;\r\n this.SaleNewContractProductObj.nCPCode = this.Ncpcodeobject;\r\n this.SaleNewContractProductObj.nCPRevesion = 0;\r\n this.SaleNewContractProductObj.ncpProductCode = ObjSale.spipProductCode;\r\n this.SaleNewContractProductObj.barCode = ObjSale.barCode == null || ObjSale.barCode == 'undefined' ? '-' : ObjSale.barCode;\r\n this.SaleNewContractProductObj.ncpAmount = ObjSale.spipAmount;\r\n this.SaleNewContractProductObj.nCPFromDeliveryDate = ObjSale.spipFromDeliveryDate;\r\n this.SaleNewContractProductObj.nCPToDeliveryDate = ObjSale.spipToDeliveryDate;\r\n this.SaleNewContractProductObj.nCPTolerancePercent = 0;\r\n this.SaleNewContractProductObj.nCPPrice = ObjSale.spipPrice;\r\n this.SaleNewContractProductObj.nCPDiscountPercent = ObjSale.spipDiscountPercent;\r\n this.SaleNewContractProductObj.nCPPerPay = 0;\r\n this.SaleNewContractProductObj.nCPDelayDeliveryPay = 0;\r\n this.SaleNewContractProductObj.nCPMiddleMaturity = 0;\r\n\r\n\r\n\r\n this.SalePreInvoiceSaleNewContract.Amount = ObjSale.spipAmount;\r\n this.SalePreInvoiceSaleNewContract.NCCode = this.Ncpcodeobject;\r\n this.SalePreInvoiceSaleNewContract.NCYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoiceSaleNewContract.SPICode = this.sourcePreInvoiceInfo.spiCode;\r\n this.SalePreInvoiceSaleNewContract.SPIPartCode = this.sourcePreInvoiceInfo.spiPartCode;\r\n this.SalePreInvoiceSaleNewContract.SPIProductCode = ObjSale.spipProductCode;\r\n this.SalePreInvoiceSaleNewContract.barCode = ObjSale.barCode == null || ObjSale.barCode == 'undefined' ? '-' : ObjSale.barCode;\r\n this.SalePreInvoiceSaleNewContract.SPIRevesion = 0;\r\n this.SalePreInvoiceSaleNewContract.SPIYear = Number(this.authService.currentUser.phoneNumber);\r\n\r\n\r\n await this.accountService.newContractProduct(this.SaleNewContractProductObj, this.SalePreInvoiceSaleNewContract).subscribe(s => this.saveContractProductSuccessHelper(this.SaleNewContractProductObj), error => this.saveerror(error));\r\n\r\n });\r\n }\r\n\r\n private saveContractProductSuccessHelper(SalePreInvoice?: ContractProduct) {\r\n\r\n let i: number = 1;\r\n if (i == this.lenght) {\r\n i++;\r\n this.alertService.showDialog('پیش فاکتور تایید و تبدیل به قرارداد شده است آیا می خواهید عملیات پرداخت را انجام دهید؟', DialogType.confirm, () => this.SabtareshHelper());\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n\r\n\r\n\r\n SabtareshHelper() {\r\n\r\n this.priceEditor.Cmain = this.Cmain;\r\n this.priceEditor.Csub = this.SPISubCustomerCode;\r\n this.priceEditor.spiCode = this.spiCode;\r\n this.priceEditor.sPIYear = this.sPIYear;\r\n this.priceEditor.sPIPartCode = this.sPIPartCode;\r\n this.priceEditor.CuntractNumber = this.Ncpcodeobject;\r\n this.priceEditor.newprice(this.allbank, this.allsalebankaccounts, this.allhesabkindbank);\r\n this.editorModalprice.show();\r\n\r\n }\r\n\r\n\r\n\r\n\r\n\r\n private savePreInvoiceSuccessHelperVoid(SalePreInvoice?: string) {\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('Success', ` بیش فاکتور با موفقیت ابطال شد`, MessageSeverity.success);\r\n\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات بیش فاکتور با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به بیش فاکتور با موفقیت ثبت شد', MessageSeverity.success);\r\n //this.refreshLoggedInUser();\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n private savePreInvoiceSuccessHelper(SalePreInvoice?: string) {\r\n\r\n\r\n }\r\n\r\n DeleteMethod(SelectRow: DepoCode) {\r\n var currencyFormatter = require('currency-formatter');\r\n this.rowsDepoCodeCash = this.rowsDepoCode;\r\n this.rowsDepoCodeCash.forEach((user, index) => {\r\n if (user.depCode == SelectRow.depCode && user.count == SelectRow.count) {\r\n this.rowsDepoCodeCash.splice(index, 1);\r\n }\r\n });\r\n this.rowsDepoCode = [...this.rowsDepoCodeCash];\r\n this.totallAllRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallSumRows = 0;\r\n this.totallComissionRows = 0;\r\n this.rowsDepoCode.forEach((user, index) => {\r\n var totalAll = this.rowsDepoCode[index][\"totalAmount\"];\r\n var totalta = this.rowsDepoCode[index][\"totaltax\"];\r\n var totalsu = this.rowsDepoCode[index][\"totalSum\"];\r\n var totalco = this.rowsDepoCode[index][\"totalComision\"];\r\n this.totallAllRows = this.totallAllRows + Number(currencyFormatter.unformat(totalAll, { code: 'USD' }));\r\n this.totallTaxRows = this.totallTaxRows + Number(currencyFormatter.unformat(totalta, { code: 'USD' }));\r\n this.totallSumRows = this.totallSumRows + Number(currencyFormatter.unformat(totalsu, { code: 'USD' }));\r\n this.totallComissionRows = this.totallComissionRows + Number(currencyFormatter.unformat(totalco, { code: 'USD' }));\r\n });\r\n\r\n }\r\n\r\n private saveSuccessHelper(sale?: SaleCustomer) {\r\n this.testIsRoleUserCountChanged(this.sale, this.sale);\r\n if (sale) {\r\n Object.assign(this.sale, sale);\r\n }\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n Object.assign(this.sale, this.sale);\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('Success', `مشتری با موفقیت ایجاد شد`, MessageSeverity.success);\r\n\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات مشتری با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به مشتری با موفقیت ثبت شد', MessageSeverity.success);\r\n //this.refreshLoggedInUser();\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n private testIsRoleUserCountChanged(currentUser: SaleCustomer, editedUser: SaleCustomer) {\r\n\r\n const rolesAdded = this.isNewCustomer ? editedUser.group : editedUser.group.filter(role => currentUser.group.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewCustomer ? [] : currentUser.group.filter(role => editedUser.group.indexOf(role) == -1);\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n newCus() {\r\n this.isEditingSelf = false;\r\n this.isNewCus = true;\r\n this.loadCurrentGroupData();\r\n\r\n }\r\n\r\n getGroupByName(name: string) {\r\n return this.allgroup.find((r) => r.NameGroup == name);\r\n }\r\n\r\n getOstanByName(name: string) {\r\n return this.allostan.find((r) => r.Name == name);\r\n }\r\n\r\n\r\n //editcustomer(sale: PreInvoice) {\r\n // if (sale) {\r\n // this.isGeneralEditor = true;\r\n // this.isNewCustomer = false;\r\n // if (sale.cRegisterCode != null && sale.cRegisterCode != \"\") {\r\n // this.isreal = false;\r\n // }\r\n // else {\r\n // this.isreal = true;\r\n // }\r\n\r\n // this.setGroups(sale, allgroup);\r\n // this.sale = new SaleCustomer();\r\n\r\n // Object.assign(this.sale, sale);\r\n // this.edit();\r\n\r\n // return this.sale;\r\n // } else {\r\n // return this.newCustomer(allgroup, allostan);\r\n // }\r\n //}\r\n\r\n\r\n\r\n //private setGroups(sale: SaleCustomer, allgroups?: group[]) {\r\n\r\n // this.allgroup = allgroups ? [...allgroups] : [];\r\n // if (sale.group) {\r\n // for (const ur of sale.group) {\r\n // if (!this.allgroup.some(r => r.NameGroup == ur)) {\r\n // this.allgroup.unshift(new group(ur));\r\n // }\r\n // }\r\n // }\r\n // if (allgroups == null || this.allgroup.length != allgroups.length) {\r\n // setTimeout(() => {\r\n // if (this.rolesSelector) {\r\n // this.rolesSelector.refresh();\r\n // }\r\n // });\r\n // }\r\n //}\r\n close(){}\r\n\r\n}\r\n","import { Component, HostListener } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-client-shop-footer',\r\n templateUrl: './client-shop-footer.component.html',\r\n styleUrls: ['./client-shop-footer.component.scss']\r\n})\r\n/** clientShopFooter component*/\r\nexport class ClientShopFooterComponent {\r\n /** clientShopFooter ctor */\r\n constructor() {\r\n\r\n }\r\n @HostListener(\"window:scroll\", []) onWindowScroll() {\r\n this.scrollFunction();\r\n }\r\n // When the user scrolls down 20px from the top of the document, show the button\r\n scrollFunction() {\r\n if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {\r\n document.getElementById(\"myBtn\").style.display = \"block\";\r\n } else {\r\n document.getElementById(\"myBtn\").style.display = \"none\";\r\n }\r\n }\r\n\r\n // When the user clicks on the button, scroll to the top of the document\r\n topFunction() {\r\n document.body.scrollTop = 0; // For Safari\r\n document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera\r\n } \r\n\r\n}\r\n","\r\n","import { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'report',\r\n templateUrl: './report.component.html',\r\n animations: [fadeInOut]\r\n})\r\nexport class reportComponent {\r\n}\r\n","
\r\n\r\n

\r\n \r\n {{'pageHeader.Contract' | translate}}\r\n

\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n","export enum CashDeskDocumentType {\r\n \"رسید\" = 1,\r\n \"برگشت از فروش\" = 2,\r\n \"فروش\" = 3,\r\n \"تایید نشده\" = 4, \r\n}\r\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\n\r\n@Component({\r\n selector: 'inv-Installment',\r\n templateUrl: './inv-Installment.component.html'\r\n})\r\nexport class invInstallmentcomponent {\r\n\r\n public isEditMode = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId(); \r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n \r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService) {}\r\n\r\n ngOnInit() {}\r\n\r\n changereal() {\r\n this.isreal = true;\r\n }\r\n\r\n changeLegal() {\r\n this.isreal = false;\r\n }\r\n\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n }\r\n\r\n cancel() {\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n newCustomer() {\r\n \r\n }\r\n\r\n edit() {\r\n \r\n }\r\n\r\n \r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\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 { DecimalNumberDirective } from './directives/decimal-number.directive';\r\n/// \r\n/// \r\n\r\nimport { NgModule, ErrorHandler } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxCurrencyModule } from \"ngx-currency\";\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\nimport { OAuthModule, OAuthStorage } from 'angular-oauth2-oidc';\r\nimport { ToastaModule } from 'ngx-toasta';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\r\nimport { PopoverModule } from 'ngx-bootstrap/popover';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { CarouselModule } from 'ngx-bootstrap/carousel';\r\nimport { ChartsModule } from 'ng2-charts';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { NgxBarcodeModule } from 'ngx-barcode';\r\nimport { CKEditorModule } from '@ckeditor/ckeditor5-angular';\r\nimport { LeafletModule } from '@asymmetrik/ngx-leaflet';\r\nimport { NgxCaptchaModule } from 'ngx-captcha';\r\n\r\nimport { AppErrorHandler } from './app-error.handler';\r\nimport { AppTitleService } from './services/app-title.service';\r\nimport { AppTranslationService, TranslateLanguageLoader } from './services/app-translation.service';\r\nimport { ConfigurationService } from './services/configuration.service';\r\nimport { AlertService } from './services/alert.service';\r\nimport { ThemeManager } from './services/theme-manager';\r\nimport { LocalStoreManager } from './services/local-store-manager.service';\r\nimport { AuthStorage } from './services/auth-storage';\r\nimport { NotificationService } from './services/notification.service';\r\nimport { NotificationEndpoint } from './services/notification-endpoint.service';\r\nimport { AccountService } from './services/account.service';\r\nimport { AccountEndpoint } from './services/account-endpoint.service';\r\nimport { EqualValidator } from './directives/equal-validator.directive';\r\nimport { LastElementDirective } from './directives/last-element.directive';\r\nimport { AutofocusDirective } from './directives/autofocus.directive';\r\nimport { BootstrapTabDirective } from './directives/bootstrap-tab.directive';\r\nimport { BootstrapToggleDirective } from './directives/bootstrap-toggle.directive';\r\nimport { BootstrapSelectDirective } from './directives/bootstrap-select.directive';\r\nimport { BootstrapDatepickerDirective } from './directives/bootstrap-datepicker.directive';\r\nimport { GroupByPipe } from './pipes/group-by.pipe';\r\nimport { CustomPaginator } from './shared/utilities/custom-paginator';\r\n\r\nimport { AppComponent } from './components/app.component';\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { CustomersComponent } from './components/customers/customers.component';\r\nimport { invoicesaleComponent } from './components/invoicesale/invoicesale.component';\r\nimport { contractComponent } from './components/contract/contract.component';\r\nimport { OrdersComponent } from './components/orders/orders.component';\r\nimport { AboutComponent } from './components/about/about.component';\r\nimport { NotFoundComponent } from './components/not-found/not-found.component';\r\nimport { BannerDemoComponent } from './components/controls/banner-demo.component';\r\nimport { TodoDemoComponent } from './components/controls/todo-demo.component';\r\nimport { StatisticsDemoComponent } from './components/controls/statistics-demo.component';\r\nimport { NotificationsViewerComponent } from './components/controls/notifications-viewer.component';\r\nimport { SearchBoxComponent } from './components/controls/search-box.component';\r\nimport { UserInfoComponent } from './components/controls/user-info.component';\r\nimport { UserPreferencesComponent } from './components/controls/user-preferences.component';\r\nimport { UsersManagementComponent } from './components/controls/users-management.component';\r\nimport { salescustomercomponent } from './components/controls/sales-customer.component';\r\nimport { customerInfoComponent } from './components/controls/customer-info.component';\r\nimport { invsalecomponent } from './components/controls/inv-sale.component';\r\nimport { InvInfoCComponent } from './components/controls/inv-info-c.component';\r\nimport { invInfoComponent } from './components/controls/inv-info.component';\r\nimport { goodsInfoComponent } from './components/controls/goods-info.component';\r\nimport { showcontractcomponent } from './components/controls/show-contract.component';\r\nimport { residComponent } from './components/resid/resid.component';\r\nimport { settlementComponent } from './components/settlement/settlement.component';\r\nimport { returnedComponent } from './components/returned/returned.component';\r\nimport { bill } from './components/bill/bill.component';\r\nimport { PreviewsPrintComponent } from './components/previews-print/previews-print.component';\r\nimport { UploadDucumentsComponent } from './components/upload-documents/upload-documentst.component';\r\nimport { PricePaymentFormComponent } from './components/price-payment-form/price-payment-form.component';\r\nimport { ReferenceReportsComponent } from './components/reference-reports/reference-reports.component';\r\nimport { SendOrderComponent } from './components/send-order/send-order.component';\r\nimport { VisitorDetailComponent } from './components/visitors-cartable/visitor-detail/visitor-detail.component';\r\nimport { SpinnerLoadingComponent } from './components/spinner-loading/spinner-loading.component';\r\nimport { SidebarComponent } from './components/sidebar/sidebar.component';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { WebsiteGuideComponent } from './components/website-guide/website-guide.component';\r\nimport { WebsiteGuideInfoComponent } from './components/controls/website-guide-info.component';\r\nimport { returnedinfocomponent } from './components/controls/returned-info.component';\r\nimport { settlementinfocomponent } from './components/controls/settlement-info.component';\r\nimport { SettlementSaveinfocomponent } from './components/controls/SettlementSave-info.component';\r\nimport { goodsinfodealercode } from './components/controls/goods-info-dealercode.component';\r\nimport { depotarazComponent } from './components/depotaraz/depotaraz.component';\r\nimport { residinfocomponent } from './components/controls/resid-info.component';\r\nimport { HashLocationStrategy, LocationStrategy } from '@angular/common';\r\nimport { RolesManagementComponent } from './components/controls/roles-management.component';\r\nimport { RoleEditorComponent } from './components/controls/role-editor.component';\r\nimport { SaleCustomerService } from './services/SaleCustomer.service';\r\nimport { GlobalConstantsservice } from './services/GlobalConstants.service';\r\nimport { SalecustomerEndpoint } from './services/salecustomer-endpoint.service';\r\nimport { jqxGridModule } from 'jqwidgets-ng/jqxgrid';\r\nimport { jqxButtonModule } from 'jqwidgets-ng/jqxbuttons';\r\nimport { jqxInputModule } from 'jqwidgets-ng/jqxinput';\r\nimport { jqxWindowModule } from 'jqwidgets-ng/jqxwindow';\r\nimport { jqxNumberInputModule } from 'jqwidgets-ng/jqxnumberinput';\r\nimport { jqxPanelModule } from 'jqwidgets-ng/jqxpanel';\r\nimport { jqxListBoxModule } from 'jqwidgets-ng/jqxlistbox';\r\nimport { jqxComboBoxModule } from 'jqwidgets-ng/jqxComboBox';\r\nimport { invpricecomponent } from './components/controls/inv-price.component';\r\nimport { invcheckcomponent } from './components/controls/inv-check.component';\r\nimport { invInstallmentcomponent } from './components/controls/inv-Installment.component';\r\nimport { WizardModule } from \"ngx-wizard\";\r\nimport { reportComponent } from './components/report/report.component';\r\nimport { reportcontractComponent } from './components/controls/report-contract.component';\r\nimport { carComponent } from './components/car/car.component';\r\n\r\nimport { driverComponent } from './components/driver/driver.component';\r\nimport { carInfoComponent } from './components/controls/car-info.component';\r\n\r\nimport { depotarazinfocomponent } from './components/controls/depotaraz-info.component';\r\n\r\nimport { printdepoComponent } from './components/controls/print/print-depo.component';\r\nimport { driverInfoComponent } from './components/controls/driver-info.component';\r\nimport { DpDatePickerModule } from 'ng2-jalali-date-picker';\r\nimport { NgxPrintModule } from 'ngx-print';\r\nimport { requestinvoiceproductComponent } from './components/controls/request-invoice-product.component';\r\nimport { reportsaleinfoComponent } from './components/controls/report-sale-info.component';\r\nimport { billInfoComponent } from './components/controls/bill-info.component';\r\nimport { PreviewsPrintInfoComponent } from './components/controls/previews-print-info.component';\r\nimport { WarehouseStoreComponent } from './components/warehousestore/warehousestore.component';\r\nimport { WarehouseStoreInfoComponent } from './components/controls/warehousestore-info.component';\r\nimport { WarehouseStoreInfoBarcodesComponent } from './components/controls/warehousestore-info-barcodes.component';\r\nimport { WarehouseStoreInfoKardexComponent } from './components/controls/warehousestore-info-kardex.component';\r\nimport { HomeInfoComponent } from './components/controls/home-info.component';\r\nimport { UploadDocumentsInfoComponent } from './components/controls/upload-documents-info.component';\r\nimport { PricePaymentFormInfoComponent } from './components/controls/price-payment-form-info.component';\r\nimport { ReferenceReportsInfoComponent } from './components/controls/reference-reports-info.component';\r\nimport { SendOrderInfoComponent } from './components/controls/send-order-info.component';\r\n\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\n\r\nimport { reportsalegroupinfoComponent } from './components/controls/report-salegroup-info.component';\r\n\r\nimport { requestinvoiceinfoComponent } from './components/controls/request-invoice-info.component';\r\nimport { UploaderService } from './services/uploader.service ';\r\nimport { ImageUploaderComponent } from './components/image-uploader/image-uploader.component';\r\nimport { NumberDirective } from './directives/number.directive';\r\nimport { BackButtonDirective } from './directives/back-button.directive';\r\n\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\nimport { MatButtonModule } from \"@angular/material/button\";\r\nimport { DateAdapter, MatNativeDateModule, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\r\nimport { MaterialPersianDateAdapter, PERSIAN_DATE_FORMATS } from './services/date-picker.service';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatPaginatorIntl, MatPaginatorModule } from '@angular/material/paginator';\r\nimport {MatAutocompleteModule} from '@angular/material/autocomplete';\r\n\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { InventoryComponent } from './components/inventory/inventory.component';\r\nimport { InventoryInfoComponent } from './components/controls/inventory-info/inventory-info.component';\r\nimport { AddressComponent } from './components/address/address.component';\r\nimport { MyCompanyService } from './services/MyCompany.service';\r\nimport { SharedService } from './services/Shared.service';\r\nimport { MyAccountService } from './services/MyAccount.service';\r\nimport { MyAccountEndpoint } from './services/MyAccount-Endpoint.service';\r\n\r\nimport { GoodsInfoDetailsComponent } from './components/controls/goods-info-details.component';\r\nimport { ReportSaleCustomerInfoComponent } from './components/controls/report-sale-customer-info.component';\r\nimport { WarehouseStoreInfoKardexRemaindMajaziComponent } from './components/controls/warehousestore-info-kardex-remaind-majazi.component';\r\nimport { NtsEndPointService } from './services/nts-end-point.service';\r\nimport { NtsService } from './services/nts.service';\r\nimport { LoaderInterceptor } from './services/loader-interceptor';\r\nimport { CashDeskComponent } from './components/cash-desk/cash-desk.component';\r\nimport { CashDeskDetailComponent } from './components/cash-desk/cash-desk-detail/cash-desk-detail.component';\r\nimport { ReportSaleCashDeskComponent } from './components/cash-desk/report-sale-cash-desk/report-sale-cash-desk.component';\r\nimport { ReportReciptCashDeskComponent } from './components/cash-desk/report-recipt-cash-desk/report-recipt-cash-desk.component';\r\nimport { PersonalInformationComponent } from './components/personal-information/personal-information.component';\r\nimport { PersonalInformationInfoComponent } from './components/controls/personal-information-info.component';\r\nimport { CheckInformationComponent } from './components/check-information/check-information.component';\r\nimport { CheckInformationInfoComponent } from './components/controls/check-information-info.component';\r\nimport { RecordPersonalInformationComponent } from './components/record-personal-information/record-personal-information.component';\r\nimport { RecordPersonalInformationInfoComponent } from './components/controls/record-personal-information-info.component';\r\nimport { RecordCustomerChecksComponent } from './components/record-customer-checks/record-customer-checks.component';\r\nimport { RecordCustomerChecksInfoComponent } from './components/controls/record-customer-checks-info.component';\r\n\r\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\r\nimport { NewPasswordComponent } from './components/new-password/new-password.component';\r\nimport { VisitsListComponent } from './components/visits-list/visits-list.component';\r\nimport { VisitsListInfoComponent } from './components/controls/visits-list-info.component';\r\nimport { ReportsMarketerInfoComponent } from './components/controls/reports-marketer-info.component';\r\nimport { ReportsMarketerComponent } from './components/reports-marketer/reports-marketer.component';\r\nimport { AddReturnToDepoComponent } from './components/controls/add-return-to-depo.component';\r\nimport { DownloadRegistrationComponent } from './components/download-registration/download-registration.component';\r\nimport { DownloadRegistrationInfoComponent } from './components/controls/download-registration-info.component';\r\nimport { CustomerClubListComponent } from './components/customer-club-list/customer-club-list.component';\r\nimport { CustomerClubListInfoComponent } from './components/controls/customer-club-list-info.component';\r\nimport { ShowPersianDate } from './pipes/persian-date.pipe';\r\nimport { SalesPreInvoiceForContractCheckComponent } from './components/sale-preinvoice-for-contract-check/sale-preinvoice-for-contract-check.component';\r\nimport { SalesPreInvoiceForContractCheckInfoComponent } from './components/controls/sale-preinvoice-for-contract-check-info.component';\r\nimport { SalePreInvoiceCheckDetailModalComponent } from './components/controls/sale-preinvoice-check-detail-modal.component';\r\nimport { PreContractModalComponent } from './components/controls/pre-contract-modal.component';\r\nimport { ConfirmMessageComponent } from './components/confirm-message/confirm-message.component';\r\nimport { BarcodeListModalComponent } from './components/barcode-list-modal/barcode-list-modal.component';\r\nimport { SaleClosingManagmentComponent } from './components/sale-closing-managment/sale-closing-managment.component';\r\nimport { LcFormComponent } from './components/lc-form/lc-form.component';\r\nimport { BaratElectronicFormComponent } from './components/barat-electronic-form/barat-electronic-form.component';\r\nimport { SaleReceiptCustomerComponent } from './components/sale-receipt-customer/sale-receipt-customer.component';\r\nimport { SaleReciptCashComponent } from './components/sale-receipt-customer/sale-recipt-cash/sale-recipt-cash.component';\r\nimport { SaleReceiptLcComponent } from './components/sale-receipt-customer/sale-receipt-lc/sale-receipt-lc.component';\r\nimport { SaleReceiptBaratelectronicComponent } from './components/sale-receipt-customer/sale-receipt-baratelectronic/sale-receipt-baratelectronic.component';\r\nimport { SaleReceiptCheckComponent } from './components/sale-receipt-customer/sale-receipt-check/sale-receipt-check.component';\r\nimport {ClientStoreFinderComponent} from \"./components/client/client-store-finder/client-store-finder.component\";\r\nimport {ClientShoppingWithComponent} from \"./components/client/client-shopping-with/client-shopping-with.component\";\r\nimport {ClientShopHeaderComponent} from \"./components/client/client-shop-header/client-shop-header.component\";\r\nimport {ClientFranchiseComponent} from \"./components/client/client-franchise/client-franchise.component\";\r\nimport {SingleProductComponent} from \"./components/client/client-product/single-product/single-product.component\";\r\nimport {ClientShopFooterComponent} from \"./components/client/client-shop-footer/client-shop-footer.component\";\r\nimport {ClientShopBannerComponent} from \"./components/client/client-shop-banner/client-shop-banner.component\";\r\nimport {ClientContactComponent} from \"./components/client/client-contact/client-contact.component\";\r\nimport {ClientProductComponent} from \"./components/client/client-product/client-product.component\";\r\nimport {ClientFooterComponent} from \"./components/client/client-footer/client-footer.component\";\r\nimport {ClientHomeComponent} from \"./components/client/client-home/client-home.component\";\r\nimport {ClientComponent} from \"./components/client/client.component\";\r\nimport { AboutClientComponent } from './components/client/about-client/about-client.component';\r\nimport {MainMenuComponent} from \"./components/client/main-menu/main-menu.component\";\nimport { ClientProductListComponent } from './components/client/client-home/client-product-list/client-product-list.component';\nimport { DelegacyAddEditComponent } from './components/client/client-franchise/delegacy-add-edit/delegacy-add-edit.component';\r\n\r\n@NgModule({\r\n imports: [\r\n MatCheckboxModule,\r\n NgxCurrencyModule,\r\n NgxPrintModule,\r\n DpDatePickerModule,\r\n WizardModule,\r\n ReactiveFormsModule,\r\n BrowserModule,\r\n jqxListBoxModule,\r\n jqxComboBoxModule,\r\n jqxPanelModule,\r\n jqxGridModule,\r\n jqxButtonModule,\r\n jqxInputModule,\r\n jqxWindowModule,\r\n jqxNumberInputModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n FormsModule,\r\n AppRoutingModule,\r\n MatCardModule,\r\n MatToolbarModule,\r\n MatProgressBarModule,\r\n MatListModule,\r\n MatSelectModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatButtonModule,\r\n MatNativeDateModule,\r\n MatFormFieldModule,\r\n MatDatepickerModule,\r\n MatButtonToggleModule,\r\n MatTabsModule,\r\n MatRadioModule,\r\n MatTableModule,\r\n MatSortModule,\r\n MatPaginatorModule,\r\n MatAutocompleteModule,\r\n LeafletModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useClass: TranslateLanguageLoader\r\n }\r\n }),\r\n NgxDatatableModule,\r\n OAuthModule.forRoot(),\r\n ToastaModule.forRoot(),\r\n TooltipModule.forRoot(),\r\n PopoverModule.forRoot(),\r\n BsDropdownModule.forRoot(),\r\n CarouselModule.forRoot(),\r\n ModalModule.forRoot(),\r\n ChartsModule,\r\n NgxBarcodeModule,\r\n CKEditorModule,\r\n NgxCaptchaModule\r\n ],\r\n declarations: [\r\n AppComponent,\r\n LoginComponent,\r\n ForgotPasswordComponent,\r\n HomeComponent,\r\n CustomersComponent,\r\n invoicesaleComponent,\r\n OrdersComponent,\r\n UsersManagementComponent, UserInfoComponent, UserPreferencesComponent, salescustomercomponent,\r\n RolesManagementComponent, RoleEditorComponent,\r\n AboutComponent,\r\n NotFoundComponent,\r\n NotificationsViewerComponent,\r\n SearchBoxComponent,\r\n StatisticsDemoComponent, TodoDemoComponent, BannerDemoComponent,\r\n EqualValidator,\r\n LastElementDirective,\r\n AutofocusDirective,\r\n BootstrapTabDirective,\r\n BootstrapToggleDirective,\r\n BootstrapSelectDirective,\r\n BootstrapDatepickerDirective,\r\n NumberDirective,\r\n DecimalNumberDirective,\r\n GroupByPipe,\r\n customerInfoComponent,\r\n invsalecomponent,\r\n invInfoComponent,\r\n goodsInfoComponent,\r\n invpricecomponent,\r\n invcheckcomponent,\r\n invInstallmentcomponent,\r\n contractComponent,\r\n showcontractcomponent,\r\n reportComponent,\r\n reportcontractComponent,\r\n carComponent,\r\n driverComponent,\r\n carInfoComponent,\r\n driverInfoComponent,\r\n printdepoComponent,\r\n residComponent,\r\n residinfocomponent,\r\n depotarazComponent,\r\n depotarazinfocomponent,\r\n settlementComponent,\r\n settlementinfocomponent,\r\n SettlementSaveinfocomponent,\r\n returnedComponent,\r\n returnedinfocomponent,\r\n settlementinfocomponent,\r\n goodsinfodealercode,\r\n reportsaleinfoComponent,\r\n reportsalegroupinfoComponent,\r\n requestinvoiceinfoComponent,\r\n requestinvoiceproductComponent,\r\n ImageUploaderComponent,\r\n InvInfoCComponent,\r\n BackButtonDirective,\r\n InventoryComponent,\r\n InventoryInfoComponent,\r\n AddressComponent,\r\n bill,\r\n billInfoComponent,\r\n PreviewsPrintComponent,\r\n PreviewsPrintInfoComponent,\r\n WarehouseStoreComponent,\r\n WarehouseStoreInfoComponent,\r\n WarehouseStoreInfoBarcodesComponent,\r\n WarehouseStoreInfoKardexComponent,\r\n CashDeskComponent,\r\n CashDeskDetailComponent,\r\n ReportSaleCashDeskComponent,\r\n ReportReciptCashDeskComponent,\r\n HomeInfoComponent,\r\n PricePaymentFormComponent,\r\n PricePaymentFormInfoComponent,\r\n ReferenceReportsComponent,\r\n ReferenceReportsInfoComponent,\r\n SendOrderComponent,\r\n SendOrderInfoComponent,\r\n VisitorDetailComponent,\r\n SpinnerLoadingComponent,\r\n SidebarComponent,\r\n HeaderComponent,\r\n WebsiteGuideComponent,\r\n WebsiteGuideInfoComponent,\r\n UploadDucumentsComponent,\r\n UploadDocumentsInfoComponent,\r\n GoodsInfoDetailsComponent,\r\n ReportSaleCustomerInfoComponent,\r\n WarehouseStoreInfoKardexRemaindMajaziComponent,\r\n PersonalInformationComponent,\r\n PersonalInformationInfoComponent,\r\n CheckInformationComponent,\r\n CheckInformationInfoComponent,\r\n RecordPersonalInformationComponent,\r\n RecordPersonalInformationInfoComponent,\r\n RecordCustomerChecksComponent,\r\n RecordCustomerChecksInfoComponent,\r\n VisitsListComponent,\r\n VisitsListInfoComponent,\r\n ReportsMarketerComponent,\r\n ReportsMarketerInfoComponent,\r\n AddReturnToDepoComponent,\r\n NewPasswordComponent,\r\n DownloadRegistrationComponent,\r\n DownloadRegistrationInfoComponent,\r\n CustomerClubListComponent,\r\n CustomerClubListInfoComponent,\r\n ShowPersianDate,\r\n SalesPreInvoiceForContractCheckComponent,\r\n SalesPreInvoiceForContractCheckInfoComponent,\r\n SalePreInvoiceCheckDetailModalComponent,\r\n PreContractModalComponent,\r\n ConfirmMessageComponent,\r\n BarcodeListModalComponent,\r\n SaleClosingManagmentComponent,\r\n LcFormComponent,\r\n BaratElectronicFormComponent,\r\n SaleReceiptCustomerComponent,\r\n SaleReciptCashComponent,\r\n SaleReceiptLcComponent,\r\n SaleReceiptBaratelectronicComponent,\r\n SaleReceiptCheckComponent,\r\n ClientComponent,\r\n MainMenuComponent,\r\n ClientHomeComponent,\r\n ClientFooterComponent,\r\n ClientProductComponent,\r\n ClientContactComponent,\r\n ClientShopBannerComponent,\r\n ClientShopFooterComponent,\r\n SingleProductComponent,\r\n ClientFranchiseComponent,\r\n ClientShopHeaderComponent,\r\n ClientShoppingWithComponent,\r\n ClientStoreFinderComponent,\r\n AboutClientComponent,\r\n ClientProductListComponent,\r\n DelegacyAddEditComponent\r\n ],\r\n providers: [\r\n { provide: ErrorHandler, useClass: AppErrorHandler },\r\n { provide: OAuthStorage, useClass: AuthStorage },\r\n { provide: LocationStrategy, useClass: HashLocationStrategy },\r\n { provide: DateAdapter, useClass: MaterialPersianDateAdapter, deps: [MAT_DATE_LOCALE] },\r\n { provide: MAT_DATE_FORMATS, useValue: PERSIAN_DATE_FORMATS },\r\n { provide: HTTP_INTERCEPTORS, useClass: LoaderInterceptor, multi: true },\r\n { provide: MatPaginatorIntl, useValue: CustomPaginator() },\r\n AlertService,\r\n ThemeManager,\r\n ConfigurationService,\r\n AppTitleService,\r\n AppTranslationService,\r\n NotificationService,\r\n NotificationEndpoint,\r\n AccountService,\r\n AccountEndpoint,\r\n SaleCustomerService,\r\n GlobalConstantsservice,\r\n SalecustomerEndpoint,\r\n LocalStoreManager,\r\n UploaderService,\r\n MyCompanyService,\r\n SharedService,\r\n MyAccountService,\r\n MyAccountEndpoint,\r\n NtsEndPointService,\r\n NtsService\r\n\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\n export class AppModule {\r\n }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { environment } from '../../../environments/environment';\r\nimport { SaleBankAccounts } from '../../models/SaleBankAccounts.model';\r\nimport { SalePreInvoiceForContractCheckInfoModel } from '../../models/SalePreInvoiceForContractCheckInfo.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\n\r\n@Component({\r\n selector: 'sale-preinvoice-check-detail-modal',\r\n templateUrl: 'sale-preinvoice-check-detail-modal.component.html',\r\n styleUrls: ['sale-preinvoice-check-detail-modal.component.scss']\r\n})\r\nexport class SalePreInvoiceCheckDetailModalComponent implements OnInit {\r\n public imageSrc: string = '';\r\n public domainName = environment.production ? 'https://172.16.60.10/' : 'https://localhost:44350/';\r\n @Input() checkDetail: SalePreInvoiceForContractCheckInfoModel;\r\n @Input() saleBankAccount: SaleBankAccounts[] = [];\r\n @Output() changeStatus = new EventEmitter();\r\n\r\n constructor(private alertService: AlertService) { }\r\n\r\n public ngOnInit() {\r\n }\r\n\r\n getFormatDateShamsi(date: Date) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n\r\n changeStatusCheck(statusCheck: boolean) {\r\n if (this.checkDetail.saleCustomerImageStatusId !== 6) {\r\n this.checkDetail.saleCustomerImageStatusId = statusCheck ? 2 : 3;\r\n this.changeStatus.emit(this.checkDetail);\r\n } else {\r\n this.alertService.showMessage('هشدار', 'امکان ثبت دوباره چک های تایید شده وجود ندارد.', MessageSeverity.warn);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \"Alternate\r\n
\r\n\r\n
\r\n \r\n مبلغ چک\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n شماره حساب بانکی چک\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n شماره شبا حساب چک\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n شماره صیادی چک\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n شماره چک\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n بانک چک\r\n \r\n {{bank.sbaBankName}}\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n تاریخ وصول چک \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n توضیحات\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\nimport { Permission } from './permission.model';\n\n\nexport class Role {\n\n constructor(name?: string, description?: string, permissions?: Permission[]) {\n\n \n this.name = name;\n this.description = description;\n this.permissions = permissions;\n }\n\n public id: string;\n public name: string;\n public description: string;\n public usersCount: number;\n public permissions: Permission[];\n}\n","import { Component, OnInit, ViewChild, Input, TemplateRef, ElementRef, ErrorHandler } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\n\r\nimport { Permission } from '../../models/permission.model';\r\nimport { group } from '../../models/group.model';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\nimport { SaleCustomerService } from '../../services/SaleCustomer.service';\r\nimport { Ostan } from '../../models/Ostan.model';\r\nimport { City } from '../../models/City.model';\r\nimport { DepoCode } from '../../models/DepoCode.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { jqxGridComponent } from 'jqwidgets-ng/jqxgrid/public_api';\r\nimport { jqxPanelComponent } from 'jqwidgets-ng/jqxpanel/public_api';\r\nimport { invInfoComponent } from './inv-info.component';\r\nimport { ColumnMode, SelectionType } from '@swimlane/ngx-datatable';\r\n\r\n\r\n@Component({\r\n selector: 'goods-info-dealercode',\r\n templateUrl: './goods-info-dealercode.component.html'\r\n})\r\nexport class goodsinfodealercode implements ErrorHandler {\r\n searchnull: { name: string; };\r\n handleError(error: any): void {\r\n this.isError = true;\r\n }\r\n\r\n public isEditMode = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public SaveCus = false;\r\n\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public isError = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public sale: SaleCustomer = new SaleCustomer();\r\n public allgroup: group[] = [];\r\n public allostan: Ostan[] = [];\r\n public allDepoCode: DepoCode[] = [];\r\n public gr: group = new group();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n\r\n public formResetToggle = true;\r\n public Loadgoods: boolean;\r\n\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allCity: City[] = [];\r\n public loadingIndicator: boolean;\r\n public rowsCache: DepoCode[] = [];\r\n public rows: DepoCode[] = [];\r\n\r\n sourceDepoCode: DepoCode;\r\n\r\n public rowsSelect: DepoCode[] = [];\r\n public CMainCode: number;\r\n public CSubCode: number;\r\n public IdGroup: number;\r\n public Isreal: boolean;\r\n //------------------------\r\n public Year: number;\r\n public DepCode: string;\r\n public usercode: number;\r\n public DCMainUnit: number;\r\n public TarazAll: number;\r\n public IsPrice: boolean;\r\n public myArrId: string[] = new Array();\r\n //------------------------\r\n columns: any[] = [];\r\n selected = [];\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n @ViewChild('cName', { static: false })\r\n public cName;\r\n\r\n @ViewChild('group', { static: false })\r\n public group;\r\n\r\n @ViewChild('cPublicCode', { static: false })\r\n public cPublicCode;\r\n\r\n @ViewChild('cTel', { static: false })\r\n public cTel;\r\n\r\n @ViewChild('cAddress', { static: false })\r\n public cAddress;\r\n\r\n @ViewChild('cOstan', { static: false })\r\n public cOstan;\r\n\r\n @ViewChild('cCity', { static: false })\r\n public cCity;\r\n\r\n @ViewChild('rolesSelector', { static: false })\r\n public rolesSelector;\r\n\r\n @ViewChild('CitySelector', { static: false })\r\n public CitySelector;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n\r\n\r\n\r\n @ViewChild('myGrid', { static: false }) myGrid: jqxGridComponent;\r\n\r\n @ViewChild('myPanel', { static: false }) myPanel: jqxPanelComponent;\r\n @ViewChild('eventsLog', { static: false }) eventsLog: ElementRef;\r\n @ViewChild('pagingInfo', { static: false }) pagingInfo: ElementRef;\r\n\r\n @ViewChild('groups', { static: true })\r\n cgroups: TemplateRef;\r\n\r\n\r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService, private SaleCustomerService: SaleCustomerService, private translationService: AppTranslationService) {\r\n\r\n }\r\n onErrro(event: any): void {\r\n this.isError = true;\r\n }\r\n\r\n //onPageChanged(event: any): void {\r\n // this.eventsLog.nativeElement.style.display = 'block';\r\n // let loggedElements = document.getElementsByClassName('logged');\r\n // if (loggedElements.length >= 5) {\r\n // this.myPanel.clearcontent();\r\n // }\r\n // let args = event.args;\r\n // let eventData = 'pagechanged
Page:' + args.pagenum + ', Page Size: ' + args.pagesize + '
';\r\n // this.myPanel.prepend('
' + eventData + '
');\r\n // // get page information.\r\n // let paginginformation = this.myGrid.getpaginginformation();\r\n // this.pagingInfo.nativeElement.innerHTML = '
Page:' + paginginformation.pagenum + ', Page Size: ' + paginginformation.pagesize + ', Pages Count: ' + paginginformation.pagescount + '
';\r\n //}\r\n //onPageSizeChanged(event: any): void {\r\n // this.eventsLog.nativeElement.style.display = 'block';\r\n // this.myPanel.clearcontent();\r\n // let args = event.args;\r\n // let eventData = 'pagesizechanged
Page:' + args.pagenum + ', Page Size: ' + args.pagesize + ', Old Page Size: ' + args.oldpagesize + '
';\r\n // this.myPanel.prepend('
' + eventData + '
');\r\n // // get page information.\r\n // let paginginformation = this.myGrid.getpaginginformation();\r\n // this.pagingInfo.nativeElement.innerHTML = '
Page:' + paginginformation.pagenum + ', Page Size: ' + paginginformation.pagesize + ', Pages Count: ' + paginginformation.pagescount + '
';\r\n //}\r\n\r\n\r\n //loadBtn(): void {\r\n // let source =\r\n // {\r\n // localdata: this.rows,\r\n // datatype: 'array',\r\n // datafields: [\r\n // { name: 'index', type: 'int' },\r\n // { name: 'dcCode', type: 'string' },\r\n // { name: 'dcDesc', type: 'string' },\r\n // { name: 'pPrice', type: 'string' },\r\n // { name: 'remainCount', type: 'int' }\r\n\r\n // ]\r\n // };\r\n\r\n // let dataAdapter = new jqx.dataAdapter(source);\r\n\r\n // let settings = {\r\n // theme: 'material',\r\n // width: 750,\r\n // source: dataAdapter,\r\n // columnsresize: true,\r\n // autoheight: true,\r\n // sortable: true,\r\n // showtoolbar: true,\r\n // pageable: true,\r\n // altrows: true,\r\n // rtl: true,\r\n // filterable: true,\r\n // showfilterrow: true,\r\n // selectionmode: 'checkbox',\r\n // columns: [\r\n // { text: 'ردیف', datafield: 'index', width: 50, cellsalign: 'right', align: 'right' },\r\n // { text: 'کد محصول', datafield: 'dcCode', width: 150, cellsalign: 'right', align: 'right' },\r\n // { text: 'نام', datafield: 'dcDesc', width: 350, cellsalign: 'right', align: 'right' },\r\n // { text: 'قیمت', datafield: 'pPrice', width: 100, cellsalign: 'right', align: 'right' },\r\n // { text: 'موجودی', datafield: 'remainCount', width: 65, cellsalign: 'right', align: 'right' },\r\n\r\n\r\n // ]\r\n // }\r\n\r\n\r\n\r\n // this.myGrid.createComponent(settings);\r\n //}\r\n\r\n //settings:any = {\r\n // theme: 'material',\r\n // width: 850,\r\n // columnsresize: true,\r\n // autoheight: true,\r\n // sortable: true,\r\n // columns: [\r\n // { text: '#', datafield: 'index', width: 20, cellsalign: 'right', align: 'right' },\r\n // { text: 'کد محصول', datafield: 'dcCode', width: 150, cellsalign: 'right', align: 'right' },\r\n // { text: 'نام', datafield: 'dcDesc', width: 350, cellsalign: 'right', align: 'right' },\r\n // { text: 'قیمت', datafield: 'pPrice', width: 180, cellsalign: 'right', align: 'right' }\r\n // ]\r\n //}\r\n //source: any =\r\n // {\r\n\r\n // localdata: this.rows,\r\n // datatype: 'array',\r\n // datafields: [\r\n // { name: 'index', type: 'int' },\r\n // { name: 'dcCode', type: 'int' },\r\n // { name: 'dcDesc', type: 'string' },\r\n // { name: 'pPrice', type: 'float' }\r\n // ]\r\n // };\r\n //dataAdapter: any = new jqx.dataAdapter(this.source);\r\n //columns: any[] =\r\n // [\r\n // { text: '#', datafield: 'index', width: 20, cellsalign: 'right', align: 'right' },\r\n // { text: 'کد محصول', datafield: 'dcCode', width: 150, cellsalign: 'right', align: 'right' },\r\n // { text: 'نام', datafield: 'dcDesc', width: 350, cellsalign: 'right', align: 'right' },\r\n // { text: 'قیمت', datafield: 'pPrice', width: 180, cellsalign: 'right', align: 'right' }/*,*/\r\n // //{ text: 'تعداد', datafield: 'cCount', width: 50, cellsalign: 'right', align: 'right' },\r\n // //{ text: 'فی گروه', datafield: 'cInspecificgroup', width: 90, cellsalign: 'right', cellsformat: 'c2', align: 'right' },\r\n // //{ text: 'تخفیف', datafield: 'cDiscount', cellsalign: 'right', cellsformat: 'c2', width: 60, align: 'right' },\r\n // //{ text: 'مالیات', datafield: 'cTax', cellsalign: 'right', cellsformat: 'c2', width: 80, align: 'right' },\r\n // //{ text: 'مبلغ کل', datafield: 'cTotalAmount', cellsalign: 'right', cellsformat: 'c2', width: 80, align: 'right' }\r\n // ];\r\n\r\n ngOnInit() {\r\n if (!this.isGeneralEditor) {\r\n this.loadCurrentGroupData();\r\n this.loadCurrentOstanData();\r\n }\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n {\r\n prop: 'selected',\r\n name: gT('انتخاب'),\r\n sortable: false,\r\n canAutoResize: false,\r\n draggable: false,\r\n resizable: false,\r\n headerCheckboxable: true,\r\n checkboxable: true,\r\n width: 70\r\n },\r\n { prop: 'index', name: 'ردیف', width: 65, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'depCode', name: gT('کد محصول'), width: 180 },\r\n { prop: 'dcDesc', name: gT('نام'), width: 360 },\r\n { prop: 'priceStore', name: gT('قیمت'), width: 225 },\r\n { prop: 'pPrice', name: gT('قیمت پابه'), width: 150 },\r\n { prop: 'overhead', name: gT('هزینه'), width: 150 },\r\n { prop: 'priceArsam', name: gT('قمیت آرسام'), width: 150 },\r\n { prop: 'remanid', name: gT('مانده کالا'), width: 120 },\r\n { prop: 'idGroup', name: gT('کد گروه'), width: 200 },\r\n\r\n { prop: 'priceStoreAll', name: gT('قمیت فروشگاه کل'), width: 150 },\r\n { prop: 'priceArsamAll', name: gT('قیمت آرسام کل'), width: 120 },\r\n { prop: 'overheadAll', name: gT('هزینه کل'), width: 200 },\r\n { prop: 'pPriceAll', name: gT('قیمت پایه کل'), width: 200 }\r\n\r\n ];\r\n if (this.CanManageCustomer) {\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"قیمت پابه\";\r\n });\r\n\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"قیمت پایه کل\";\r\n });\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"قمیت فروشگاه کل\";\r\n });\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"قیمت آرسام کل\";\r\n });\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"هزینه کل\";\r\n });\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"کد گروه\";\r\n });\r\n\r\n\r\n\r\n\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"هزینه\";\r\n });\r\n this.columns = this.columns.filter(c => {\r\n return c.name !== \"قمیت آرسام\";\r\n });\r\n }\r\n\r\n this.selected = [];\r\n\r\n this.searchnull = { name: \"0\" };\r\n }\r\n\r\n get CanManageCustomer() {\r\n return this.accountService.userHasPermission(Permission.manageCustomerPermission);\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.depCode, r.dcDesc));\r\n\r\n }\r\n\r\n changereal() {\r\n this.isreal = true;\r\n }\r\n\r\n changeLegal() {\r\n this.isreal = false;\r\n }\r\n\r\n onSelect({ selected }) {\r\n this.selected.splice(0, this.selected.length);\r\n this.selected.push(...selected);\r\n }\r\n\r\n onActivate(event) {\r\n\r\n }\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n if (this.isNewCustomer) {\r\n\r\n this.accountService.getCSubCode(this.authService.currentUser.id).subscribe(res => this.MethodSubCode(res[0], res[1]));\r\n }\r\n else {\r\n\r\n this.accountService.updateCustomer(this.sale).subscribe(s => this.saveSuccessHelper(this.sale), error => this.saveFailedHelper(error));\r\n\r\n }\r\n }\r\n\r\n MethodSubCode(maincode: number, subcode: number) {\r\n this.sale.cSubCode = subcode;\r\n this.sale.cMainCode = maincode;\r\n\r\n this.accountService.newCustomer(this.sale).subscribe(s => this.saveSuccessHelper(this.sale), error => this.saveFailedHelper(error));\r\n }\r\n\r\n\r\n cancel() {\r\n //if (this.isGeneralEditor) {\r\n // this.sale = this.sale = new SaleCustomer();\r\n //} else {\r\n // this.sale = new SaleCustomer();\r\n //}\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.alertService.showMessage('انتقال', 'کالاها به بخش فاکتور منتقل گردید', MessageSeverity.success);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n private loadCurrentGroupData() {\r\n this.alertService.startLoadingMessage();\r\n if (this.canAssignGroups) {\r\n this.accountService.getgroups().subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n\r\n }\r\n }\r\n\r\n\r\n\r\n private loadCurrentOstanData() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getostans().subscribe(results => this.onCurrentUserDataLoadOstanSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n public LoadDepoCode() {\r\n //if (!this.isreal) {\r\n\r\n this.accountService.getDeposListTaraz(this.Year, this.DepCode, this.usercode, this.DCMainUnit, this.TarazAll, this.IsPrice, this.IdGroup, this.CMainCode).subscribe(results => this.onDataLoadSuccessful(results), error => this.onDataLoadFailed(error));\r\n\r\n //}\r\n //else {\r\n\r\n // this.accountService.getDeposListTarazArray(this.Year, this.DepCode, this.usercode, this.DCMainUnit, this.TarazAll, this.IsPrice, this.IdGroup, this.CMainCode).subscribe(results => this.onDataLoadSuccessful(results), error => this.onDataLoadFailed(error));\r\n\r\n\r\n //}\r\n\r\n }\r\n\r\n onDataLoadSuccessful(DepoCodeObj: DepoCode[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n DepoCodeObj.forEach((user, index, SaleCustomer) => {\r\n (user as any).index = index + 1;\r\n var currencyFormatter = require('currency-formatter');\r\n user.priceStore = currencyFormatter.format(user.priceStore, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n });\r\n this.rowsCache = [...DepoCodeObj];\r\n this.rows = DepoCodeObj;\r\n this.Loadgoods = true;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n\r\n private onCurrentUserDataLoadSuccessful(groups: group[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allgroup = groups;\r\n }\r\n\r\n private onCurrentUserDataLoadOstanSuccessful(ostans: Ostan[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allostan = ostans;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n this.gr = new group();\r\n }\r\n\r\n newCustomer(allgroup: group[], allostan: Ostan[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.sale = new SaleCustomer();\r\n this.allgroup = [...allgroup];\r\n this.allostan = [...allostan];\r\n this.edit();\r\n return this.sale;\r\n }\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.sale = new SaleCustomer();\r\n Object.assign(this.sale, this.sale);\r\n } else {\r\n if (!this.sale) {\r\n this.sale = new SaleCustomer();\r\n }\r\n }\r\n this.isEditMode = true;\r\n }\r\n\r\n onChange(number?: number) {\r\n this.accountService.getCity(number).subscribe(res => this.onLoadcity(res));\r\n }\r\n\r\n onLoadcity(citys: City[]) {\r\n this.allCity = citys;\r\n this.CitySelector.refresh();\r\n\r\n\r\n }\r\n\r\n private saveSuccessHelper(sale?: SaleCustomer) {\r\n this.testIsRoleUserCountChanged(this.sale, this.sale);\r\n if (sale) {\r\n Object.assign(this.sale, sale);\r\n }\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n Object.assign(this.sale, this.sale);\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.SaveCus = true;\r\n this.alertService.showMessage('Success', `مشتری با موفقیت ایجاد شد`, MessageSeverity.success);\r\n\r\n\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات مشتری با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به مشتری با موفقیت ثبت شد', MessageSeverity.success);\r\n //this.refreshLoggedInUser();\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n private testIsRoleUserCountChanged(currentUser: SaleCustomer, editedUser: SaleCustomer) {\r\n\r\n const rolesAdded = this.isNewCustomer ? editedUser.group : editedUser.group.filter(role => currentUser.group.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewCustomer ? [] : currentUser.group.filter(role => editedUser.group.indexOf(role) == -1);\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n\r\n getGroupByName(name: string) {\r\n return this.allgroup.find((r) => r.NameGroup == name);\r\n }\r\n\r\n getOstanByName(name: string) {\r\n return this.allostan.find((r) => r.Name == name);\r\n }\r\n\r\n\r\n editcustomer(row: DepoCode) {\r\n this.sourceDepoCode = row;\r\n }\r\n\r\n\r\n\r\n private setGroups(sale: SaleCustomer, allgroups?: group[]) {\r\n\r\n this.allgroup = allgroups ? [...allgroups] : [];\r\n if (sale.group) {\r\n for (const ur of sale.group) {\r\n if (!this.allgroup.some(r => r.NameGroup == ur)) {\r\n this.allgroup.unshift(new group(ur));\r\n }\r\n }\r\n }\r\n if (allgroups == null || this.allgroup.length != allgroups.length) {\r\n setTimeout(() => {\r\n if (this.rolesSelector) {\r\n this.rolesSelector.refresh();\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n >\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n\r\n\r\n \r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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 class CustomerSalePreInvoice {\n constructor(customerID?: number, spiYear?: number, spiPartCode?: number, spiCode?: number) {\n this.customerID = customerID;\n this.spiYear = spiYear;\n this.spiPartCode = spiPartCode;\n this.spiCode = spiCode;\n }\n public customerID: number;\n public spiYear: number;\n public spiPartCode: number;\n public spiCode: number;\n}\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-client-shopping-with',\r\n templateUrl: './client-shopping-with.component.html',\r\n styleUrls: ['./client-shopping-with.component.scss']\r\n})\r\n/** clientShoppingWith component*/\r\nexport class ClientShoppingWithComponent {\r\n /** clientShoppingWith ctor */\r\n constructor() {\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

خرید با ما

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

تحویل در فروشگاه

\r\n\r\n

متن تست

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

تحویل درب منزل

\r\n \r\n

متن تست

\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\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 {ViewChild, OnInit, TemplateRef, ElementRef} from '@angular/core';\r\nimport {Component} from '@angular/core';\r\nimport {Utilities} from '../../services/utilities';\r\nimport {AccountService} from '../../services/account.service';\r\nimport {Permission} from '../../models/permission.model';\r\nimport {ModalDirective} from 'ngx-bootstrap/modal/public_api';\r\nimport {AppTranslationService} from '../../services/app-translation.service';\r\nimport {AlertService} from '../../services/alert.service';\r\nimport {AuthService} from '../../services/auth.service';\r\nimport {SupliesDealer} from '../../models/SupliesDealer.model';\r\nimport {SDCodeClass} from '../../models/SDCodeClass.model';\r\nimport {MyCompanyService} from '../../services/MyCompany.service';\r\nimport {FormControl, Validators} from '@angular/forms';\r\nimport * as moment from 'jalali-moment';\r\nimport {MyAccountService} from '../../services/MyAccount.service';\r\nimport {ExcelService} from '../../services/excel.service';\r\nimport {GetInvoiceReport} from '../../models/GetInvoiceReport';\r\n\r\n@Component({\r\n selector: 'report-sale-info',\r\n templateUrl: './report-sale-info.component.html',\r\n styleUrls: ['./report-sale-info.component.scss']\r\n})\r\nexport class reportsaleinfoComponent implements OnInit {\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private accountService: AccountService,\r\n private translationService: AppTranslationService,\r\n private authService: AuthService,\r\n private myCompanyService: MyCompanyService,\r\n private myAccountService: MyAccountService,\r\n private excelService: ExcelService\r\n ) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n public fromDate = \"\";\r\n public toDate = \"\";\r\n dateObjectFromDate = moment();\r\n dateObjectToDate = moment();\r\n\r\n datePickerConfig = {\r\n firstDayOfWeek: 'su',\r\n monthFormat: 'MMM, YYYY',\r\n disableKeypress: false,\r\n allowMultiSelect: false,\r\n closeOnSelect: undefined,\r\n closeOnSelectDelay: 100,\r\n onOpenDelay: 0,\r\n weekDayFormat: 'ddd',\r\n appendTo: document.body,\r\n drops: 'down',\r\n opens: 'right',\r\n showNearMonthDays: true,\r\n showWeekNumbers: false,\r\n enableMonthSelector: true,\r\n format: \"YYYY-MM-DD HH:mm\",\r\n yearFormat: 'YYYY',\r\n showGoToCurrent: true,\r\n dayBtnFormat: 'DD',\r\n monthBtnFormat: 'MMM',\r\n hours12Format: 'hh',\r\n hours24Format: 'HH',\r\n meridiemFormat: 'A',\r\n minutesFormat: 'mm',\r\n minutesInterval: 1,\r\n secondsFormat: 'ss',\r\n secondsInterval: 1,\r\n showSeconds: false,\r\n showTwentyFourHours: true,\r\n timeSeparator: ':',\r\n multipleYearsNavigateBy: 10,\r\n showMultipleYearsNavigation: false,\r\n locale: 'fa-IR',\r\n // min:'2017-08-29 15:50',\r\n // minTime:'2017-08-29 15:50'\r\n };\r\n @ViewChild('dayPickerFromDate') datePickerFromDate: ElementRef;\r\n @ViewChild('dayPickerToDate') datePickerToDate: ElementRef;\r\n\r\n public isEditMode = true;\r\n rowsCache: GetInvoiceReport[] = [];\r\n public isError = false;\r\n rows: GetInvoiceReport[] = [];\r\n editingCName: { name: string };\r\n @ViewChild('editorModal', {static: true})\r\n editorModal: ModalDirective;\r\n columns: any[] = [];\r\n loadingIndicator: boolean;\r\n editingFullName: { name: string };\r\n editingCUser: { name: string };\r\n selected = [];\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n\r\n @ViewChild('indexTemplate', {static: true})\r\n indexTemplate: TemplateRef;\r\n\r\n\r\n @ViewChild('actionsTemplate', {static: true})\r\n actionsTemplate: TemplateRef;\r\n public allSuplies: SupliesDealer[] = [];\r\n public sdCode: string;\r\n serverDate: Date;\r\n dateFrom = new FormControl(new Date());\r\n dateTo = new FormControl(new Date());\r\n supplierControl = new FormControl('', Validators.required);\r\n\r\n ngOnInit() {\r\n\r\n const startDateJalali1 = moment().locale('fa').startOf('month').format('YYYY/M/D').replace('/', '-');\r\n const todayJalali1 = moment().locale('fa').format('YYYY/M/D').replace('/', '-');\r\n this.dateObjectFromDate = moment(startDateJalali1, 'jYYYY,jMM,jDD');\r\n this.dateObjectToDate = moment(todayJalali1, 'jYYYY,jMM,jDD');\r\n\r\n this.accountService.SupliesDealerList().subscribe(res => this.methodLoadSuplies(res), error => this.myCompanyService.onCurrentUserDataLoadFailed(error));\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n {\r\n prop: 'index', name: 'ردیف', width: 65, cellTemplate: this.indexTemplate, canAutoResize: false, frozenLeft: true,\r\n summaryFunc: cells => this.DetailSummery(['spipPrice'])\r\n },\r\n {prop: 'lcbBarcode', name: gT('reportSale.ProductSerial'), width: 200, frozenLeft: false},\r\n {prop: 'dcDesc', name: gT('reportSale.ProductName'), width: 370},\r\n {prop: 'ncAcceptedDate', name: gT('reportSale.Date'), width: 150},\r\n {prop: 'ncCode', name: gT('reportSale.InvoiceNumber'), width: 150},\r\n {prop: 'spipPrice', name: gT('reportSale.InvoiceAmount'), width: 140},\r\n {prop: 'moneyBase', name: gT('reportSale.BaseAmount'), width: 140},\r\n {prop: 'depTitle', name: gT('reportSale.ExitWarehouseName'), width: 200},\r\n ];\r\n this.columns.push({name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false});\r\n\r\n }\r\n\r\n methodLoadSuplies(res: SupliesDealer[]): void {\r\n this.allSuplies = res;\r\n this.allSuplies.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (index === 0) {\r\n this.sdCode = user.sdCode;\r\n this.loadingIndicator = true;\r\n }\r\n });\r\n this.loaddata();\r\n }\r\n\r\n selectSuplies(event) {\r\n this.sdCode = event.value.toString();\r\n const ressdCode = new SDCodeClass();\r\n ressdCode.result = this.sdCode;\r\n this.MethodLoadDealerCode(ressdCode.result);\r\n\r\n }\r\n\r\n get Viewsupliesdealer() {\r\n return this.accountService.userHasPermission(Permission.ViewSupliesPermission);\r\n }\r\n\r\n loaddata() {\r\n if (this.Viewsupliesdealer) {\r\n if (this.allSuplies.length > 0) {\r\n this.MethodLoadDealerCode(this.allSuplies[0].sdCode);\r\n } else {\r\n this.alertService.showMessage('هیچ تامین کننده ای پیدا نشد');\r\n }\r\n } else {\r\n if (this.allSuplies.length > 0) {\r\n this.accountService.getSDCode(this.authService.currentUser.id).subscribe(\r\n res => this.MethodLoadDealerCode(res.result),\r\n error => this.myCompanyService.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n this.alertService.showMessage('هیچ تامین کننده ای پیدا نشد');\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n MethodLoadDealerCode(sdCode): void {\r\n this.loadingIndicator = true;\r\n this.sdCode = sdCode;\r\n\r\n this.accountService.GetInvoiceReportSite(\"\",\r\n this.dateObjectFromDate.locale('en').format('YYYY_M_D').toString(),\r\n this.dateObjectToDate.locale('en').format('YYYY_M_D').toString(), 0, 2.0, sdCode)\r\n .subscribe(\r\n results => this.onDataLoadSuccessful(results),\r\n error => {\r\n this.myCompanyService.onCurrentUserDataLoadFailed(error);\r\n this.loadingIndicator = false;\r\n });\r\n }\r\n\r\n onDataLoadSuccessful(ReportAllObj: GetInvoiceReport[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n ReportAllObj.forEach((user, index, SaleCustomer) => {\r\n (user as any).index = index + 1;\r\n const currencyFormatter = require('currency-formatter');\r\n user.unitPrice = currencyFormatter.format(user.unitPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n user.discount = currencyFormatter.format(user.discount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n user.totalAfterDiscount = currencyFormatter.format(user.totalAfterDiscount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n user.totalPrice = currencyFormatter.format(user.totalPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n\r\n });\r\n\r\n this.rowsCache = [...ReportAllObj];\r\n this.rows = ReportAllObj;\r\n\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.dcDesc, r.date));\r\n\r\n }\r\n\r\n onSelect(row) {\r\n }\r\n\r\n\r\n trackByIdx(index: number, obj: any): any {\r\n return index;\r\n }\r\n\r\n DetailSummery(cells: any[]) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n const currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, {code: 'USD'})), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n onSearch(): void {\r\n this.MethodLoadDealerCode(this.sdCode);\r\n }\r\n\r\n exportExcel() {\r\n this.excelService.exportAsExcelFile(this.rows, `لیست کالا های ${this.authService.currentUser.fullName}`);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n از تاریخ :\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n تا تاریخ :\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n تامین کننده\r\n \r\n \r\n {{Suplies.sdName}}\r\n \r\n \r\n لطفا تامین کننده را انتخاب کنید.\r\n {{supplierControl.value?.sdName}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n
\r\n
\r\n\r\n
\r\n","export default __webpack_public_path__ + \"logo-bill.png\";","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NationalCodeService {\r\n\r\n checkNationalCode(value: string) {\r\n let checkCode: number = 0;\r\n if (!/^[0-9]*$/.test(value))\r\n return checkCode = 1;\r\n if (value.length < 10)\r\n return checkCode = 2;\r\n if (!/^\\d{10}$/.test(value)\r\n || value === '0000000000'\r\n || value === '1111111111'\r\n || value === '2222222222'\r\n || value === '3333333333'\r\n || value === '4444444444'\r\n || value === '5555555555'\r\n || value === '6666666666'\r\n || value === '7777777777'\r\n || value === '8888888888'\r\n || value === '9999999999') {\r\n return checkCode = 3;\r\n }\r\n\r\n let Arr = Array.from(value)\r\n let Sum = 0;\r\n let Last;\r\n\r\n for (let i = 0; i < 9; i++) {\r\n Sum += +Arr[i] * (10 - i)\r\n }\r\n let divideRemaining = Sum % 11;\r\n if (divideRemaining < 2) {\r\n Last = divideRemaining;\r\n } else {\r\n Last = 11 - (divideRemaining);\r\n }\r\n let n = Arr[9];\r\n\r\n if (Last == n) {\r\n return checkCode = 0;\r\n } else {\r\n return checkCode = 4;\r\n }\r\n\r\n //let check = 0;\r\n //let sum = 0;\r\n //for (let i = 0; i < value.length; i++) {\r\n // sum = parseInt(value[i]) * (value.length - i);\r\n // check += sum;\r\n //}\r\n // var x = check % 11;\r\n // if (x === 0) {\r\n // return checkCode = 0;\r\n // } else {\r\n // return checkCode = 4;\r\n // }\r\n }\r\n}\r\n","\n\nexport class PubCar {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(ccode?: number, cnumer?: string, CserilaNum?: number, ClastDriverCode?: number, CcarKindCode?: number, DStore?: boolean) {\n this.ccode = ccode;\n this.cnumer = cnumer;\n this.CserilaNum = CserilaNum;\n this.ClastDriverCode = ClastDriverCode;\n this.CcarKindCode = CcarKindCode;\n this.DStore = DStore;\n }\n public ccode: number;\n public cnumer: string;\n public CserilaNum: number;\n public ClastDriverCode: number;\n public CcarKindCode: number;\n public DStore: boolean;\n\n\n\n}\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'download-registration',\n templateUrl: './download-registration.component.html',\n styleUrls: ['./download-registration.component.scss'],\n animations: [fadeInOut]\n})\nexport class DownloadRegistrationComponent {\n}\n","
\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 enum CustomerImagesNameEnum {\r\n birthCertificate = 1,\r\n nationalCard = 2,\r\n certificateOfEmployment = 3,\r\n eductionOfSalaries = 4,\r\n validationReport = 5\r\n}\r\n","\r\nimport { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { InputPricePaymentFormInvoiceSaleModel } from '../../models/InputPricePaymentFormInvoiceSale.model';\r\nimport { fadeInOut } from '../../services/animations';\r\nimport { SaleReceipt } from '../../models/SaleReceipts/SaleReceipt.model';\r\nimport { SaleSubReceipt } from '../../models/SaleReceipts/SaleSubReceipt.model';\r\nimport * as moment from 'jalali-moment';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { ConfirmMessageModel } from '../../models/utilities/confirm-message.model';\r\nimport { ConfirmMessageEnum } from '../../enums/confirm-message.enum';\r\nimport { SharedService } from '../../services/Shared.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-lc-form',\r\n templateUrl: './lc-form.component.html',\r\n styleUrls: ['lc-form.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class LcFormComponent implements OnInit, OnChanges {\r\n\r\n public loadingIndicator: boolean;\r\n public columns: any[] = [];\r\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\r\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\r\n public dateObjectRSDate = moment();\r\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n public checkoutConfirm: boolean = false;\r\n public lcFile: File;\r\n\r\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\r\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n }\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private sharedService: SharedService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n cancel() { }\r\n\r\n update(state: boolean) { }\r\n\r\n save() {\r\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\r\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\r\n this.accountService.GetRSerialCheck(this.SaleSubReceiptObj.rSerial).subscribe(\r\n results => {\r\n this.onCurrentCheck(results);\r\n },\r\n error => this.onCurrentUserDataLoadFailed(error)\r\n );\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات مربوط به پرداخت را وارد نمایید.', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم پرداخت';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به پرداخت نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n }\r\n\r\n onCurrentCheck(results: boolean): void {\r\n if (results == true) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'شماره سریال تکراری می باشد', MessageSeverity.warn);\r\n }\r\n if (this.dateObjectRSDate == null || this.dateObjectRSDate.toLocaleString() == \"undefined\" || this.dateObjectRSDate.toString() == undefined || this.dateObjectRSDate.toLocaleString() == \"\") {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rsPrice == 0 || this.SaleSubReceiptObj.rsPrice == null) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rSerial == \"\" || this.SaleSubReceiptObj.rSerial == null) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\r\n }\r\n var date = this.sharedService.checkDate(this.dateObjectRSDate);\r\n if (date > 0) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\r\n }\r\n\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n showCheckoutConfirm(event: boolean) {\r\n this.checkoutConfirm = event;\r\n }\r\n\r\n deleteLc(event: any) { }\r\n\r\n fileChangeEvent(event: FileList) {\r\n // console.log(event);\r\n let result;\r\n if (event.item(0).size <= 1000000 && event.item(0).type == \"image/jpeg\") {\r\n this.lcFile = event.item(0);\r\n let reader = new FileReader();\r\n reader.onload = (event2: any) => {\r\n result = event2.target.result;\r\n }\r\n\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n getFormatDateShamsi(date: string) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n پیش فاکتور\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n قرارداد\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
خریدار : {{saleInvoiceDetail.cName}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n سریال\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n بانک گشایش کننده\r\n \r\n {{bank.sbaBankName}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n بانک معامله کننده اعتبار\r\n \r\n {{bank.sbaBankName}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n مدت سررسید\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n مبلغ\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n توضیحات\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{getFormatDateShamsi(value)}}\r\n \r\n \r\n \r\n \r\n {{value | number}} ریال\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","\n\nexport class DepoAssignmentProductBarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(Dapbyear?: number, Dapbcode?: number, DapbdepCode?: string, DapbbarCode?: string, Dapbddccode?: string) {\n this.Dapbyear = Dapbyear;\n this.Dapbcode = Dapbcode;\n this.DapbdepCode = DapbdepCode;\n this.DapbbarCode = DapbbarCode;\n this.Dapbddccode = Dapbddccode;\n }\n public Dapbyear: number;\n public Dapbcode: number;\n public DapbdepCode: string;\n public DapbbarCode: string;\n public Dapbddccode: string;\n\n\n}\n","\n\nexport class VMSaleSubLoadingCommands_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(lscnum?: number, Lscyear?: number, lscdccode?: string, lsccountLoading?: number, LscunitProductCode?: number, Lscdesc?: string, LscpartCode?: number, lscloadingOrderCount?: number, setcountload?: number, saleLoadingCommand?: string[], BarCode?: string) {\n this.lscnum = lscnum;\n this.Lscyear = Lscyear;\n this.lscdccode = lscdccode;\n this.lsccountLoading = lsccountLoading;\n this.LscunitProductCode = LscunitProductCode;\n this.Lscdesc = Lscdesc;\n this.LscpartCode = LscpartCode;\n this.lscloadingOrderCount = lscloadingOrderCount;\n this.setcountload = setcountload;\n this.saleLoadingCommand = saleLoadingCommand;\n this.barCode = BarCode;\n\n }\n public lscnum: number;\n public Lscyear: number;\n public lscdccode: string;\n public lsccountLoading: number;\n public lscloadingOrderCount: number;\n public LscunitProductCode: number;\n public Lscdesc: string;\n public LscpartCode: number;\n public setcountload: number;\n public saleLoadingCommand: string[];\n public barCode: string;\n}\n","
\r\n \r\n
\r\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'send-order-info',\n templateUrl: './send-order-info.component.html'\n})\nexport class SendOrderInfoComponent {\n loadingIndicator = true;\n rows = [\n { name: 'Rahul', gender: 'Male', company: 'Swimlane', date: '1400/04/05' },\n { name: 'Ankit', gender: 'Male', company: 'KFC', date: '1400/04/06' },\n { name: 'Neha', gender: 'Female', company: 'Burger King', date: '1400/04/07' },\n ];\n\n columns = [\n { prop: 'name' },\n { name: 'Gender' },\n { name: 'Company' },\n { name: 'Date' },\n ];\n\n constructor() { }\n\n ngOnInit() {\n this.rows = this.rows;\n setTimeout(() => {\n this.loadingIndicator = false;\n }, 1500);\n }\n\n delete() {\n\n }\n\n}\n","\n\nimport { Injectable } from '@angular/core';\nimport { AppTheme } from '../models/app-theme.model';\n\n@Injectable()\nexport class ThemeManager {\n themes: Array = [\n {\n id: 1,\n name: 'Default',\n href: 'bootstrap.css',\n isDefault: true,\n background: '#007bff',\n color: '#fff'\n },\n {\n id: 2,\n name: 'Cosmo',\n href: 'cosmo.css',\n background: '#2780E3',\n color: '#373a3c'\n },\n {\n id: 3,\n name: 'Lumen',\n href: 'lumen.css',\n background: '#158CBA',\n color: '#f0f0f0'\n },\n {\n id: 4,\n name: 'Cerulean',\n href: 'cerulean.css',\n background: '#2FA4E7',\n color: '#e9ecef'\n },\n {\n id: 5,\n name: 'Minty',\n href: 'minty.css',\n background: '#78C2AD',\n color: '#F3969A'\n },\n {\n id: 6,\n name: 'Sketchy',\n href: 'sketchy.css',\n background: '#333',\n color: 'white'\n },\n {\n id: 7,\n name: 'Slate',\n href: 'slate.css',\n background: '#3A3F44',\n color: '#7A8288',\n isDark: true\n },\n {\n id: 8,\n name: 'Flatly',\n href: 'flatly.css',\n background: '#2C3E50',\n color: '#18BC9C'\n },\n {\n id: 9,\n name: 'Pulse',\n href: 'pulse.css',\n background: '#593196',\n color: '#A991D4'\n },\n {\n id: 10,\n name: 'Spacelab',\n href: 'spacelab.css',\n background: '#446E9B',\n color: '#999'\n },\n {\n id: 11,\n name: 'United',\n href: 'united.css',\n background: '#E95420',\n color: '#fff'\n },\n {\n id: 12,\n name: 'Journal',\n href: 'journal.css',\n background: '#EB6864',\n color: '#aaa'\n },\n {\n id: 13,\n name: 'Superhero',\n href: 'superhero.css',\n background: '#DF691A',\n color: '#2B3E50',\n isDark: true\n },\n {\n id: 14,\n name: 'Solar',\n href: 'solar.css',\n background: '#B58900',\n color: '#002B36',\n isDark: true\n }\n ];\n\n public installTheme(theme?: AppTheme) {\n if (theme == null || theme.isDefault) {\n this.removeStyle('theme');\n } else {\n this.setStyle('theme', `assets/themes/${theme.href}`);\n }\n }\n\n public getDefaultTheme(): AppTheme {\n return this.themes.find(theme => theme.isDefault);\n }\n\n public getThemeByID(id: number): AppTheme {\n return this.themes.find(theme => theme.id === id);\n }\n\n private setStyle(key: string, href: string) {\n this.getLinkElementForKey(key).setAttribute('href', href);\n }\n\n private removeStyle(key: string) {\n const existingLinkElement = this.getExistingLinkElementByKey(key);\n if (existingLinkElement) {\n document.head.removeChild(existingLinkElement);\n }\n }\n\n private getLinkElementForKey(key: string) {\n return this.getExistingLinkElementByKey(key) || this.createLinkElementWithKey(key);\n }\n\n private getExistingLinkElementByKey(key: string) {\n return document.head.querySelector(`link[rel=\"stylesheet\"].${this.getClassNameForKey(key)}`);\n }\n\n private createLinkElementWithKey(key: string) {\n const linkEl = document.createElement('link');\n linkEl.setAttribute('rel', 'stylesheet');\n linkEl.classList.add(this.getClassNameForKey(key));\n document.head.appendChild(linkEl);\n return linkEl;\n }\n\n private getClassNameForKey(key: string) {\n return `style-manager-${key}`;\n }\n}\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\n\r\nimport { Permission } from '../../models/permission.model';\r\nimport { group } from '../../models/group.model';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\nimport { SaleCustomerService } from '../../services/SaleCustomer.service';\r\nimport { Ostan } from '../../models/Ostan.model';\r\nimport { City } from '../../models/City.model';\r\nimport { PubCar } from '../../models/PubCar.model';\r\nimport { PubCarKind } from '../../models/PubCarKind.model';\r\nimport { PubDrivers } from '../../models/PubDrivers.model';\r\n\r\n@Component({\r\n selector: 'driver-info',\r\n templateUrl: './driver-info.component.html'\r\n})\r\nexport class driverInfoComponent {\r\n\r\n public isEditMode = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public objPubDrivers: PubDrivers = new PubDrivers();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allPubCar: PubCar[] = [];\r\n public Dcode: number;\r\n public Dccode: number;\r\n submitted=false;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService, private SaleCustomerService: SaleCustomerService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.LoadDriversCars();\r\n this.accountService.GetNewDriverCode().subscribe(res => this.MethodloadNewCode(res));\r\n\r\n\r\n }\r\n\r\n private LoadDriversCars() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getPubCars().subscribe(results => this.onCurrentHesabKindDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n\r\n private onCurrentHesabKindDataLoadSuccessful(PubcarsObj: PubCar[]) {\r\n PubcarsObj.forEach((user, index, con) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.Dccode = user.ccode;\r\n\r\n }\r\n });\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.allPubCar = PubcarsObj;\r\n\r\n }\r\n\r\n MethodloadNewCode(loadNewCode: number) {\r\n this.objPubDrivers.dcode = loadNewCode;\r\n\r\n }\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n if (this.isNewCustomer) {\r\n this.objPubDrivers.dccode = this.Dccode;\r\n this.objPubDrivers.DStore = true;\r\n this.accountService.newPubDrivers(this.objPubDrivers).subscribe(s => this.saveSubSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n else {\r\n }\r\n }\r\n\r\n cancel() {\r\n\r\n this.objPubDrivers = new PubDrivers();\r\n\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n private saveSubSuccessHelper() {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ` راننده با موفقیت ایجاد شد`, MessageSeverity.success);\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n }\r\n\r\n newCar(allkind: PubCarKind[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.objPubDrivers = new PubDrivers();\r\n this.edit();\r\n return this.objPubDrivers;\r\n }\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.objPubDrivers = new PubDrivers();\r\n Object.assign(this.objPubDrivers, this.objPubDrivers);\r\n } else {\r\n if (!this.objPubDrivers) {\r\n this.objPubDrivers = new PubDrivers();\r\n }\r\n }\r\n this.isEditMode = true;\r\n }\r\n\r\n onChange(number?: number) {\r\n this.Dccode = number;\r\n }\r\n\r\n\r\n\r\n private saveSuccessHelper(objPubDrivers?: PubDrivers) {\r\n\r\n if (objPubDrivers) {\r\n Object.assign(this.objPubDrivers, objPubDrivers);\r\n }\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n Object.assign(this.objPubDrivers, this.objPubDrivers);\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('Success', `خودرو با موفقیت ایجاد شد`, MessageSeverity.success);\r\n\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات خودرو با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به خودرو با موفقیت ثبت شد', MessageSeverity.success);\r\n //this.refreshLoggedInUser();\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n //if (!replace) {\r\n // this.form.reset();\r\n //} else {\r\n // this.formResetToggle = false;\r\n\r\n // setTimeout(() => {\r\n // this.formResetToggle = true;\r\n // });\r\n //}\r\n }\r\n\r\n private testIsRoleUserCountChanged(currentUser: SaleCustomer, editedUser: SaleCustomer) {\r\n\r\n const rolesAdded = this.isNewCustomer ? editedUser.group : editedUser.group.filter(role => currentUser.group.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewCustomer ? [] : currentUser.group.filter(role => editedUser.group.indexOf(role) == -1);\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n\r\n getGroupByName(name: string) {\r\n return this.allPubCar.find((r) => r.cnumer == name);\r\n }\r\n\r\n\r\n\r\n\r\n editcustomer(sale: PubCar, allPUbkind: PubCarKind[]) {\r\n if (sale) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = false;\r\n }\r\n }\r\n onSubmit(){}\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n

You submitted successfully!

\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class VMSalePriceProductInfoForSalePerInvoice {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(rowNumber?: number, productCode?: string, productName?: string, priceChangeKindId?: number, priceChangeKindName?: string, priceChangeLastDate?: Date, productUnit?: string,\r\n productCount?: number, supplierPrice?: number, commissionProfitPercentage?: number, salePrice?: number, pyear?: number, moneyCode?: number, comdArsam?: number, comdStore?: number, combaseArsam?: number,\r\n combaseStore?: number, comActive?: boolean, discountDocumentId?: number, discountDocumentDate?: Date, retailStoreId?: number, fromDateTime?: Date, toDateTime?: Date,\r\n discountKindId?: string, discountApplyId?: string, discountAmountId?: string, comment?: string, status?: boolean, discountValue?: number, fromValue?: number, toValue?: number,\r\n comArsamPriceFromSaleUnitBeforDiscount?: number, comStorePriceFromSaleUnitBeforDiscount?: number, maximumUnitSalePriceAfterDiscount?: number, discountPriceFromMaximumUnitSalePriceAfterDiscount?: number,\r\n approvedDiscountValuePercent?: number, approvedDiscountValuePrice?: number,\r\n arsamBaseCommissionAfterDiscount?: number, storeBaseCommissionAfterDiscount?: number\r\n ) {\r\n this.rowNumber = rowNumber;\r\n this.productCode = productCode;\r\n this.productName = productName;\r\n this.priceChangeKindId = priceChangeKindId;\r\n this.priceChangeKindName = priceChangeKindName;\r\n this.productUnit = productUnit;\r\n this.productCount = productCount;\r\n this.priceChangeLastDate = priceChangeLastDate;\r\n this.supplierPrice = supplierPrice;\r\n this.commissionProfitPercentage = commissionProfitPercentage;\r\n this.salePrice = salePrice;\r\n this.pyear = pyear;\r\n this.moneyCode = moneyCode;\r\n //this.moneyBase = moneyBase;, moneyBase?: number\r\n this.comdArsam = comdArsam;\r\n this.comdStore = comdStore;\r\n this.combaseArsam = combaseArsam;\r\n this.combaseStore = combaseStore;\r\n this.comActive = comActive;\r\n this.discountDocumentId = discountDocumentId;\r\n this.discountDocumentDate = discountDocumentDate;\r\n this.retailStoreId = retailStoreId;\r\n this.fromDateTime = fromDateTime;\r\n this.toDateTime = toDateTime;\r\n this.discountKindId = discountKindId;\r\n this.discountApplyId = discountApplyId;\r\n this.discountAmountId = discountAmountId;\r\n this.comment = comment;\r\n this.status = status;\r\n this.discountValue = discountValue;\r\n this.fromValue = fromValue;\r\n this.toValue = toValue;\r\n this.comArsamPriceFromSaleUnitBeforDiscount = comArsamPriceFromSaleUnitBeforDiscount;\r\n this.comStorePriceFromSaleUnitBeforDiscount = comStorePriceFromSaleUnitBeforDiscount;\r\n this.maximumUnitSalePriceAfterDiscount = maximumUnitSalePriceAfterDiscount;\r\n this.discountPriceFromMaximumUnitSalePriceAfterDiscount = discountPriceFromMaximumUnitSalePriceAfterDiscount;\r\n this.approvedDiscountValuePercent = approvedDiscountValuePercent;\r\n this.approvedDiscountValuePrice = approvedDiscountValuePrice;\r\n this.arsamBaseCommissionAfterDiscount = arsamBaseCommissionAfterDiscount;\r\n this.storeBaseCommissionAfterDiscount = storeBaseCommissionAfterDiscount;\r\n\r\n }\r\n public rowNumber: number;\r\n public productCode: string;\r\n public productName?: string;\r\n public priceChangeKindId: number;\r\n public priceChangeKindName?: string;\r\n public productUnit?: string;\r\n public productCount?: number;\r\n public priceChangeLastDate: Date;\r\n public supplierPrice: number;\r\n public commissionProfitPercentage: number;\r\n public salePrice: number;\r\n public pyear: number;\r\n public moneyCode: number;\r\n //public moneyBase: number;\r\n public comdArsam: number;\r\n public comdStore: number; \r\n public combaseArsam: number;\r\n public combaseStore: number;\r\n public comActive: boolean;\r\n public discountDocumentId: number;\r\n public discountDocumentDate: Date;\r\n public retailStoreId?: number;\r\n public fromDateTime: Date;\r\n public toDateTime: Date;\r\n public discountKindId: string;\r\n public discountApplyId: string;\r\n public discountAmountId: string;\r\n public comment: string;\r\n public status: boolean;\r\n public discountValue: number;\r\n public fromValue: number;\r\n public toValue: number;\r\n public comArsamPriceFromSaleUnitBeforDiscount?: number;\r\n public comStorePriceFromSaleUnitBeforDiscount?: number;\r\n public maximumUnitSalePriceAfterDiscount?: number;\r\n public discountPriceFromMaximumUnitSalePriceAfterDiscount?: number;\r\n public approvedDiscountValuePercent?: number;\r\n public approvedDiscountValuePrice?: number;\r\n public arsamBaseCommissionAfterDiscount?: number;\r\n public storeBaseCommissionAfterDiscount?: number;\r\n\r\n} \r\n","export class CustomerClub {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(customerID?: number, customerName?: string, customerAddress?: string, customerMobile?: string,\n customerCMainCode?: number, customerCSubCode?: number, customerNationalCode?: string) {\n this.customerID =customerID;\n this.customerName = customerName; \n //this.customerLastName = customerLastName;\n this.customerAddress = customerAddress;\n this.customerMobile = customerMobile;\n this.customerCMainCode = customerCMainCode;\n this.customerCSubCode = customerCSubCode;\n this.customerNationalCode = customerNationalCode;\n\n }\n public customerID: number;\n public customerName: string; \n public customerAddress: string;\n public customerMobile: string;\n public customerCMainCode: number;\n public customerCSubCode: number;\n public customerNationalCode: string;\n\n\n\n}\n","\n\nexport class DepoAssignmentProductDetail {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(DAPDYear?: number, DAPDCode?: number, DAPDDCCode?: string, DAPDDepoCode?: string, DAPDUnitProduct?: number, DAPDASSCount?: number, DAPDDesc?: string\n , DAPDForPerInvoice?: number\n , DAPDForInvoice?: number\n , DAPDPrice?: number\n , DAPDPricePersonel?: number\n , DAPDPPriceEnergy?: number\n , DAPDPriceEstehlak?: number\n , DAPDPriceMali?: number\n , DADPriceSale?: number, BarCode?: string\n ) {\n this.DAPDYear = DAPDYear;\n this.DAPDCode = DAPDCode;\n this.DAPDDCCode = DAPDDCCode;\n this.DAPDDepoCode = DAPDDepoCode;\n this.DAPDUnitProduct = DAPDUnitProduct;\n this.DAPDASSCount = DAPDASSCount;\n this.DAPDDesc = DAPDDesc;\n this.DAPDForPerInvoice = DAPDForPerInvoice;\n this.DAPDForInvoice = DAPDForInvoice;\n this.DAPDPrice = DAPDPrice;\n this.DAPDPricePersonel = DAPDPricePersonel;\n this.DAPDPPriceEnergy = DAPDPPriceEnergy;\n this.DAPDPriceEstehlak = DAPDPriceEstehlak;\n this.DAPDPriceMali = DAPDPriceMali;\n this.DADPriceSale = DADPriceSale;\n this.barCode = BarCode;\n\n }\n public DAPDYear: number;\n public DAPDCode: number;\n public DAPDDCCode: string;\n public DAPDDepoCode: string;\n public DAPDUnitProduct: number;\n public DAPDASSCount: number;\n public DAPDDesc: string;\n public DAPDForPerInvoice: number;\n public DAPDForInvoice: number;\n public DAPDPrice: number;\n public DAPDPricePersonel: number;\n public DAPDPPriceEnergy: number;\n public DAPDPriceEstehlak: number;\n public DAPDPriceMali: number;\n public DADPriceSale: number;\n public barCode: string;\n\n\n}\n","import { Component, OnInit, ViewChild, Input, TemplateRef, ElementRef } from '@angular/core';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport * as moment from 'jalali-moment';\r\nimport { error } from 'jquery';\r\nimport { Router } from '@angular/router';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { WareHouseResult } from '../../models/WareHouseResult.model';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { View_BarcodeInDepo } from '../../models/View_BarcodeInDepo.model';\r\nimport { Clipboard } from '@angular/cdk/clipboard';\r\n\r\n\r\n@Component({\r\n selector: 'warehousestore-info-barcodes',\r\n templateUrl: './warehousestore-info-barcodes.component.html'\r\n})\r\nexport class WarehouseStoreInfoBarcodesComponent {\r\n\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n\r\n public isEditMode = true;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public formResetToggle = true;\r\n columns: any[] = [];\r\n group = '';\r\n\r\n public depocode: string = \"\";\r\n public productcode: string = \"\";\r\n public productname: string = \"\";\r\n public productUOM: string = \"\";\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public WareHouseResultObj: WareHouseResult = new WareHouseResult();\r\n public ListBarcodesObj: View_BarcodeInDepo[] = [];\r\n\r\n rowsCache: View_BarcodeInDepo[] = [];\r\n rows: View_BarcodeInDepo[] = [];\r\n public count: number;\r\n loadingIndicator: boolean;\r\n\r\n serverDate: Date;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('copyBarcode') copyBarcode: ElementRef;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private translationService: AppTranslationService,\r\n private authService: AuthService,\r\n private myCompanyService: MyCompanyService,\r\n private myaccountService: MyAccountService,\r\n private clipboard: Clipboard) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n this.LoadForm();\r\n }\r\n\r\n LoadForm() {\r\n //const gT = (key: string) => this.translationService.getTranslation(key);\r\n //this.columns = [\r\n // {\r\n // prop: 'index', name: 'ردیف', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false\r\n // },\r\n // {\r\n // prop: 'barCode', name: gT('بارکد'), width: 500\r\n // }\r\n //];\r\n //this.columns111 = [\r\n // {\r\n // prop: 'index', name: 'ردیف', width: 50, cellTemplate: this.indexTemplate,\r\n // canAutoResize: false, summaryFunc: cells => this.DetailSummery(cells)\r\n // },\r\n // {\r\n // prop: 'barCode', name: gT('بارکد'), width: 500,\r\n // summaryFunc: cells => this.SumMoney(cells)\r\n // }\r\n //];\r\n //this.columns.push({ name: '', width: 160, resizeable: false, cellTemplate: this.actionsTemplate, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n }\r\n loadBarcoded() {\r\n this.myaccountService.GetBarcodesProductCodeSelect(this.depocode, this.productcode, Number(this.authService.currentUser.phoneNumber)).subscribe(results => this.GetBarcodesProductCodeSelectSuccess(results), error => this.myCompanyService.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private GetBarcodesProductCodeSelectSuccess(list: View_BarcodeInDepo[]) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n var count = 0;\r\n list.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1;\r\n count = count + 1;\r\n });\r\n this.rowsCache = [...list];\r\n this.rows = list;\r\n this.count = count;\r\n } \r\n reset() { \r\n this.rows = [];\r\n this.count = 0;\r\n this.isEditMode = false;\r\n this.sPIPartCode = 0;\r\n }\r\n resetData() {\r\n this.reset();\r\n this.LoadForm();\r\n }\r\n\r\n copyToClipboard(row: any) {\r\n this.alertService.showMessage('ذخیره شد', 'سریال کالا در حافظه شما ذخیره شد.', MessageSeverity.success)\r\n this.clipboard.copy(row.barCode);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
کد کالا: {{productcode}}
\r\n
\r\n
\r\n
\r\n
\r\n
واحد کالا: {{productUOM}}
\r\n
\r\n
\r\n
\r\n
\r\n
نام کالا: {{productname}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n کپی \r\n \r\n \r\n \r\n \r\n \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 { ImageFile } from './../models/ImageFile';\r\n// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, Subject, forkJoin } from 'rxjs';\r\nimport { mergeMap, tap } from 'rxjs/operators';\r\nimport { AccountEndpoint } from './account-endpoint.service';\r\nimport { AuthService } from './auth.service';\r\nimport { User } from '../models/user.model';\r\nimport { Role } from '../models/role.model';\r\nimport { Permission, PermissionValues } from '../models/permission.model';\r\nimport { UserEdit } from '../models/user-edit.model';\r\nimport { SaleCustomer } from '../models/SaleCustomer.model';\r\nimport { group } from '../models/group.model';\r\nimport { Ostan } from '../models/Ostan.model';\r\nimport { City } from '../models/City.model';\r\nimport { DepoCode } from '../models/DepoCode.model';\r\nimport { Depos1 } from '../models/Depos1.model';\r\nimport { PreInvoice } from '../models/PreInvoice.model';\r\nimport { SalePreInvoiceForContracts } from '../models/SalePreInvoiceForContracts.model';\r\nimport { SalePreInvoiceForContractProduct } from '../models/SalePreInvoiceForContractProduct.model';\r\nimport { HesabKindBanks } from '../models/HesabKindBanks.model';\r\nimport { SaleBankAccounts } from '../models/SaleBankAccounts.model';\r\nimport { SaleReceipt } from '../models/SaleReceipts/SaleReceipt.model';\r\nimport { SaleNewContract } from '../models/SaleNewContract.model';\r\nimport { ContractProduct } from '../models/ContractProduct.model';\r\nimport { SaleOrders } from '../models/SaleOrders.model';\r\nimport { ReportAll } from '../models/ReportAll.model';\r\nimport { ReportAllSite } from '../models/ReportAllSite.model';\r\nimport { SaleSendProduct } from '../models/SaleSendProduct.model';\r\nimport { SaleSubReceipt } from '../models/SaleReceipts/SaleSubReceipt.model';\r\nimport { PreInvoiceContract } from '../models/PreInvoiceContract.model';\r\nimport { PubCarKind } from '../models/PubCarKind.model';\r\nimport { PubCar } from '../models/PubCar.model';\r\nimport { PubDrivers } from '../models/PubDrivers.model';\r\nimport { SaleSubOrders } from '../models/SaleSubOrders.model';\r\nimport { SaleSubSendProduct } from '../models/SaleSubSendProduct.model';\r\nimport { SaleLoadingCommand } from '../models/SaleLoadingCommand.model';\r\nimport { SaleSubLoadingCommands } from '../models/SaleSubLoadingCommands.model';\r\nimport { SaleLoadingSelcetForScanners } from '../models/SaleLoadingSelcetForScanners.model';\r\nimport { SaleLoadingCommandBarCode } from '../models/SaleLoadingCommandBarCode.model';\r\nimport { SerialProduct } from '../models/SerialProduct.model';\r\nimport { VMSelectSubOrder } from '../models/VMSelectSubOrder.model';\r\nimport { VMSaleLoading } from '../models/VMSaleLoading.model';\r\nimport { VMSubSendProduct } from '../models/VMSubSendProduct.model';\r\nimport { SaleSubReceiptSelect } from '../models/SaleSubReceiptSelect.model';\r\nimport { VMDepoAssignmentProductDetailSelectForUpdate } from '../models/VMDepoAssignmentProductDetailSelectForUpdate.model';\r\nimport { VMDepoRecieptTemporaryNewSelectForPermanent } from '../models/VMDepoRecieptTemporaryNewSelectForPermanent.model';\r\nimport { SalePreInvoiceForContractProductSelect } from '../models/SalePreInvoiceForContractProductSelect.model';\r\nimport { RepresentCode } from '../models/RepresentCode.model';\r\nimport { HesabTafzili } from '../models/HesabTafzili.model';\r\nimport { remindWithVouchers } from '../models/remindWithVouchers.model';\r\nimport { DepoTarazNewResult } from '../models/DepoTarazNewResult.model';\r\nimport { DepoRecieptTemporaryBarCodeSelectResult } from '../models/DepoRecieptTemporaryBarCodeSelectResult';\r\nimport { DepoRecieptPermanent } from '../models/DepoRecieptPermanent.model';\r\nimport { DepoRecieptPermanentDetail } from '../models/DepoRecieptPermanentDetail.model';\r\nimport { DepoRecieptPermanentBarCode } from '../models/DepoRecieptPermanentBarCode.model';\r\nimport { GetDepoAssignmentWithSerialResult } from '../models/GetDepoAssignmentWithSerialResult.model';\r\nimport { DepoRevertToDepoCustomer } from '../models/DepoRevertToDepoCustomer.model';\r\nimport { DepoRevertToDepoCustomerDetail } from '../models/DepoRevertToDepoCustomerDetail.model';\r\nimport { ShowDepoAssignment } from '../models/ShowDepoAssignment.model';\r\nimport { PubGetCarsProperties } from '../models/PubGetCarsProperties.model';\r\nimport { RequestAssignmentDetailSelect } from '../models/RequestAssignmentDetailSelect.model';\r\nimport { Adjustments } from '../models/Adjustments.model';\r\nimport { TemprorySerials } from '../models/TemprorySerials.model';\r\nimport { DepoAssignmentProduct } from '../models/DepoAssignmentProduct.model';\r\nimport { DepoAssignmentProductNumberLoading } from '../models/DepoAssignmentProductNumberLoading.model';\r\nimport { DepoAssignmentProductDetail } from '../models/DepoAssignmentProductDetail.model';\r\nimport { DepoRecieptTemporaryNewDetailSelectForPermanentResult } from '../models/DepoRecieptTemporaryNewDetailSelectForPermanentResult.model';\r\nimport { DepoRecieptTemporaryNewSelectByCodeResult } from '../models/DepoRecieptTemporaryNewSelectByCodeResult.model';\r\nimport { ReportDebtNewResultMethod } from '../models/ReportDebtNewResultMethod.model';\r\nimport { ModelDirectory } from '../models/ModelDirectory.model';\r\nimport { SuppliersSaleByWhereResultMethod } from '../models/SuppliersSaleByWhereResultMethod.model';\r\nimport { DepoAssignment } from '../models/DepoAssignment.model';\r\nimport { DepoAssignmentDetail } from '../models/DepoAssignmentDetail.model';\r\nimport { DepoAssignmentBarCode } from '../models/DepoAssignmentBarCode.model';\r\nimport { DepoAssignment_RequestAssignment } from '../models/DepoAssignment_RequestAssignment.model';\r\nimport { DepoRecieptTemporaryNew } from '../models/DepoRecieptTemporaryNew.model';\r\nimport { DepoRecieptTemporaryDetailNew } from '../models/DepoRecieptTemporaryDetailNew.model';\r\nimport { DepoRelreciepAssignmen } from '../models/DepoRelreciepAssignmen.model';\r\nimport { DepoRecieptTemporaryBarCode } from '../models/DepoRecieptTemporaryBarCode.model';\r\nimport { SaleBankAccountsView } from '../models/SaleBankAccountsView.model';\r\nimport { ProductSupliesDealer } from '../models/ProductSupliesDealer.model';\r\nimport { DepoProductUnit } from '../models/DepoProductUnit.model';\r\nimport { SDCodeClass } from '../models/SDCodeClass.model';\r\nimport { DepoCodeArsam } from '../models/DepoCodeArsam.model';\r\nimport { SupliesDealer } from '../models/SupliesDealer.model';\r\nimport { SalePriceKind } from '../models/SalePriceKind.model';\r\nimport { DepoCodeDealer } from '../models/DepoCodeDealer.model';\r\nimport { SupliesDealerCommission } from '../models/SupliesDealerCommission.model';\r\nimport { SupliesDealerMoney } from '../models/SupliesDealerMoney.model';\r\nimport { GetDepoByCommissionMoney } from '../models/GetDepoByCommissionMoney.model';\r\nimport { GetDepoByCommissionMoneyAccept } from '../models/GetDepoByCommissionMoneyAccept.model';\r\nimport { SalePrice } from '../models/SalePrice.model';\r\nimport { SupliesOrderNewSelectResult } from '../models/SupliesOrderNewSelectResult.model';\r\nimport { SupliesContractReport } from '../models/SupliesContractReport.model';\r\nimport { SupliesContractReportMoneySite } from '../models/SupliesContractReportMoneySite.model';\r\nimport { DepoAssignmentProductBarCode } from '../models/DepoAssignmentProductBarCode.model';\r\nimport { ReportDebtNewResultGroupMethod } from '../models/ReportDebtNewResultGroupMethod.model';\r\nimport { RequestInvoice } from '../models/RequestInvoice.model';\r\nimport { RequestInvoiceProduct } from '../models/RequestInvoiceProduct.model';\r\nimport { RequestInvoiceProductBarCode } from '../models/RequestInvoiceProductBarCode.model';\r\nimport { RequestInvoiceByMoney } from '../models/RequestInvoiceByMoney.model';\r\nimport { DepoRialReceipt } from '../models/DepoRialReceipt.model';\r\nimport { CheckDepoRecieptPermanentOnDepoRecieptTemporaryNewResult } from '../models/CheckDepoRecieptPermanentOnDepoRecieptTemporaryNewResult.model';\r\nimport { SupliesOrderRelationReciept } from '../models/SupliesOrderRelationReciept.model';\r\nimport { ProductSupliesDealerImage } from '../models/ProductSupliesDealerImage.model';\r\nimport { DepoCodeNew } from '../models/DepoCodeNew.model';\r\nimport { View_BarcodeInDepo } from '../models/View_BarcodeInDepo.model';\r\nimport { CustomerClub } from '../models/CustomerClub.model';\r\nimport { CustomerSalePreInvoice } from '../models/CustomerSalePreInvoice.model';\r\nimport { SaleInvoice } from '../models/SaleInvoice.model';\r\nimport { SaleInvoiceDetail } from '../models/SaleInvoiceDetail.model';\r\nimport { SaleContractToInvoiceSelectResult } from '../models/SaleContractToInvoiceSelectResult.model';\r\nimport { RemindClass } from '../models/RemindClass.model';\r\nimport { Address } from './../models/Address';\r\nimport { GetDealerSaleResult } from '../models/GetDealerSaleResult.model';\r\nimport { GetDealerSaleGroupResult } from '../models/GetDealerSaleGroupResult.model';\r\nimport { VMSelectSubOrder_Order } from '../models/VMSelectSubOrder_Order.model';\r\nimport { VMSaleNewContract } from '../models/VMSaleNewContract.model';\r\nimport { VMSelectSalePreInvoiceForContractProduct_BarCode } from '../models/VMSelectSalePreInvoiceForContractProduct_BarCode.model';\r\nimport { VMSelectSaleSubOrder_BarCode } from '../models/VMSelectSaleSubOrder_BarCode.model';\r\nimport { VMSelectSaleSubSendProduct_BarCode } from '../models/VMSelectSaleSubSendProduct_BarCode.model';\r\nimport { VMSelectSaleSubLoadingCommand_BarCode } from '../models/VMSelectSaleSubLoadingCommand_BarCode.model';\r\nimport { VMSelectDepoAssignmentProductDetail_BarCode } from '../models/VMSelectDepoAssignmentProductDetail_BarCode.model';\r\nimport { SuplieresCommissionHistoryReport } from '../models/SuplieresCommissionHistoryReport.model';\r\nimport { IInstallments } from '../models/installments.model';\r\nimport { IRequestRevertFromSale } from '../models/requestRevertFromSale';\r\nimport { IDepoViewDescription } from '../models/DepoViewDescription.model';\r\nimport { IDepoRevertToDepo, IDepoRevertToDepoDetailBarcode } from '../models/DepoRevertToDepo.model';\r\nimport { IDepoUnitUserSelect } from '../models/DepoUnitUserSelect.model';\r\nimport { ISaleSelectAllLoadedCountRegist } from '../models/SaleSelectAllLoadedCountRegist';\r\nimport { CustomerClubList } from '../models/CustomerClubList.model';\r\nimport { ISalePartitions } from '../models/SalePartitions.model';\r\nimport { GetInvoiceReport } from '../models/GetInvoiceReport';\r\nimport { RequestInvoiceModel } from '../models/RequestInvoices.model';\r\nimport { GetSaleSelectAllLoadedCountRegistDetail } from '../models/LoadedCountRegisterDetail.model'\r\nimport { IDepoCodes } from '../models/DepoCodes.model';\r\nexport type RolesChangedOperation = 'add' | 'delete' | 'modify';\r\nexport interface RolesChangedEventArg { roles: Role[] | string[]; operation: RolesChangedOperation; }\r\n\r\n@Injectable()\r\nexport class AccountService {\r\n public static readonly roleAddedOperation: RolesChangedOperation = 'add';\r\n public static readonly roleDeletedOperation: RolesChangedOperation = 'delete';\r\n public static readonly roleModifiedOperation: RolesChangedOperation = 'modify';\r\n public CMainCode: number;\r\n private _rolesChanged = new Subject();\r\n\r\n constructor(private authService: AuthService,\r\n private accountEndpoint: AccountEndpoint) { }\r\n\r\n getUser(userId?: string) {\r\n return this.accountEndpoint.getUserEndpoint(userId);\r\n }\r\n\r\n get_User(userId?: string) {\r\n return this.accountEndpoint.getUser_Endpoint(userId);\r\n }\r\n\r\n getCMainCode(userId?: string) {\r\n return this.accountEndpoint.GetCMainCodeEndpoint(userId);\r\n }\r\n\r\n getSDCode(userId?: string) {\r\n return this.accountEndpoint.GetSDCodeEndpoint(userId);\r\n }\r\n\r\n GetAssigneSaler(CMainCode?: number) {\r\n return this.accountEndpoint.GetAssigneSalerEndpoint(CMainCode);\r\n }\r\n\r\n GetSBACode(CMainCode?: number) {\r\n return this.accountEndpoint.GetSBAEndpoint(CMainCode);\r\n }\r\n\r\n UpdateCustomerClub(customerClub: CustomerClub) {\r\n return this.accountEndpoint.UpdateCustomerClubEndpoint(customerClub);\r\n }\r\n UpdateAddress(address: Address) {\r\n return this.accountEndpoint.UpdateAddressEndpoint(address);\r\n }\r\n\r\n newCustomerClub(customerClub: CustomerClub) {\r\n return this.accountEndpoint.saveCustomerClubEndpoint(customerClub);\r\n }\r\n newAddress(Address: Address) {\r\n return this.accountEndpoint.saveAddressEndpoint
(Address);\r\n }\r\n GetNewCustomerClubID() {\r\n return this.accountEndpoint.GetNewCustomerClubIDEndPoint();\r\n }\r\n\r\n getAddresses(customerID: number) {\r\n return this.accountEndpoint.getAddressesEndpoint(customerID);\r\n }\r\n\r\n GetSupliesContractReport(PKCode?: number) {\r\n return this.accountEndpoint.GetSupliesContractReportEndpoint(PKCode);\r\n }\r\n GetSupliesContractReportWithDealerCode(PKCode?: number, SODealerCode?: string) {\r\n return this.accountEndpoint.GetSupliesContractReportEndpointWithDealerCode(PKCode, SODealerCode);\r\n }\r\n GetSupliesContractReportWithDealerCode_ProductCode(PKCode?: number, SODealerCode?: string, ProductCode?: string) {\r\n return this.accountEndpoint.GetSupliesContractReportEndpointWithDealerCode_ProductCode(PKCode, SODealerCode, ProductCode);\r\n }\r\n GetRequestInvoiceByGroupResult(REQDealercode: string, requestType: number) {\r\n return this.accountEndpoint.GetRequestInvoiceByGroupResultEndPoint(REQDealercode, requestType);\r\n }\r\n\r\n\r\n GetSupliesContractReportMoneySite(PKCode?: number, SODealerCode?: string) {\r\n return this.accountEndpoint.GetSupliesContractReportMoneySiteEndpoint(PKCode, SODealerCode);\r\n }\r\n\r\n GetAcceptContract(NCPartCode: number, NCSubCustomerCode: number) {\r\n return this.accountEndpoint.GetAcceptContractEndpoint(NCPartCode, NCSubCustomerCode);\r\n }\r\n getSuppliersSaleByWhere(SoDealercode?: string) {\r\n return this.accountEndpoint.GetSuppliersSaleByWhereResultMethodEndPoint(SoDealercode);\r\n }\r\n\r\n getSuppliersSaleByWhereGroup(SoDealercode?: string) {\r\n return this.accountEndpoint.getSuppliersSaleByWhereGroupEndPoint(SoDealercode);\r\n }\r\n\r\n\r\n getNameHeader(userId?: string) {\r\n return this.accountEndpoint.GetNameHeadEndpoint(userId);\r\n }\r\n GetNewCode(Year: number, partCode: number) {\r\n return this.accountEndpoint.GetNewCode(Year, partCode);\r\n }\r\n\r\n GetOrdernum(OContractNum: number, OContractYear: number, OPartCode: number) {\r\n return this.accountEndpoint.GetOrdernumEndpoint(OContractNum, OContractYear, OPartCode);\r\n }\r\n\r\n GetDirectory() {\r\n return this.accountEndpoint.GetDirectoryEndpoint();\r\n }\r\n\r\n GetTaxPriceTotal(year: number, Price: number) {\r\n return this.accountEndpoint.GetTaxPriceTotalEndpoint(year, Price);\r\n }\r\n GetStatusSerial(serial: string, depCode: string, activeYear: number) {\r\n return this.accountEndpoint.GetStatusSerialEndpoint(serial, depCode, activeYear);\r\n }\r\n\r\n GetStatusSerialEndpointBySerial(serial: string, productCode: string, depoCode: string, activeYear: number) {\r\n return this.accountEndpoint.GetStatusSerialEndpointBySerial(serial, productCode, depoCode, activeYear);\r\n }\r\n\r\n GetRSerialCheck(RSerial: string) {\r\n return this.accountEndpoint.GetRSerialCheckEndpoint(RSerial);\r\n }\r\n\r\n CheckExsitInvoiceAss(SIAAssignmentCode: number, SIAYear: number, SIADepoCode: number) {\r\n return this.accountEndpoint.CheckExsitInvoiceAssEndpoint(SIAAssignmentCode, SIAYear, SIADepoCode);\r\n }\r\n\r\n CheckSerialRevert(RSerial: string) {\r\n return this.accountEndpoint.CheckSerialRevertEndpoint(RSerial);\r\n }\r\n\r\n GetStatusNUmber(NCYear: number, NCPartCode: number, NCCode: number) {\r\n return this.accountEndpoint.GetStatusNUmber(NCYear, NCPartCode, NCCode);\r\n }\r\n GetSaleNewContract_PrintInvoice(NCYear: number, NCPartCode: number, NCCode: number) {\r\n return this.accountEndpoint.GetSaleNewContract_PrintInvoice(NCYear, NCPartCode, NCCode);\r\n }\r\n GetNewCarsCode() {\r\n return this.accountEndpoint.GetNewCarsCodeEndPoint();\r\n }\r\n\r\n GetNewDriverCode() {\r\n return this.accountEndpoint.GetNewDriverCodeEndPoint();\r\n }\r\n\r\n GetNewCodeLoading(Year: number) {\r\n return this.accountEndpoint.GetNewCodeLoadingEndPoint(Year);\r\n }\r\n\r\n\r\n GetDapCodeProduct(DAPYear: number, DAPLCNum: number, DAPDepoCode: string) {\r\n return this.accountEndpoint.GetDapCodeProductEndPoint(DAPYear, DAPLCNum, DAPDepoCode);\r\n }\r\n\r\n\r\n GetCodeSPICode(NCCode: number, NCYear: number, SPIPartCode: number) {\r\n return this.accountEndpoint.GetCodeSPICodeEndPoint(NCCode, NCYear, SPIPartCode);\r\n }\r\n\r\n\r\n GetRNum(RYear: number, RPartCode: number, RContractCode: number) {\r\n return this.accountEndpoint.GetRNumEndPoint(RYear, RPartCode, RContractCode);\r\n }\r\n\r\n\r\n DeleteTemprory() {\r\n return this.accountEndpoint.DeleteTemprorySerialEndPoint();\r\n }\r\n\r\n GetNewCodeOrder(Year: number, partCode: number) {\r\n return this.accountEndpoint.GetNewCodeOrder(Year, partCode);\r\n }\r\n\r\n GetNewCodeDepoRecieptTemporary(DRTYear: number, DRTDepCode: number) {\r\n return this.accountEndpoint.GetNewCodeDepoRecieptTemporaryEndPoint(DRTYear, DRTDepCode);\r\n }\r\n\r\n GetGetNewCodeRequestInvoiceEndPoint(REQYear: number, REQDealercode: number) {\r\n return this.accountEndpoint.GetGetNewCodeRequestInvoiceEndPoint(REQYear, REQDealercode);\r\n }\r\n\r\n\r\n\r\n GetOOrderNum(OContractNum: number, OPartCode: number, OYear: number) {\r\n return this.accountEndpoint.GetOOrderNumEndPoint(OContractNum, OPartCode, OYear);\r\n }\r\n\r\n GetNewCodeSaleSendProduct(Year: number, partCode: number) {\r\n return this.accountEndpoint.GetNewCodessp(Year, partCode);\r\n }\r\n\r\n GetNewCodeDepoAssignment(DAYear: number, DADepCode: number) {\r\n return this.accountEndpoint.GetNewCodeDepoAssignmentEndPoint(DAYear, DADepCode);\r\n }\r\n\r\n GetNewCodeCustomerClub() {\r\n return this.accountEndpoint.GetNewCodeCustomerClubUrlEndPoint();\r\n }\r\n\r\n GetNewCodeInvoice(year: number) {\r\n return this.accountEndpoint.GetNewCodeInvoiceEndPoint(year);\r\n }\r\n\r\n\r\n GetNewCodeContract(Year: number, partCode: number) {\r\n return this.accountEndpoint.GetNewCodeContract(Year, partCode);\r\n }\r\n\r\n\r\n GetNewCodesaleprice(PYear: number, PKind: number) {\r\n return this.accountEndpoint.GetNewCodesalepriceEndPoint(PYear, PKind);\r\n }\r\n\r\n\r\n\r\n GetNewCodeAssignmentProducts(DAPYear: number, DAPDepCode: string) {\r\n return this.accountEndpoint.GetNewCodeassignmentLoadingEndPoint(DAPYear, DAPDepCode);\r\n }\r\n\r\n GetNewCodeDepoRecieptPermanent(Year: number, DRPDepCode: number) {\r\n return this.accountEndpoint.GetNewCodeDepoRecieptPermanentEndPoint(Year, DRPDepCode);\r\n }\r\n\r\n GetNewCodeRecipt(Year: number, partCode: number, kind: number) {\r\n return this.accountEndpoint.GetNewCodeRecipt(Year, partCode, kind);\r\n }\r\n\r\n\r\n GetNewCodeRevert(DRTDCYear: number, DRTDCDepCode: number) {\r\n return this.accountEndpoint.GetNewCodeRevertEndPoint(DRTDCYear, DRTDCDepCode);\r\n }\r\n\r\n getCSubCode(userId?: string) {\r\n return forkJoin(\r\n this.accountEndpoint.GetCMainCodeEndpoint(userId),\r\n this.accountEndpoint.GetCSubCodeEndpoint(userId)\r\n );\r\n }\r\n\r\n getHesabKind() {\r\n return this.accountEndpoint.GetHesabKind();\r\n }\r\n\r\n getBankAccount(TypeNumber: number) {\r\n return this.accountEndpoint.GetBankAccount(TypeNumber);\r\n }\r\n\r\n\r\n GetDealerSaleResultsMethod(DCDealerCode?: string) {\r\n return this.accountEndpoint.GetDealerSaleResultsMethodEndpoint(DCDealerCode);\r\n }\r\n\r\n getDealerSaleGroupResultsMethod(DCDealerCode: string) {\r\n return this.accountEndpoint.getDealerSaleGroupResultsMethodEndPoint(DCDealerCode);\r\n }\r\n\r\n\r\n\r\n\r\n GetSaleLoadingSelectForScaner(loadNumber: number, year: number) {\r\n return this.accountEndpoint.GetSaleLoadingSelectForScanerEndPoint(loadNumber, year);\r\n }\r\n\r\n GetLoadingDetail(loadNumber: number, year: number) {\r\n return this.accountEndpoint.GetLoadingDetailEndPoint(loadNumber, year);\r\n }\r\n\r\n getNewContract(NCYear: number, NCPartCode: number, NCCode: number, NCCustomerCode: number) {\r\n return this.accountEndpoint.GetSaleNewContract(NCYear, NCPartCode, NCCode, NCCustomerCode);\r\n }\r\n\r\n SaleNewContractSelectList(Year: number, PartCode: number, Code: number, Status_ID: number, CustomerCode: number) {\r\n return this.accountEndpoint.SaleNewContractSelectListEndpoint(Year, PartCode, Code, Status_ID, CustomerCode);\r\n }\r\n\r\n GetCustomerAddress(Cmain: number) {\r\n return this.accountEndpoint.GetCustomerAddressEndpoint(Cmain);\r\n }\r\n\r\n GetRequestInvoiceProduct(REQPYear: number, REQPCode: number, REQPDealercode: string, RequestInvoiEnum: number) {\r\n return this.accountEndpoint.GetRequestInvoiceProductEndpoint(REQPYear, REQPCode, REQPDealercode, RequestInvoiEnum);\r\n }\r\n\r\n GetCountProductDealerCode(DCDealerCode: string) {\r\n return this.accountEndpoint.GetCountProductDealerCodeEndpoint(DCDealerCode);\r\n }\r\n\r\n GetAllReportNew(year: number, partCode: number, code: number, status_ID: number, CustomerCode: number) {\r\n return this.accountEndpoint.GetAllReportmethod(year, partCode, code, status_ID, CustomerCode);\r\n }\r\n\r\n GetAllReportSite(year: number, partCode: number, code: number, status_ID: number, CustomerCode: number, fromDate?: string, toDate?: string) {\r\n return this.accountEndpoint.GetAllReportSiteEndPoint(year, partCode, code, status_ID, CustomerCode, fromDate, toDate);\r\n }\r\n\r\n GetAllPreInvoiceSelectList(sPIPYear: number, sPIPPartCode: number, sPIPCode: number, sPIPRevesion: number) {\r\n return this.accountEndpoint.GetAllPreInvoiceSelectListEndPoint(sPIPYear, sPIPPartCode, sPIPCode, sPIPRevesion);\r\n }\r\n\r\n GetDepoRecieptTemporaryNewDetail(dRTYear: number, dRTDepCode: string, dRTCode: number, dRTTCode: number) {\r\n return this.accountEndpoint.GetDepoRecieptTemporaryNewDetailEndpoint(dRTYear, dRTDepCode, dRTCode, dRTTCode);\r\n }\r\n\r\n GetCustomerByCMainCode(CMainCode: number, CSubcode: number) {\r\n return this.accountEndpoint.GetCustomerByCMainCodeEndpoint(CMainCode, CSubcode);\r\n }\r\n\r\n GetDepoRecieptTemporaryBarCode(DRPBYear: number, DRPBCode: number, DRPBDepCode: string, DRTBProductCode: string) {\r\n return this.accountEndpoint.GetDepoRecieptTemporaryBarCodeEndPoint(DRPBYear, DRPBCode, DRPBDepCode, DRTBProductCode);\r\n }\r\n\r\n GetDepoRecieptTemporaryBarCodeCheckSerial(DRPBYear: number, DRPBCode: number, DRPBDepCode: string, DRTBBarCode: string) {\r\n return this.accountEndpoint.GetDepoRecieptTemporaryBarCodeCheckSerialEndPoint(DRPBYear, DRPBCode, DRPBDepCode, DRTBBarCode);\r\n }\r\n\r\n GetProductCodeWithProductCode(depoCode: string, barCode: string) {\r\n return this.accountEndpoint.GetProductCodeWithProductCodeEndPoint(depoCode, barCode);\r\n }\r\n\r\n GetProductCodeWithBarcode(depoCode: string, barCode: string) {\r\n return this.accountEndpoint.GetProductCodeWithBarcodeEndPoint(depoCode, barCode);\r\n }\r\n\r\n GetNewAssignmentLoading(rowsSelectDepoAssignmentProductDetailBarCode: VMSelectDepoAssignmentProductDetail_BarCode) {\r\n return this.accountEndpoint.NewAssignmentLoadingEndPoint(rowsSelectDepoAssignmentProductDetailBarCode);\r\n }\r\n\r\n GetNewAssignmentLoadingNextAccept(rowsSelectSubOrderOrderProduct: VMSelectSubOrder_Order) {\r\n return this.accountEndpoint.NewAssignmentLoadingNextAcceptEndPoint(rowsSelectSubOrderOrderProduct);\r\n }\r\n\r\n GetNewPreInvoice(rowsSelectSalePreInvoiceForContractProductBarCode: VMSelectSalePreInvoiceForContractProduct_BarCode) {\r\n return this.accountEndpoint.NewPreInvoiceEndPoint(rowsSelectSalePreInvoiceForContractProductBarCode);\r\n }\r\n\r\n InsertNewPreInvoice(rowsSelectSalePreInvoiceForContractProductBarCode: VMSelectSalePreInvoiceForContractProduct_BarCode) {\r\n return this.accountEndpoint.InsertNewPreInvoiceEndPoint(rowsSelectSalePreInvoiceForContractProductBarCode);\r\n }\r\n\r\n GetCustomerClub(CmainCode: number, CsubCode: number) {\r\n return this.accountEndpoint.getCustomerClubEndPoint(CmainCode, CsubCode);\r\n }\r\n\r\n GetNewSaleOrder(rowsSelectSaleSubOrderBarCode: VMSelectSaleSubOrder_BarCode) {\r\n return this.accountEndpoint.NewSaleOrderEndPoint(rowsSelectSaleSubOrderBarCode);\r\n }\r\n\r\n GetNewSaleSendProduct(rowsSelectSaleSubSendProductBarCode: VMSelectSaleSubSendProduct_BarCode) {\r\n return this.accountEndpoint.NewSaleSendProductEndPoint(rowsSelectSaleSubSendProductBarCode);\r\n }\r\n\r\n GetNewSaleLoadingCommand(rowsSelectSaleSubLoadingCommandBarCode: VMSelectSaleSubLoadingCommand_BarCode) {\r\n return this.accountEndpoint.NewSaleLoadingCommandEndPoint(rowsSelectSaleSubLoadingCommandBarCode);\r\n }\r\n\r\n GetNewAssignmentLoadingNextPayment(year: number, contractCode: number, SPICode: number) {\r\n return this.accountEndpoint.NewAssignmentLoadingNextPaymentEndPoint(year, contractCode, SPICode);\r\n }\r\n\r\n GetNewAssignmentLoadingNextSendProduct(rowsSelectSaleSubLoadingCommandBarCode: VMSelectSaleSubLoadingCommand_BarCode) {\r\n return this.accountEndpoint.GetNewAssignmentLoadingNextSendProductEndPoint(rowsSelectSaleSubLoadingCommandBarCode);\r\n }\r\n\r\n CreateContractForPerInvoiceProducts(sPIYear: number, sPIPartCode: number, sPICode: number, currentYear: number, IsAccepted: boolean) {\r\n return this.accountEndpoint.CreateContractForPerInvoiceProductsEndPoint(sPIYear, sPIPartCode, sPICode, currentYear, IsAccepted);\r\n }\r\n\r\n GetDepoRecieptTemporaryDetail(dRTYear: number, dRTDepCode: string, dRTCode: number) {\r\n return this.accountEndpoint.GetDepoRecieptTemporaryDetailEndpoint(dRTYear, dRTDepCode, dRTCode);\r\n }\r\n\r\n TemprorySerialsGetAll(id: string) {\r\n return this.accountEndpoint.TemprorySerialsGetEndPoint(id);\r\n }\r\n\r\n GetLastSerialAll(LCBNum: number, LCBProductCode: string, Lcbyear: number) {\r\n return this.accountEndpoint.GetLastSerialEndPoint(LCBNum, LCBProductCode, Lcbyear);\r\n }\r\n\r\n GetDepoTarazNewResult(year: number, depCode: string, PKind: number) {\r\n return this.accountEndpoint.GetDepoTarazNewResultEndPoint(year, depCode, PKind);\r\n }\r\n\r\n GetDepoTarazNewResult2(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number) {\r\n return this.accountEndpoint.GetDepoTarazNewResult2EndPoint(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode);\r\n }\r\n\r\n GetDepoCodeDealerCode(DCDealerCode: string, PKCode: number) {\r\n return this.accountEndpoint.GetDepoCodeDealerCodeEndPoint(DCDealerCode, PKCode);\r\n }\r\n\r\n GetProductSupliesDealer(SDCode: string) {\r\n return this.accountEndpoint.GetProductSupliesDealerEndPoint(SDCode);\r\n }\r\n\r\n GetProductSupliesDealerImage(proCode: number) {\r\n return this.accountEndpoint.GetProductSupliesDealerImageEndPoint(proCode);\r\n }\r\n\r\n GetProductSupliesDealerImageFile(proCode: number) {\r\n return this.accountEndpoint.GetProductSupliesDealerImageFileEndPoint(proCode);\r\n }\r\n\r\n GetProductSupliesDealerImagefromSup(proCode: number) {\r\n return this.accountEndpoint.GetProductSupliesDealerImagefromSupEndPoint(proCode);\r\n }\r\n\r\n GetOffsetContract(AimContractCode: number, AimPartCode: number, AimContractYear: number) {\r\n return this.accountEndpoint.GetOffsetContractEndpoint(AimContractCode, AimPartCode, AimContractYear);\r\n }\r\n\r\n GetAimsetContract(OffsetContractCode: number, OffsetPartCode: number, OffsetContractYear: number) {\r\n return this.accountEndpoint.GetAimsetContractEndpoint(OffsetContractCode, OffsetPartCode, OffsetContractYear);\r\n }\r\n\r\n GetDepoRecieptPermanents(DRPYear: number, DRPDepCode: string, DRPRecieptTemp: number) {\r\n return this.accountEndpoint.GetDepoRecieptPermanentsEndPoint(DRPYear, DRPDepCode, DRPRecieptTemp);\r\n }\r\n\r\n GetAllSerial() {\r\n return this.accountEndpoint.GetAllSerialEndpoint();\r\n }\r\n\r\n getSaleCustomerKey(CMainCode: number, CSubcode: number) {\r\n return this.accountEndpoint.GetSaleCustomer(CMainCode, CSubcode);\r\n }\r\n\r\n getSaleCustomer(CMainCode: number, CSubcode: number) {\r\n return this.accountEndpoint.GetSaleCustomer(CMainCode, CSubcode);\r\n }\r\n\r\n getDepoCodeList(CMainCode: number, CSubcode: number, IdGroup: number) {\r\n return this.accountEndpoint.GetDepoCode(CMainCode, CSubcode, IdGroup);\r\n }\r\n\r\n GetSaleSelectSub(OrderNum: number, OrderYear: number, partCode: number, IsRemaind: boolean, DepCode: string) {\r\n return this.accountEndpoint.GetSaleSelectSubEndPoint(OrderNum, OrderYear, partCode, IsRemaind, DepCode);\r\n }\r\n\r\n GetSaleSelectSubBarCode(OrderNum: number, OrderYear: number, partCode: number, IsRemaind: boolean, DepCode: string) {\r\n return this.accountEndpoint.GetSaleSelectSubBarCodeEndPoint(OrderNum, OrderYear, partCode, IsRemaind, DepCode);\r\n }\r\n\r\n GetRemindWithVouchers(year?: number, partCode?: number, code?: number, status_ID?: string, NCCode?: number, CustomerCode?: number, SubCustomerCode?: number) {\r\n return this.accountEndpoint.getremindWithVouchersEndpoint(year, partCode, code, status_ID, NCCode, CustomerCode, SubCustomerCode);\r\n }\r\n\r\n GetStatusAccept(NCYear?: number, NCPartCode?: number, NCCode?: number) {\r\n return this.accountEndpoint.GetStatusAcceptEndpoint(NCYear, NCPartCode, NCCode);\r\n }\r\n\r\n UpdateRequestInvoice(REQYear?: number, REQCode?: number, REQDealercode?: string, REQTax?: number, REQAllMoney?: number, REQInvoiceNumber?: number) {\r\n return this.accountEndpoint.UpdateRequestInvoiceEndpoint(REQYear, REQCode, REQDealercode, REQTax, REQAllMoney, REQInvoiceNumber);\r\n }\r\n\r\n GetSupliesOrderNews(sOYear?: number, sOUnitBuy?: number, sOKindBuy?: boolean) {\r\n return this.accountEndpoint.GetSupliesOrderNewsEndpoint(sOYear, sOUnitBuy, sOKindBuy);\r\n }\r\n\r\n getGetReportDebtNewResultMethod(SODealerCode?: string) {\r\n return this.accountEndpoint.getGetReportDebtNewResultMethodEndpoint(SODealerCode);\r\n }\r\n\r\n getGetReportDebtNewGroupResultMethod() {\r\n return this.accountEndpoint.getGetReportDebtNewGroupResultMethodEndpoint();\r\n }\r\n\r\n getGetReportDebtNewGroupResultMethodByInvoiceNumberMethod(REQInvoiceNumber?: number) {\r\n return this.accountEndpoint.getGetReportDebtNewGroupResultMethodByInvoiceNumberEndpoint(REQInvoiceNumber);\r\n }\r\n\r\n getDepos(ID: string) {\r\n return this.accountEndpoint.GetDepos(ID);\r\n }\r\n\r\n getCustomerClub(CustomerMobile: string) {\r\n return this.accountEndpoint.GetCustomerClubWithMobileEndPoint(CustomerMobile);\r\n }\r\n\r\n getDeposOwner(ID: string) {\r\n return this.accountEndpoint.GetDeposOwner(ID);\r\n }\r\n\r\n getDeposListTaraz(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, IdGroup: number, CmainCode: number) {\r\n return this.accountEndpoint.GetDeposListTaraz(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, IdGroup, CmainCode);\r\n }\r\n\r\n getDepoTarazwithcomDetail(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number) {\r\n return this.accountEndpoint.getDepoTarazwithcomDetail(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode);\r\n }\r\n\r\n getVirtualWarehouseInventory(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number) {\r\n return this.accountEndpoint.getVirtualWarehouseInventory(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode);\r\n }\r\n\r\n\r\n\r\n GetInvoiceReportSite(ProductCode?: string, FromDate?: string, ToDate?: string, kind?: number, showVoid?: number, statuse?: number, DCDealerCode?: string) {\r\n return this.accountEndpoint.GetInvoiceReportSiteEndPoint(ProductCode, FromDate, ToDate, kind, showVoid, statuse, DCDealerCode);\r\n }\r\n\r\n getDepoTarazwithcomDetailBarcode(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number, productCode: string) {\r\n return this.accountEndpoint.getDepoTarazwithcomDetailBarcode(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode, productCode);\r\n }\r\n\r\n getDepoTarazwithcomDetailSearchScan(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, Pkind: number, CmainCode: number, productCode: string) {\r\n return this.accountEndpoint.getDepoTarazwithcomDetailSearchScan(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, Pkind, CmainCode, productCode);\r\n }\r\n\r\n getDepoTarazNewPivotDepos(year: number, usercode: number, drpRequestDateFrom: string, drpRequestDateTo: string, dcMainUnit: boolean, deliverCode: string) {\r\n return this.accountEndpoint.getDepoTarazNewPivotDepos(year, usercode, drpRequestDateFrom, drpRequestDateTo, dcMainUnit, deliverCode);\r\n }\r\n\r\n GetTarazDepoBase(Year: number, DepCode: string, usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, IdGroup: number, CmainCode: number) {\r\n return this.accountEndpoint.GetTarazDepoBaseEndPoint(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, IdGroup, CmainCode);\r\n }\r\n\r\n GetSaleBankAccountsList(sbacode: number) {\r\n return this.accountEndpoint.GetSaleBankAccountsListEndPoint(sbacode);\r\n }\r\n\r\n getSubSendProduct(Code: number, Year: number, PartCode: number) {\r\n return this.accountEndpoint.GetSendSubProductEndPoint(Code, Year, PartCode);\r\n }\r\n\r\n GetSaleSubReceiptSelect(RContractCode: number, Year: number, PartCode: number, ReceiptKind: number): Observable {\r\n return this.accountEndpoint.GetSaleSubReceiptSelectEndPoint(RContractCode, Year, PartCode, ReceiptKind);\r\n }\r\n\r\n SaleReceiptChekHesabSanad(Year: number, ReceiptCode: number, ReceiptPartCode: number, ReciptKind: number) {\r\n return this.accountEndpoint.SaleReceiptChekHesabSanadEndPoint(Year, ReceiptCode, ReceiptPartCode, ReciptKind);\r\n }\r\n\r\n GetAcceptContractCheck(Year: number, ReceiptCode: number, ReceiptPartCode: number) {\r\n return this.accountEndpoint.GetAcceptContractCheckEndPoint(Year, ReceiptCode, ReceiptPartCode);\r\n }\r\n\r\n GetAssProductList(dAPDYear: number, dAPDCode: number, dAPDDepoCode: string) {\r\n return this.accountEndpoint.GetAssProductListEndPoint(dAPDYear, dAPDCode, dAPDDepoCode);\r\n }\r\n\r\n GetDepoRecieptTemporaryList(DRTYear: number, dRTDepCode: string) {\r\n return this.accountEndpoint.GetDepoRecieptTemporaryListEndPoint(DRTYear, dRTDepCode);\r\n }\r\n\r\n GetDepoAssignmentWithSerialListEndPoint(LCBBarcode: string, LCPartCode: number, DepoCode: number) {\r\n return this.accountEndpoint.GetDepoAssignmentWithSerialListEndPoint(LCBBarcode, LCPartCode, DepoCode);\r\n }\r\n\r\n GetDepoAssignmentWithSerial(LCBBarcode: string, LCPartCode: number, DepoCode: number) {\r\n return this.accountEndpoint.GetDepoAssignmentWithSerialListEndPoint(LCBBarcode, LCPartCode, DepoCode);\r\n }\r\n\r\n\r\n GetSaleLoadingUrl(Year: number, UnitCode: string, DepoCode: number, OContractNum: number, OPartCode: number) {\r\n return this.accountEndpoint.GetSaleLoadingUrlEndPoint(Year, UnitCode, DepoCode, OContractNum, OPartCode);\r\n }\r\n\r\n GetDepoByCommissionMoney(DCDealerCode: string, PKCode: number) {\r\n return this.accountEndpoint.GetDepoByCommissionMoneyEndPoint(DCDealerCode, PKCode);\r\n }\r\n\r\n GetDepoByCommissionMoneyAccept() {\r\n return this.accountEndpoint.GetDepoByCommissionMoneyAcceptEndPoint();\r\n }\r\n\r\n GetDepoByCommissionMoneyAcceptByDCDealerCode(DCDealerCode: string) {\r\n return this.accountEndpoint.GetDepoByCommissionMoneyAcceptByDCDealerCodeEndPoint(DCDealerCode);\r\n }\r\n\r\n GetDepoAssignmentByAccept(year: number, DepCode: string) {\r\n return this.accountEndpoint.GetDepoAssignmentByAcceptEndPoint(year, DepCode);\r\n }\r\n\r\n getPreInvoices(Year: number, CMainCode: number, NCPartCode: number, ContractCode: number) {\r\n return this.accountEndpoint.GetPreInvoiceList(Year, CMainCode, NCPartCode, ContractCode);\r\n }\r\n\r\n getNewContractProduct(NCPYear: number, NCPPartCode: number, NCPCode: number, NCPRevesion: number) {\r\n return this.accountEndpoint.GetContractList(NCPYear, NCPPartCode, NCPCode, NCPRevesion);\r\n }\r\n\r\n getPreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number) {\r\n return this.accountEndpoint.getPreInvoice(SPIYear, SPIPartCode, SPICode);\r\n }\r\n\r\n DeletePreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number) {\r\n return this.accountEndpoint.DeletePreInvoice(SPIYear, SPIPartCode, SPICode);\r\n }\r\n\r\n DeleteSendProduct(SPYear: number, SPPartCode: number, SPCode: number) {\r\n return this.accountEndpoint.DeleteSendProduct(SPYear, SPPartCode, SPCode);\r\n }\r\n\r\n DeleteOrder(OYear: number, OPartCode: number, OCode: number) {\r\n return this.accountEndpoint.DeleteOrder(OYear, OPartCode, OCode);\r\n }\r\n\r\n DeleteSaleLoadingCommandBarCode(Year: number, PartCode: number, LCNum: number) {\r\n return this.accountEndpoint.DeleteSaleLoadingCommandBarCode(Year, PartCode, LCNum);\r\n }\r\n\r\n GetPreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number) {\r\n return this.accountEndpoint.GetPreInvoice(SPIYear, SPIPartCode, SPICode);\r\n }\r\n\r\n getPreInvoiceProduct(SPIPYear: number, SPIPPartCode: number, SPIPCode: number) {\r\n return this.accountEndpoint.GetPreInvoiceProduct(SPIPYear, SPIPPartCode, SPIPCode);\r\n }\r\n\r\n UpdateAccept(sPIYear: number, sPIPartCode: number, sPICode: number) {\r\n return this.accountEndpoint.SetUpdateAccept(sPIYear, sPIPartCode, sPICode);\r\n }\r\n\r\n SetUpdatePreinvoiceVoid(NCCode: number, NCYear: number, SPIPartCode: number) {\r\n return this.accountEndpoint.SetUpdatePreinvoiceVoidEndpoint(NCCode, NCYear, SPIPartCode);\r\n }\r\n\r\n UpdateProductSupliesDealer(Procode: number, DCCode: string) {\r\n return this.accountEndpoint.UpdateProductSupliesDealerEndpoint(Procode, DCCode);\r\n }\r\n\r\n ProductSupliesDealersImageInsert(ObjDepoImageAssignment: ProductSupliesDealerImage) {\r\n return this.accountEndpoint.ProductSupliesDealerImagesInsertEndpoint(ObjDepoImageAssignment);\r\n }\r\n\r\n ProductSupliesDealersImageDelete(Procode) {\r\n return this.accountEndpoint.ProductSupliesDealerImagesDeleteEndpoint(Procode);\r\n }\r\n\r\n ImageDelete(ProName) {\r\n return this.accountEndpoint.ImagesDeleteEndpoint(ProName);\r\n }\r\n\r\n ProductSupliesDealersImageFolderInsert(ObjDepoImageFolderAssignment: any, procode) {\r\n return this.accountEndpoint.ProductSupliesDealerImagesFolderInsertEndpoint(ObjDepoImageFolderAssignment, procode);\r\n }\r\n\r\n UpdateVoid(sPIYear: number, sPIPartCode: number, sPICode: number) {\r\n return this.accountEndpoint.SetUpdateVoid(sPIYear, sPIPartCode, sPICode);\r\n }\r\n\r\n UpdateAcceptContract(ncyear: number, ncpartCode: number, nccode: number) {\r\n return this.accountEndpoint.SetUpdateAcceptContract(ncyear, ncpartCode, nccode);\r\n }\r\n\r\n UpdateChangeStatus(NCYear: number, NCPartCode: number, NCCode: number, NCStatusNumber: number, NCStatusString: string) {\r\n return this.accountEndpoint.SetUpdateChangeStatusEndpoint(NCYear, NCPartCode, NCCode, NCStatusNumber, NCStatusString);\r\n }\r\n\r\n UpdateValidContract(ncyear: number, ncpartCode: number, nccode: number) {\r\n return this.accountEndpoint.SetUpdateValidContract(ncyear, ncpartCode, nccode);\r\n }\r\n\r\n InsertPreInvoice(SPIYear: number, SPIPartCode: number, SPICode: number, SPIKindCode: number, SPIDate: string, SPICustomerCode: number, SPISubCustomerCode: number, SPIFromDeliverytDate: string, SPIToDeliveryDate: string, SPIIsVoid: boolean, SPIIsAccepted: boolean, SPIRegistUserCode: number, SPIAcceptedUserCode: number, SPIPrivateConditions: string, PriceKind: number, AssigneSalerCode: number, DepoCode: number) {\r\n return this.accountEndpoint.InsertPreInvoice(SPIYear, SPIPartCode, SPICode, SPIKindCode, SPIDate, SPICustomerCode, SPISubCustomerCode, SPIFromDeliverytDate, SPIToDeliveryDate, SPIIsVoid, SPIIsAccepted, SPIRegistUserCode, SPIAcceptedUserCode, SPIPrivateConditions, PriceKind, AssigneSalerCode, DepoCode);\r\n }\r\n\r\n getDeposListTarazArray(Year: number, DepCode: string[], usercode: number, DCMainUnit: number, TarazAll: number, IsPrice: boolean, IdGroup: number, CmainCode: number) {\r\n return this.accountEndpoint.GetDeposListTarazarray(Year, DepCode, usercode, DCMainUnit, TarazAll, IsPrice, IdGroup, CmainCode);\r\n }\r\n\r\n MethodGetDepoTarazwithcomDetailByDCCod(Year: number, DepCode: string, DCCode: string) {\r\n return this.accountEndpoint.MethodGetDepoTarazwithcomDetailByDCCodeEndPoint(Year, DepCode, DCCode);\r\n }\r\n\r\n getUserAndRoles(userId?: string) {\r\n\r\n return forkJoin(\r\n this.accountEndpoint.getUserEndpoint(userId),\r\n this.accountEndpoint.getRolesEndpoint());\r\n }\r\n\r\n getUserOnly(userId?: string) {\r\n return this.accountEndpoint.getUserEndpoint(userId);\r\n }\r\n\r\n getRepresentCode(HTGCode?: number) {\r\n return this.accountEndpoint.GetRepresentCodeEndpoint(HTGCode);\r\n }\r\n\r\n GetcheckDepoRecieptPermanent(DRPYear?: number, DRPCode?: number, DRPDepCode?: string) {\r\n return this.accountEndpoint.GetcheckDepoRecieptPermanentEndpoint(DRPYear, DRPCode, DRPDepCode);\r\n }\r\n\r\n SupliesDealerMoneysInsertEndPoint\r\n RevertDetailRepeat(DRTDCDYear?: number, DRTDCDCode?: number, DRTDCDDepCode?: string, DRTDCDDCCode?: string) {\r\n return this.accountEndpoint.RevertDetailRepeatEndpoint(DRTDCDYear, DRTDCDCode, DRTDCDDepCode, DRTDCDDCCode);\r\n }\r\n\r\n SupliesDealerList() {\r\n return this.accountEndpoint.SupliesDealerListEndpoint();\r\n }\r\n\r\n SalePriceKinds() {\r\n return this.accountEndpoint.SalePriceKindsEndpoint();\r\n }\r\n\r\n SalePriceKind_SupliesDealer(SDCode) {\r\n return this.accountEndpoint.SalePriceKind_SupliesDealerEndpoint(SDCode);\r\n }\r\n\r\n getgroups() {\r\n return this.accountEndpoint.getGroupsEndpoint();\r\n }\r\n\r\n getgroupswithcMainCode(cMainCode: number) {\r\n return this.accountEndpoint.getGroupswithcMainCodeEndpoint(cMainCode);\r\n }\r\n\r\n getgroupswithSaleCustomerItemPriceKind(cMainCode: number) {\r\n return this.accountEndpoint.getgroupswithSaleCustomerItemPriceKindEndpoint(cMainCode);\r\n }\r\n\r\n GetGroupsNew(CustomerMainCode: number) {\r\n return this.accountEndpoint.GetGroupsNewUrlEndpoint(CustomerMainCode);\r\n }\r\n\r\n getGroupsCustomers(CMainCode: number, CSubcode: number) {\r\n return this.accountEndpoint.getGroupsCustomerEndpoint(CMainCode, CSubcode);\r\n }\r\n\r\n getostans() {\r\n return this.accountEndpoint.getOstanEndpoint();\r\n }\r\n\r\n getPubCarKinds() {\r\n return this.accountEndpoint.getPubCarKindsEndPoint();\r\n }\r\n\r\n DepoProductUnitsEndPoint() {\r\n return this.accountEndpoint.DepoProductUnitsEndPoint();\r\n }\r\n\r\n getPubCars() {\r\n return this.accountEndpoint.getPubCarsEndPoint();\r\n }\r\n\r\n getPubDrivers(DCCode?: number) {\r\n return this.accountEndpoint.getPubDriverEndPoint(DCCode);\r\n }\r\n\r\n GetCarsProperties(CNumber: string) {\r\n return this.accountEndpoint.GetCarsPropertiesEndPoint(CNumber);\r\n }\r\n\r\n GetPubDrivers(CarNum: string, CarSerial: string, carCode: number) {\r\n return this.accountEndpoint.GetPubDriversEndPoint(CarNum, CarSerial, carCode);\r\n }\r\n\r\n GetRequestAssignmentDetailSelect(RANum: number, year: number, DepCode: string) {\r\n return this.accountEndpoint.GetRequestAssignmentDetailSelectEndPoint(RANum, year, DepCode);\r\n }\r\n\r\n getCity(OstanCode?: number) {\r\n return this.accountEndpoint.getCitiEndpoint(OstanCode)\r\n }\r\n\r\n getRequestInvoice(id?: string) {\r\n return this.accountEndpoint.getRequestInvoiceEndpoint(id)\r\n }\r\n\r\n postRequestInvoice(requestInvoice: RequestInvoiceModel[]) {\r\n return this.accountEndpoint.postRequestInvoiceEndpoin(requestInvoice);\r\n }\r\n\r\n updateRevertInvoiceEndpoin(requestInvoiceId: number, revertInvoiceNumber: number) {\r\n return this.accountEndpoint.updateRevertInvoiceEndpoin(requestInvoiceId, revertInvoiceNumber);\r\n }\r\n\r\n getUsers(page?: number, pageSize?: number) {\r\n return this.accountEndpoint.getUsersEndpoint(page, pageSize);\r\n }\r\n\r\n getUsersAndRoles(page?: number, pageSize?: number, Cmain?: number) {\r\n return forkJoin(\r\n this.accountEndpoint.getUsersEndpoint(page, pageSize, Cmain),\r\n this.accountEndpoint.getRolesEndpoint());\r\n }\r\n\r\n updateUser(user: UserEdit) {\r\n if (user.id) {\r\n return this.accountEndpoint.getUpdateUserEndpoint(user, user.id);\r\n } else {\r\n return this.accountEndpoint.getUserByUserNameEndpoint(user.userName).pipe(\r\n mergeMap(foundUser => {\r\n user.id = foundUser.id;\r\n return this.accountEndpoint.getUpdateUserEndpoint(user, user.id);\r\n }));\r\n }\r\n }\r\n\r\n updateCustomer(sale: SaleCustomer) {\r\n return this.accountEndpoint.getUpdateCustomerEndpoint(sale);\r\n }\r\n\r\n newUser(user: UserEdit) {\r\n return this.accountEndpoint.getNewUserEndpoint(user);\r\n }\r\n\r\n newCustomer(sale: SaleCustomer) {\r\n return this.accountEndpoint.saveCustomerEndpoint(sale);\r\n }\r\n\r\n newPreInvoice(SalePreInvoice: SalePreInvoiceForContracts) {\r\n return this.accountEndpoint.saveSalePreInvoiceForContractsEndpoint(SalePreInvoice);\r\n }\r\n\r\n newHesabtafzili(objhesab: HesabTafzili) {\r\n return this.accountEndpoint.InsertHesabTafziliEndpoint(objhesab);\r\n }\r\n\r\n DepoRevertToDepoCustomersInsert(objrevert: DepoRevertToDepoCustomer) {\r\n return this.accountEndpoint.DepoRevertToDepoCustomersInsertEndpoint(objrevert);\r\n }\r\n\r\n DepoRialReceiptInsert(ObjRialReceipt: DepoRialReceipt) {\r\n return this.accountEndpoint.DepoRialReceiptInsertEndpoint(ObjRialReceipt);\r\n }\r\n\r\n DepoRevertToDepoCustomerDetailsInsert(objrevert: GetDepoAssignmentWithSerialResult[]) {\r\n return this.accountEndpoint.DepoRevertToDepoCustomerDetailsEndPoint(objrevert);\r\n }\r\n\r\n newDepoAssignmentProduct(SalePreInvoice: DepoAssignmentProduct) {\r\n return this.accountEndpoint.saveDepoAssigmentProduct(SalePreInvoice);\r\n }\r\n\r\n RequestInvoicesInsert(RequestInvoiceObj: RequestInvoice) {\r\n return this.accountEndpoint.RequestInvoicesInsertEndPoint(RequestInvoiceObj);\r\n }\r\n\r\n RequestInvoiceProductInsert(RequestInvoiceProductObj: RequestInvoiceProduct) {\r\n return this.accountEndpoint.RequestInvoiceProductInsertEndPoint(RequestInvoiceProductObj);\r\n }\r\n\r\n RequestInvoiceProductBarCodesInsertEndPoint(RequestInvoiceProductBarCodeObj: RequestInvoiceProductBarCode) {\r\n return this.accountEndpoint.RequestInvoiceProductBarCodesInsertEndPoint(RequestInvoiceProductBarCodeObj);\r\n }\r\n\r\n saveAdjustmentsUrl(Adjustmentsobj: Adjustments) {\r\n return this.accountEndpoint.saveAdjustmentsEndpointUrl(Adjustmentsobj);\r\n }\r\n\r\n newDepoAssignmentProductNumberLoading(SalePreInvoice: DepoAssignmentProductNumberLoading) {\r\n return this.accountEndpoint.saveDepoAssigmentProductLoadingEndpoint(SalePreInvoice);\r\n }\r\n\r\n newDepoAssignmentProductDetail(SalePreInvoice: DepoAssignmentProductDetail) {\r\n return this.accountEndpoint.saveDepoAssignmentProductDetailEndpoint(SalePreInvoice);\r\n }\r\n\r\n ProductSupliesDealersInsert(ObjDepoAssignment: ProductSupliesDealer) {\r\n return this.accountEndpoint.ProductSupliesDealersInsertEndpoint(ObjDepoAssignment);\r\n }\r\n\r\n ProductSupliesDealersUpdate(ObjDepoAssignment: ProductSupliesDealer) {\r\n return this.accountEndpoint.ProductSupliesDealersUpdateEndpoint(ObjDepoAssignment);\r\n }\r\n\r\n newDepoRecieptPermanents(ObjDepoRecieptPermanent: DepoRecieptPermanent) {\r\n return this.accountEndpoint.saveDepoRecieptPermanentsEndpoint(ObjDepoRecieptPermanent);\r\n }\r\n\r\n newDepoRecieptPermanentDetails(SalePreInvoice: DepoRecieptPermanentDetail) {\r\n return this.accountEndpoint.saveDepoRecieptPermanentDetailsEndpoint(SalePreInvoice);\r\n }\r\n\r\n NewSaleSendProducts(SaleSendProduct: SaleSendProduct) {\r\n return this.accountEndpoint.saveSaleSendProductsEndpoint(SaleSendProduct);\r\n }\r\n\r\n GetSaleContractToInvoiceSelect(Year: number, ContractYear: number, ContractCode: number, PartCode: number) {\r\n return this.accountEndpoint.GetSaleContractToInvoiceSelectEndPoint(Year, ContractYear, ContractCode, PartCode);\r\n }\r\n\r\n DepoCodesInsert(DepoCodeArsamObj: DepoCodeArsam) {\r\n return this.accountEndpoint.DepoCodesInsertEndpoint(DepoCodeArsamObj);\r\n }\r\n\r\n SaveDepoRecieptPermanentBarCodes(DepoRecieptPermanentBarCodeObj: DepoRecieptPermanentBarCode) {\r\n return this.accountEndpoint.SaveDepoRecieptPermanentBarCodesEndpoint(DepoRecieptPermanentBarCodeObj);\r\n }\r\n\r\n newContractProduct(ContractProductobj: ContractProduct, PreContract: PreInvoiceContract) {\r\n return forkJoin(\r\n this.accountEndpoint.saveContrctPreInvoiceProduct(ContractProductobj),\r\n this.accountEndpoint.saveSalePreInvoice_SaleNewContractEndPoint(PreContract));\r\n }\r\n\r\n newSaleSubReceipt(ContractProductobj: SaleSubReceipt) {\r\n return this.accountEndpoint.saveSaleSubReceipt(ContractProductobj);\r\n }\r\n newSaleSubReceipts(ContractProductobj: SaleSubReceipt[]) {\r\n return this.accountEndpoint.saveSaleSubReceipts(ContractProductobj);\r\n }\r\n\r\n newSaleLoadingCommandBarCodes(objBarCode: SaleLoadingCommandBarCode) {\r\n return this.accountEndpoint.saveSaleLoadingCommandBarCodesEndpoint(objBarCode);\r\n }\r\n\r\n newSaleLoadingCommandBarCodesPostArray(objBarCode: SaleLoadingCommandBarCode[]) {\r\n return this.accountEndpoint.saveSaleLoadingCommandBarCodesPostArrayEndpoint(objBarCode);\r\n }\r\n\r\n newTemprorySerial(objBarCode: SerialProduct) {\r\n return this.accountEndpoint.saveTemprorySerialEndpoint(objBarCode);\r\n }\r\n\r\n newSaleNewContracts(SaleNewContracts: SaleNewContract) {\r\n return this.accountEndpoint.saveSaleNewContractsEndpoint(SaleNewContracts);\r\n }\r\n\r\n newSaleOrdes(SaleNewContracts: SaleOrders) {\r\n return this.accountEndpoint.saveSaleOrdersEndpoint(SaleNewContracts);\r\n }\r\n\r\n newPubCars(PubCarobj: PubCar) {\r\n return this.accountEndpoint.savePubCarsEndpoint(PubCarobj);\r\n }\r\n\r\n newPubDrivers(PubCarobj: PubDrivers) {\r\n return this.accountEndpoint.savePubDriversEndpoint(PubCarobj);\r\n }\r\n\r\n newSaleSubOrders(SaleSubOrdersObj: SaleSubOrders) {\r\n return this.accountEndpoint.saveSaleSubOrdersEndpoint(SaleSubOrdersObj);\r\n }\r\n\r\n newSaleSubSendProducts(SaleSubOrdersObj: SaleSubSendProduct) {\r\n return this.accountEndpoint.saveSaleSubSendProductEndpoint(SaleSubOrdersObj);\r\n }\r\n\r\n DepoAssignmentProductBarCodes(ObjDepoAssignment: DepoAssignmentProductBarCode) {\r\n return this.accountEndpoint.DepoAssignmentProductBarCodesEndpoint(ObjDepoAssignment);\r\n }\r\n\r\n newSaleSubLoadingCommands(SaleSubOrdersObj: SaleSubLoadingCommands) {\r\n return this.accountEndpoint.saveSaleSubLoadingCommandsInsertUrlEndpoint(SaleSubOrdersObj);\r\n }\r\n\r\n SupliesDealerMoneysInsert(SupliesDealerMoneyObj: SupliesDealerMoney) {\r\n return this.accountEndpoint.SupliesDealerMoneysInsertEndPoint(SupliesDealerMoneyObj);\r\n }\r\n\r\n SupliesOrderRelationRecieptsInsert(SupliesDealerMoneyObj: SupliesOrderRelationReciept) {\r\n return this.accountEndpoint.SupliesOrderRelationRecieptsInsertEndPoint(SupliesDealerMoneyObj);\r\n }\r\n\r\n SupliesDealerCommissionDetailsInsert(SupliesDealerobj: SupliesDealerCommission) {\r\n return this.accountEndpoint.SupliesDealerCommissionDetailsInsertEndpoint(SupliesDealerobj);\r\n }\r\n\r\n newSaleLoadinCommand(SaleSubOrdersObj: SaleLoadingCommand) {\r\n return this.accountEndpoint.saveSaleLoadinCommandEndpoint(SaleSubOrdersObj);\r\n }\r\n\r\n DepoAssignmentsInsertUrl(DepoAssignmentObj: DepoAssignment) {\r\n return this.accountEndpoint.DepoAssignmentsInsertUrlEndPoint(DepoAssignmentObj);\r\n }\r\n\r\n DepoRecieptTemporaryNewsInsert(DepoRecieptTemporaryNewObj: DepoRecieptTemporaryNew) {\r\n return this.accountEndpoint.DepoRecieptTemporaryNewsInsertEndPoint(DepoRecieptTemporaryNewObj);\r\n }\r\n\r\n SalePricesInsert(SalePriceObj: SalePrice, rIsApprove: boolean) {\r\n return this.accountEndpoint.SalePricesInsertEndPoint(SalePriceObj, rIsApprove);\r\n }\r\n\r\n SalePricesReject(SalePriceObj: SalePrice, rIsApprove: boolean) {\r\n return this.accountEndpoint.SalePricesRejectEndPoint(SalePriceObj, rIsApprove);\r\n }\r\n\r\n CustomerClubsInsert(CustomerClubObj: CustomerClub) {\r\n return this.accountEndpoint.InsertCustomerClubEndpoint(CustomerClubObj);\r\n }\r\n\r\n InsertCustomerSalePreInvoices(CustomerSalePreInvoiceObj: CustomerSalePreInvoice) {\r\n return this.accountEndpoint.InsertCustomerSalePreInvoicesEndpoint(CustomerSalePreInvoiceObj);\r\n }\r\n\r\n InsertSaleInvoice(SaleInvoiceObj: SaleInvoice) {\r\n return this.accountEndpoint.SaleInvoicesInsertEndpoint(SaleInvoiceObj);\r\n }\r\n\r\n InsertSaleInvoiceDetail(SaleInvoiceDetailObj: SaleInvoiceDetail[]) {\r\n return this.accountEndpoint.SaleInvoiceDetailsInsertEndpoint(SaleInvoiceDetailObj);\r\n }\r\n\r\n DepoRecieptTemporaryDetailNewsInsert(DepoRecieptTemporaryDetailObj: DepoRecieptTemporaryDetailNew) {\r\n return this.accountEndpoint.DepoRecieptTemporaryDetailNewsInsertEndPoint(DepoRecieptTemporaryDetailObj);\r\n }\r\n\r\n DepoRecieptTemporaryBarCodeInsert(DepoRecieptTemporaryBarCodeObj: DepoRecieptTemporaryBarCode) {\r\n return this.accountEndpoint.DepoRecieptTemporaryBarCodesInsertEndPoint(DepoRecieptTemporaryBarCodeObj);\r\n }\r\n\r\n DepoRelreciepAssignmenInsert(DepoRelreciepAssignmenObj: DepoRelreciepAssignmen) {\r\n return this.accountEndpoint.DepoRelreciepAssignmenInsertEndPoint(DepoRelreciepAssignmenObj);\r\n }\r\n\r\n DepoAssignment_RequestAssignmentInsert(DepoAssignment_RequestAssignmentObj: DepoAssignment_RequestAssignment) {\r\n return this.accountEndpoint.DepoAssignment_RequestAssignmentInsertEndPoint(DepoAssignment_RequestAssignmentObj);\r\n }\r\n\r\n DepoAssignmentDetailsInsertUrl(SaleSubOrdersObj: DepoAssignmentDetail) {\r\n return this.accountEndpoint.DepoAssignmentDetailsInsertUrlEndPoint(SaleSubOrdersObj);\r\n }\r\n\r\n DepoAssignmentBarCodesInsertUrl(SaleSubOrdersObj: DepoAssignmentBarCode) {\r\n return this.accountEndpoint.DepoAssignmentBarCodesInsertUrlEndPoint(SaleSubOrdersObj);\r\n }\r\n\r\n newPreInvoiceProduct(SalePreInvoiceProduct: SalePreInvoiceForContractProduct) {\r\n return this.accountEndpoint.saveSalePreInvoiceForContractProductEndpoint(SalePreInvoiceProduct);\r\n }\r\n\r\n\r\n allowInsertSaleRecepitByRSerial(SaleReceiptobj: SaleSubReceipt[]) {\r\n return this.accountEndpoint.allowInsertSaleRecepitByRSerial(SaleReceiptobj);\r\n }\r\n\r\n getUserPreferences() {\r\n return this.accountEndpoint.getUserPreferencesEndpoint();\r\n }\r\n\r\n getServerDateTime() {\r\n return this.accountEndpoint.getServerDate();\r\n }\r\n\r\n updateUserPreferences(configuration: string) {\r\n return this.accountEndpoint.getUpdateUserPreferencesEndpoint(configuration);\r\n }\r\n\r\n deleteUser(userOrUserId: string | User): Observable {\r\n if (typeof userOrUserId === 'string' || userOrUserId instanceof String) {\r\n return this.accountEndpoint.getDeleteUserEndpoint(userOrUserId as string).pipe(\r\n tap(data => this.onRolesUserCountChanged(data.roles)));\r\n } else {\r\n if (userOrUserId.id) {\r\n return this.deleteUser(userOrUserId.id);\r\n } else {\r\n return this.accountEndpoint.getUserByUserNameEndpoint(userOrUserId.userName).pipe(\r\n mergeMap(user => this.deleteUser(user.id)));\r\n }\r\n }\r\n }\r\n\r\n deleteCustomer(CMainCode: number, CSubCode: number) {\r\n return this.accountEndpoint.getDeleteCustomerEndpoint(CMainCode, CSubCode);\r\n }\r\n\r\n checkCustomer(CMainCode: number, CSubCode: number) {\r\n return this.accountEndpoint.getCheckCustomerEndpoint(CMainCode, CSubCode);\r\n }\r\n\r\n UpdateNational(CustomerMobile: string, CustomerNationalCode: string) {\r\n return this.accountEndpoint.UpdateNationalEndpoint(CustomerMobile, CustomerNationalCode);\r\n }\r\n\r\n unblockUser(userId: string) {\r\n return this.accountEndpoint.getUnblockUserEndpoint(userId);\r\n }\r\n\r\n userHasPermission(permissionValue: PermissionValues): boolean {\r\n return this.permissions.some(p => p == permissionValue);\r\n }\r\n\r\n refreshLoggedInUser() {\r\n return this.accountEndpoint.refreshLogin();\r\n }\r\n\r\n getRoles(page?: number, pageSize?: number) {\r\n return this.accountEndpoint.getRolesEndpoint(page, pageSize);\r\n }\r\n\r\n\r\n GetSaleSelectAllLoadedCountRegistDetailEndPoint(LoadNumber?: number, Year?: number) {\r\n return this.accountEndpoint.GetSaleSelectAllLoadedCountRegistDetailEndPoint(LoadNumber, Year);\r\n }\r\n\r\n\r\n\r\n getRolesAndPermissions(page?: number, pageSize?: number) {\r\n return forkJoin(\r\n this.accountEndpoint.getRolesEndpoint(page, pageSize),\r\n this.accountEndpoint.getPermissionsEndpoint());\r\n }\r\n\r\n updateRole(role: Role) {\r\n if (role.id) {\r\n return this.accountEndpoint.getUpdateRoleEndpoint(role, role.id).pipe(\r\n tap(data => this.onRolesChanged([role], AccountService.roleModifiedOperation)));\r\n } else {\r\n return this.accountEndpoint.getRoleByRoleNameEndpoint(role.name).pipe(\r\n mergeMap(foundRole => {\r\n role.id = foundRole.id;\r\n return this.accountEndpoint.getUpdateRoleEndpoint(role, role.id);\r\n }),\r\n tap(data => this.onRolesChanged([role], AccountService.roleModifiedOperation)));\r\n }\r\n }\r\n\r\n newRole(role: Role) {\r\n return this.accountEndpoint.getNewRoleEndpoint(role).pipe(\r\n tap(data => this.onRolesChanged([role], AccountService.roleAddedOperation)));\r\n }\r\n\r\n deleteRole(roleOrRoleId: string | Role): Observable {\r\n if (typeof roleOrRoleId === 'string' || roleOrRoleId instanceof String) {\r\n return this.accountEndpoint.getDeleteRoleEndpoint(roleOrRoleId as string).pipe(\r\n tap(data => this.onRolesChanged([data], AccountService.roleDeletedOperation)));\r\n } else {\r\n\r\n if (roleOrRoleId.id) {\r\n return this.deleteRole(roleOrRoleId.id);\r\n } else {\r\n return this.accountEndpoint.getRoleByRoleNameEndpoint(roleOrRoleId.name).pipe(\r\n mergeMap(role => this.deleteRole(role.id)));\r\n }\r\n }\r\n }\r\n\r\n getPermissions() {\r\n return this.accountEndpoint.getPermissionsEndpoint();\r\n }\r\n\r\n private onRolesChanged(roles: Role[] | string[], op: RolesChangedOperation) {\r\n this._rolesChanged.next({ roles, operation: op });\r\n }\r\n\r\n onRolesUserCountChanged(roles: Role[] | string[]) {\r\n return this.onRolesChanged(roles, AccountService.roleModifiedOperation);\r\n }\r\n\r\n getRolesChangedEvent(): Observable {\r\n return this._rolesChanged.asObservable();\r\n }\r\n\r\n get permissions(): PermissionValues[] {\r\n return this.authService.userPermissions;\r\n }\r\n\r\n get currentUser() {\r\n return this.authService.currentUser;\r\n }\r\n\r\n installmentsService(installmentData: IInstallments) {\r\n return this.accountEndpoint.installmentsEndpoint(installmentData);\r\n }\r\n\r\n getinstallmentsService(SPIYear: number, SPIPartCode: number, SPICode: number) {\r\n return this.accountEndpoint.getInstallmentsEndpoint(SPIYear, SPIPartCode, SPICode);\r\n }\r\n\r\n getRequestRevertSaleService(sdCode: string, year: number, requestType: number) {\r\n return this.accountEndpoint.getRequestRevertFromSale(sdCode, year, requestType);\r\n }\r\n\r\n getUpdateNationalCode(mobileNumber, nationalCode) {\r\n return this.accountEndpoint.getUpdateNationalCode(mobileNumber, nationalCode)\r\n }\r\n\r\n getDepoViewDescription(serialNumber, storDepoCode) {\r\n return this.accountEndpoint.getDepoViewDescription(serialNumber, storDepoCode)\r\n }\r\n\r\n getDepoReverToDepoes(year, depCode) {\r\n return this.accountEndpoint.getDepoReverToDepoes(year, depCode);\r\n }\r\n\r\n getDepoRevertToDepoDetailBarcode(year, drtddcode, depCode, drtdddccode) {\r\n return this.accountEndpoint.getDepoRevertToDepoDetailBarcode(year, drtddcode, depCode, drtdddccode);\r\n }\r\n\r\n postDepoReverToDepoes(depoRevertoDepo) {\r\n return this.accountEndpoint.postDepoReverToDepoes(depoRevertoDepo)\r\n }\r\n\r\n getDepoUserSelectsAllSite(userId) {\r\n return this.accountEndpoint.getDepoUserSelectsAllSite(userId)\r\n }\r\n\r\n getDepoUnitUserSelect(userId) {\r\n return this.accountEndpoint.getDepoUnitUserSelect(userId)\r\n }\r\n\r\n getSaleSelectAllLoadedCountRegist(year, object, depCode) {\r\n return this.accountEndpoint.getSaleSelectAllLoadedCountRegist(year, object, depCode)\r\n }\r\n\r\n getCustomerClubList() {\r\n return this.accountEndpoint.getCustomerClubList();\r\n }\r\n\r\n sendHesabSanads(sanadDesc) {\r\n return this.accountEndpoint.sendHesabSanads(sanadDesc);\r\n }\r\n\r\n getSalePartitions() {\r\n return this.accountEndpoint.getSalePartitions();\r\n }\r\n\r\n getDepoCodes() {\r\n return this.accountEndpoint.getDepoCodes();\r\n }\r\n\r\n getNotAccessSalePartions(saleId) {\r\n return this.accountEndpoint.getNotAccessSalePartions(saleId);\r\n }\r\n\r\n getAccessSalePartions(saleId) {\r\n return this.accountEndpoint.getAccessSalePartions(saleId);\r\n }\r\n\r\n postAccessSalePartions(body) {\r\n return this.accountEndpoint.postAccessSalePartions(body);\r\n }\r\n\r\n deleteAccessSalePartions(accessProduct) {\r\n return this.accountEndpoint.deleteAccessSalePartions(accessProduct);\r\n }\r\n\r\n}\r\n","\n\n/**\n * Helper class to decode and find JWT expiration.\n */\nimport { Injectable } from '@angular/core';\n\n\n@Injectable()\nexport class JwtHelper {\n\n public urlBase64Decode(str: string): string {\n let output = str.replace(/-/g, '+').replace(/_/g, '/');\n switch (output.length % 4) {\n case 0: { break; }\n case 2: { output += '=='; break; }\n case 3: { output += '='; break; }\n default: {\n throw new Error('Illegal base64url string!');\n }\n }\n return this.b64DecodeUnicode(output);\n }\n\n // https://developer.mozilla.org/en/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#The_Unicode_Problem\n private b64DecodeUnicode(str: any) {\n return decodeURIComponent(Array.prototype.map.call(atob(str), (c: any) => {\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\n }).join(''));\n }\n\n public decodeToken(token: string): any {\n const parts = token.split('.');\n\n if (parts.length !== 3) {\n throw new Error('JWT must have 3 parts');\n }\n\n const decoded = this.urlBase64Decode(parts[1]);\n if (!decoded) {\n throw new Error('Cannot decode the token');\n }\n\n return JSON.parse(decoded);\n }\n\n public getTokenExpirationDate(token: string): Date {\n let decoded: any;\n decoded = this.decodeToken(token);\n\n if (!decoded.hasOwnProperty('exp')) {\n return null;\n }\n\n const date = new Date(0); // The 0 here is the key, which sets the date to the epoch\n date.setUTCSeconds(decoded.exp);\n\n return date;\n }\n\n public isTokenExpired(token: string, offsetSeconds?: number): boolean {\n const date = this.getTokenExpirationDate(token);\n offsetSeconds = offsetSeconds || 0;\n\n if (date == null) {\n return false;\n }\n\n // Token expired?\n return !(date.valueOf() > (new Date().valueOf() + (offsetSeconds * 1000)));\n }\n}\n","export class BarcodeListModel {\n isSelect: number;\n barcode: string;\r\n}\r\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'sale-preinvoice-for-contract-check',\n templateUrl: './sale-preinvoice-for-contract-check.component.html',\n animations: [fadeInOut]\n})\nexport class SalesPreInvoiceForContractCheckComponent {\n}\n","
\r\n\r\n
\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 * as FileSaver from 'file-saver';\r\n\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\n providedIn: 'root'\r\n})\r\nexport class ExcelService {\r\n constructor() { }\r\n public exportAsExcelFile(json: any[], excelFileName: string): void {\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\r\n}\r\n","import { Component } from '@angular/core';\nimport { LoadingService } from '../../services/loading-spinner.service';\n\n@Component({\n selector: 'spinner-loading',\n templateUrl: './spinner-loading.component.html',\n styleUrls: ['./spinner-loading.component.scss']\n})\nexport class SpinnerLoadingComponent {\n\n loading: boolean;\n\n constructor(private loaderService: LoadingService) {\n this.loaderService.isLoading.subscribe((v) => {\n this.loading = v;\n });\n }\n}\n","
\r\n\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 { FormControl, Validators } from '@angular/forms';\r\nimport { IDepoUnitUserSelect } from '../../models/DepoUnitUserSelect.model';\r\nimport { ISaleSelectAllLoadedCountRegist } from '../../models/SaleSelectAllLoadedCountRegist';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Warning } from '../../models/Warning.model';\r\nimport { TemprorySerials } from '../../models/TemprorySerials.model';\r\nimport { TemprorySerialsDepo } from '../../models/TemprorySerialsDepo.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { SaleLoadingCommandBarCode } from '../../models/SaleLoadingCommandBarCode.model';\r\nimport { SaleLoadingCommandBarCodeObject } from '../../models/SaleLoadingCommandBarCodeObject';\r\n\r\nimport { GetSaleSelectAllLoadedCountRegistDetail } from '../../models/LoadedCountRegisterDetail.model';\r\n\r\n@Component({\r\n selector: 'download-registration-info',\r\n templateUrl: './download-registration-info.component.html',\r\n styleUrls: ['./download-registration-info.component.scss']\r\n})\r\nexport class DownloadRegistrationInfoComponent implements OnInit {\r\n public loadingIndicator: boolean = false;\r\n public rows: any[] = [];\r\n public productRows: GetSaleSelectAllLoadedCountRegistDetail[] = [];\r\n public productRowsCash: GetSaleSelectAllLoadedCountRegistDetail[] = [];\r\n public depCode: any;\r\n\r\n\r\n public columns: any[] = [];\r\n public selected = [];\r\n public storeLists: any;\r\n storesControl = new FormControl('', Validators.required);\r\n public unitUserSelect: IDepoUnitUserSelect[] = [];\r\n public pUserCode: any[];\r\n public saleSelectAllLoadedCountRegist: ISaleSelectAllLoadedCountRegist[] = [];\r\n public ArrayBarcode: SaleLoadingCommandBarCode[] = [];\r\n public ObjBarcode: SaleLoadingCommandBarCodeObject = new SaleLoadingCommandBarCodeObject();\r\n\r\n\r\n SerialCode: string[] = [];\r\n public SerialNUmber: string;\r\n public StatusSerial: string;\r\n public StatusSerialText: string = \"\";\r\n public objwarning: Warning = new Warning();\r\n public Depocode: string;\r\n isInputTxtKeyNumber: boolean;\r\n rowsSerail: TemprorySerials[] = [];\r\n rowsSerailCash: TemprorySerials[] = [];\r\n public TemprorySerialObj: TemprorySerialsDepo[] = [];\r\n isSuccess = false;\r\n isDanger = false;\r\n textDangerMessage = \"\";\r\n @ViewChild('serialNumber', { static: false }) searchElement: ElementRef;\r\n\r\n constructor(private accountService: AccountService,\r\n private authService: AuthService, private alertService: AlertService) { }\r\n\r\n public ngOnInit() {\r\n this.ArrayBarcode = [];\r\n this.allStoreListByUser();\r\n this.getDepoUnitUserSelect();\r\n }\r\n\r\n\r\n public lcNum: number;\r\n public lcYear: number;\r\n public onSelect({ selected }) {\r\n this.isDanger = false;\r\n this.isSuccess = false;\r\n this.selected = selected;\r\n this.selected.forEach((user) => {\r\n this.lcNum = user.lcNum;\r\n this.lcYear = user.lcYear;\r\n this.accountService.GetSaleSelectAllLoadedCountRegistDetailEndPoint(user.lcNum, user.lcYear).subscribe(\r\n (res) => {\r\n this.productRows = res;\r\n this.productRowsCash = [...res];\r\n\r\n }\r\n )\r\n });\r\n\r\n }\r\n\r\n public onKeydownSerial(event: any) {\r\n this.isDanger = false;\r\n this.isShowError = false;\r\n this.isInputTxtKeyNumber = true;\r\n var isCan = true;\r\n this.SerialCode.forEach((user) => {\r\n if (user == this.SerialNUmber) {\r\n isCan = false;\r\n }\r\n });\r\n\r\n if (isCan) {\r\n\r\n this.StatusSerialText = \"\";\r\n this.objwarning.txtmessage = \"\";\r\n this.accountService.GetStatusSerial(this.SerialNUmber, this.Depocode.toString(), +this.authService.currentUser.phoneNumber)\r\n .subscribe(res => this.MethodTestSaleSubstatus(res), error => this.saveerror(error));\r\n\r\n } else {\r\n this.isInputTxtKeyNumber = false;\r\n setTimeout(() => { // this will make the execution after the above boolean has changed\r\n this.searchElement.nativeElement.focus();\r\n }, 0);\r\n this.alertService.showMessage('خطا', 'شماره سریال قبلا وارد شده', MessageSeverity.warn);\r\n this.messageError('شماره سریال قبلا وارد شده');\r\n this.SerialNUmber = \"\";\r\n }\r\n\r\n }\r\n\r\n messageError(value: string) {\r\n this.isDanger = true;\r\n this.textDangerMessage = value;\r\n }\r\n\r\n saveerror(error): void {\r\n this.messageError(\"خطایی در سیستم رخ داده است لطفا مجددا اقدام نماید\");\r\n throw new Error('Method not implemented.');\r\n }\r\n public isShowError: boolean;\r\n\r\n MethodTestSaleSubstatus(status: number) {\r\n let step: number = 0;\r\n this.isInputTxtKeyNumber = false;\r\n\r\n setTimeout(() => { // this will make the execution after the above boolean has changed\r\n this.searchElement.nativeElement.focus();\r\n }, 0);\r\n switch (status) {\r\n case 0:\r\n this.StatusSerialText = \"سریال نامعتبر\";\r\n this.objwarning.txtmessage = \"سریال نامعتبر\";\r\n this.isShowError = true;\r\n this.messageError('سریال نامعتبر');\r\n break;\r\n case 1:\r\n this.StatusSerialText = \"در انبار موجود هست\";\r\n this.objwarning.txtmessage = \"در انبار موجود هست\";\r\n this.isShowError = true;\r\n this.messageError('در انبار موجود هست');\r\n break;\r\n case 2:\r\n this.StatusSerialText = \"در انبار موجود نیست\";\r\n this.objwarning.txtmessage = \"در انبار موجود نیست\";\r\n this.messageError('در انبار موجود نیست');\r\n this.isShowError = true;\r\n break;\r\n case 3:\r\n this.StatusSerialText = \"از انبار خارج شده\";\r\n this.objwarning.txtmessage = \"از انبار خارج شده\";\r\n this.messageError('از انبار خارج شده');\r\n this.isShowError = true;\r\n break;\r\n default:\r\n this.productRowsCash.forEach((user, index) => {\r\n if (user.lscdcCode == status.toString()) {\r\n var check = true;\r\n this.rowsSerail.forEach((user) => {\r\n if (user.serialCode == this.SerialNUmber) {\r\n check = false;\r\n }\r\n });\r\n if (user.lscLoadingOrderCount < user.lscCountLoading && check) {\r\n user.lscLoadingOrderCount++;\r\n this.SerialCode.push(this.SerialNUmber);\r\n\r\n let Temp: SaleLoadingCommandBarCode = new SaleLoadingCommandBarCode();\r\n Temp.Lcbyear = this.lcYear;\r\n Temp.Lcbnum = this.lcNum;\r\n Temp.Lcbbarcode = this.SerialNUmber;\r\n Temp.LcbproductCode = user.lscdcCode;\r\n Temp.LCBDepoCode = this.depCode;\r\n this.ArrayBarcode.push(Temp);\r\n }\r\n }\r\n });\r\n break;\r\n }\r\n this.productRows = [...this.productRowsCash];\r\n this.SerialNUmber = \"\";\r\n }\r\n saveSendProduct() {\r\n let FlagCheck = true;\r\n this.productRows.forEach((item) => {\r\n if (item.lscCountLoading != item.lscLoadingOrderCount) {\r\n FlagCheck = false;\r\n }\r\n })\r\n if (FlagCheck) {\r\n this.accountService.newSaleLoadingCommandBarCodesPostArray(this.ArrayBarcode).subscribe(res => this.SuccessInsertBarcode(res), error => this.saveerror(error));\r\n }\r\n else {\r\n this.alertService.showMessage('خطا', 'تمامی سریال ها باید بارگیری شوند', MessageSeverity.warn);\r\n this.messageError('از انبار خارج شده');\r\n }\r\n }\r\n SuccessInsertBarcode(res: SaleLoadingCommandBarCode[]): void {\r\n this.alertService.showMessage('ثبت', 'ثبت با موفقیت انجام شد', MessageSeverity.success);\r\n this.isSuccess = true;\r\n this.isDanger = false;\r\n this.ArrayBarcode = [];\r\n }\r\n\r\n public allStoreListByUser() {\r\n this.accountService.getDepoUserSelectsAllSite(this.authService.currentUser.id).subscribe(\r\n (res) => {\r\n this.storeLists = res;\r\n }\r\n )\r\n }\r\n\r\n public getDepoUnitUserSelect() {\r\n this.accountService.getDepoUnitUserSelect(this.authService.currentUser.id).subscribe(\r\n (res) => {\r\n this.unitUserSelect = res;\r\n this.pUserCode = this.unitUserSelect.map(a => a.puCode);\r\n }\r\n )\r\n }\r\n\r\n getDepoReverToDepoes(event: any) {\r\n this.depCode = event.value;\r\n this.accountService.getSaleSelectAllLoadedCountRegist(+this.authService.currentUser.phoneNumber, this.pUserCode, this.depCode).subscribe(\r\n (res) => {\r\n this.saleSelectAllLoadedCountRegist = res;\r\n this.Depocode = this.depCode;\r\n }\r\n )\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n انتخاب انبار\r\n \r\n --\r\n \r\n {{store.depTitle}}\r\n \r\n \r\n لطفا انبار را انتخاب کنید.\r\n {{storesControl.value?.depTitle}}\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{textDangerMessage}}\r\n
\r\n
\r\n ثبت با موفقیت انجام شد\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'visits-list',\n templateUrl: './visits-list.component.html',\n animations: [fadeInOut]\n})\nexport class VisitsListComponent {\n}\n","
\r\n

\r\n \r\n لیست ویزیت ها\r\n

\r\n\r\n
\r\n \r\n
\r\n
\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-client-home',\r\n templateUrl: './client-home.component.html',\r\n styleUrls: ['./client-home.component.scss']\r\n})\r\n/** clientHome component*/\r\nexport class ClientHomeComponent {\r\n /** clientHome ctor */\r\n constructor() {\r\n\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n","\n\nexport class VMDepoAssignmentProductDetail_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(DAPDYear?: number, DAPDCode?: number, DAPDDCCode?: string, DAPDDepoCode?: string, DAPDUnitProduct?: number, DAPDASSCount?: number, DAPDDesc?: string\n , DAPDForPerInvoice?: number\n , DAPDForInvoice?: number\n , DAPDPrice?: number\n , DAPDPricePersonel?: number\n , DAPDPPriceEnergy?: number\n , DAPDPriceEstehlak?: number\n , DAPDPriceMali?: number\n , DADPriceSale?: number, BarCode?: string\n ) {\n this.DAPDYear = DAPDYear;\n this.DAPDCode = DAPDCode;\n this.DAPDDCCode = DAPDDCCode;\n this.DAPDDepoCode = DAPDDepoCode;\n this.DAPDUnitProduct = DAPDUnitProduct;\n this.DAPDASSCount = DAPDASSCount;\n this.DAPDDesc = DAPDDesc;\n this.DAPDForPerInvoice = DAPDForPerInvoice;\n this.DAPDForInvoice = DAPDForInvoice;\n this.DAPDPrice = DAPDPrice;\n this.DAPDPricePersonel = DAPDPricePersonel;\n this.DAPDPPriceEnergy = DAPDPPriceEnergy;\n this.DAPDPriceEstehlak = DAPDPriceEstehlak;\n this.DAPDPriceMali = DAPDPriceMali;\n this.DADPriceSale = DADPriceSale;\n this.barCode = BarCode;\n\n }\n public DAPDYear: number;\n public DAPDCode: number;\n public DAPDDCCode: string;\n public DAPDDepoCode: string;\n public DAPDUnitProduct: number;\n public DAPDASSCount: number;\n public DAPDDesc: string;\n public DAPDForPerInvoice: number;\n public DAPDForInvoice: number;\n public DAPDPrice: number;\n public DAPDPricePersonel: number;\n public DAPDPPriceEnergy: number;\n public DAPDPriceEstehlak: number;\n public DAPDPriceMali: number;\n public DADPriceSale: number;\n public barCode: string;\n\n\n}\n","import { DynamicResult } from './../../../models/DynamicResult.model';\nimport { ViewChild, OnInit, TemplateRef } from '@angular/core';\nimport { Component } from '@angular/core';\nimport { Utilities } from '../../../services/utilities';\nimport { AccountService } from '../../../services/account.service';\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\nimport { AppTranslationService } from '../../../services/app-translation.service';\nimport { AlertService, MessageSeverity } from '../../../services/alert.service';\n\n@Component({\n selector: 'app-inventory-info',\n templateUrl: './inventory-info.component.html'\n})\nexport class InventoryInfoComponent implements OnInit {\n public isEditMode = true;\n\n public isError = false;\n editingCName: { name: string };\n @ViewChild('editorModal', { static: true })\n editorModal: ModalDirective;\n loadingIndicator=true;\n editingFullName: { name: string };\n editingCUser: { name: string };\n selected = [];\n summaryPosition = 'bottom';\n enableSummary = true;\n dynamicReport :DynamicResult;\n rows:any[]=[];\n rowsCach:any[]=[];\n columns: any[] = [];\n\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n\n\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n constructor(private alertService: AlertService, private accountService: AccountService , private translationService: AppTranslationService) {\n this.MethodLoadDealerCode();\n }\n\n ngOnInit() {\n }\n onSearchChanged(value: string) {\n this.rows = this.rowsCach.filter(r => Utilities.searchArray(value, false, r));\n }\n MethodLoadDealerCode(): void {\n const gT = (key: string) => this.translationService.getTranslation(key);\n this.accountService.getDepoTarazNewPivotDepos(Number(this.accountService.currentUser.phoneNumber), 1, null, null, false, '001005')\n .subscribe(results =>\n {\n this.dynamicReport = results;\n this.columns.push({ prop: 'index', name: '#', width: 40, cellTemplate: this.indexTemplate, canAutoResize: false, frozenLeft: true });\n this.dynamicReport.cols.forEach((col, index) => {\n this.columns.push({ prop: index, name:gT(col) });\n this.loadingIndicator=true;\n });\n this.dynamicReport.rows.forEach(row => {\n this.rows.push(row.itemArray);\n this.loadingIndicator=true;\n });\n this.rowsCach = [...this.rows];\n this.onDataLoadSuccessful();\n }\n , error => this.onDataLoadFailed(error));\n }\n onDataLoadSuccessful() {\n this.loadingIndicator = false;\n this.rows = [...this.rowsCach];\n this.alertService.stopLoadingMessage();\n }\n\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n\n}\n\n","
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n {{value}}\n \n
\n
\n","\n\nexport class VMSaleSubOrders_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(OpartCode?: number, OorderNum?: number, Oyear?: number, Pcode?: string, Oscount?: number, Osdes?: string, BarCode?: string) {\n this.OpartCode = OpartCode;\n this.OorderNum = OorderNum;\n this.Oyear = Oyear;\n this.Pcode = Pcode;\n this.Oscount = Oscount;\n this.Osdes = Osdes;\n this.barCode = BarCode;\n\n\n\n }\n public OpartCode: number;\n public OorderNum: number;\n public Oyear: number;\n public Pcode: string;\n public Oscount: number;\n public Osdes: string;\n public barCode: string;\n \n\n}\n","\n\nexport class DepoRecieptPermanentDetail {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(DRPDYear?: number, DRPDCode?: number, DRPDDepCode?: string, DRPDDCCode?: string, DRPDUnitProduct?: number\n , DRPDCount?: number\n , DRPDDesc?: string\n , DRPDBuyReqCode?: number\n , DRPDYearRequest?: number\n , DRPDPrice?: number\n , DRPDPricefinal?: number\n , DRPDDescPrice?: string\n , DRPDPricePersonel?: number\n , DRPDPriceEnergy?: number\n , DRPDPriceEstehlak?: number\n , DRPDPriceSale?: number\n , DRPDPriceMali?: number\n ) {\n this.DRPDYear = DRPDYear;\n this.DRPDCode = DRPDCode;\n this.DRPDDepCode = DRPDDepCode;\n this.DRPDDCCode = DRPDDCCode;\n this.DRPDUnitProduct = DRPDUnitProduct;\n this.DRPDCount = DRPDCount;\n this.DRPDDesc = DRPDDesc;\n this.DRPDBuyReqCode = DRPDBuyReqCode;\n this.DRPDYearRequest = DRPDYearRequest;\n this.DRPDPrice = DRPDPrice;\n this.DRPDPricefinal = DRPDPricefinal;\n this.DRPDDescPrice = DRPDDescPrice;\n this.DRPDPricePersonel = DRPDPricePersonel;\n this.DRPDPriceEnergy = DRPDPriceEnergy;\n this.DRPDPriceEstehlak = DRPDPriceEstehlak;\n this.DRPDPriceSale = DRPDPriceSale;\n this.DRPDPriceMali = DRPDPriceMali;\n }\n public DRPDYear: number;\n public DRPDCode: number;\n public DRPDDepCode: string;\n public DRPDDCCode: string;\n public DRPDUnitProduct: number;\n public DRPDCount: number;\n public DRPDDesc: string;\n public DRPDBuyReqCode: number;\n public DRPDYearRequest: number;\n public DRPDPrice: number;\n public DRPDPricefinal: number;\n public DRPDDescPrice: string;\n public DRPDPricePersonel: number;\n public DRPDPriceEnergy: number;\n public DRPDPriceEstehlak: number;\n public DRPDPriceSale: number;\n public DRPDPriceMali: number;\n}\n","import { HttpClient } from '@angular/common/http';\r\nimport { Component, ViewEncapsulation } from '@angular/core';\r\n//declare var Stimulsoft: any;\r\nimport { Stimulsoft } from 'stimulsoft-reports-js/Scripts/stimulsoft.designer'\r\n\r\n@Component({\r\n selector: 'previews-print-info',\r\n templateUrl: './previews-print-info.component.html'\r\n //encapsulation: ViewEncapsulation.None\r\n})\r\nexport class PreviewsPrintInfoComponent {\r\n\r\n\r\n //options: any = new Stimulsoft.Viewer.StiViewerOptions();\r\n //viewer = new Stimulsoft.Viewer.StiViewer(this.options, 'StiViewer', false);\r\n //report = new Stimulsoft.Report.StiReport();\r\n\r\n //constructor(private http: HttpClient) {\r\n //}\r\n\r\n //ngOnInit() {\r\n // Stimulsoft.Base.StiLicense.key =\r\n // \"6vJhGtLLLz2GNviWmUTrhSqnOItdDwjBylQzQcAOiHn0s4gy0Fr5YoUZ9V00Y0igCSFQzwEqYBh/N77k\" +\r\n // \"4f0fWXTHW5rqeBNLkaurJDenJ9o97TyqHs9HfvINK18Uwzsc/bG01Rq+x3H3Rf+g7AY92gvWmp7VA2Ux\" +\r\n // \"a30Q97f61siWz2dE5kdBVcCnSFzC6awE74JzDcJMj8OuxplqB1CYcpoPcOjKy1PiATlC3UsBaLEXsok1\" +\r\n // \"xxtRMQ283r282tkh8XQitsxtTczAJBxijuJNfziYhci2jResWXK51ygOOEbVAxmpflujkJ8oEVHkOA/C\" +\r\n // \"jX6bGx05pNZ6oSIu9H8deF94MyqIwcdeirCe60GbIQByQtLimfxbIZnO35X3fs/94av0ODfELqrQEpLr\" +\r\n // \"pU6FNeHttvlMc5UVrT4K+8lPbqR8Hq0PFWmFrbVIYSi7tAVFMMe2D1C59NWyLu3AkrD3No7YhLVh7LV0\" +\r\n // \"Tttr/8FrcZ8xirBPcMZCIGrRIesrHxOsZH2V8t/t0GXCnLLAWX+TNvdNXkB8cF2y9ZXf1enI064yE5dw\" +\r\n // \"Ms2fQ0yOUG/xornE\";\r\n\r\n // this.options.appearance.fullScreenMode = false;\r\n // this.options.toolbar.displayMode = Stimulsoft.Viewer.StiToolbarDisplayMode.Separated;\r\n\r\n // var report = Stimulsoft.Report.StiReport.createNewReport();\r\n // report.loadFile(\"reports/number&name&price.mrt\");\r\n // this.http.get('http://localhost:3000/ProductListForPrintDataSource').subscribe(data => {\r\n // report.loadDocument(data);\r\n // this.viewer.report = report;\r\n // this.viewer.renderHtml('viewerContent');\r\n // });\r\n // }\r\n options: any = new Stimulsoft.Designer.StiDesignerOptions()\r\n designer: any = new Stimulsoft.Designer.StiDesigner(this.options, \"StiDesigner\", false);\r\n\r\n //options: any = new Stimulsoft.Viewer.StiViewerOptions();\r\n //viewer: any = new Stimulsoft.Viewer.StiViewer(this.options, 'StiViewer', false);\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n Stimulsoft.Base.StiLicense.key =\r\n //\"6vJhGtLLLz2GNviWmUTrhSqnOItdDwjBylQzQcAOiHl2AD0gPVknKsaW0un+3PuM6TTcPMUAWEURKXNso0e\" +\r\n //\"5OFPaZYasFtsxNoDemsFOXbvf7SIcnyAkFX/4u37NTfx7g+0IqLXw6QIPolr1PvCSZz8Z5wjBNakeCVozGG\" +\r\n //\"OiuCOQDy60XNqfbgrOjxgQ5y/u54K4g7R/xuWmpdx5OMAbUbcy3WbhPCbJJYTI5Hg8C/gsbHSnC2EeOCuyA\" +\r\n //\"9ImrNyjsUHkLEh9y4WoRw7lRIc1x+dli8jSJxt9C+NYVUIqK7MEeCmmVyFEGN8mNnqZp4vTe98kxAr4dWSm\" +\r\n //\"hcQahHGuFBhKQLlVOdlJ/OT+WPX1zS2UmnkTrxun+FWpCC5bLDlwhlslxtyaN9pV3sRLO6KXM88ZkefRrH2\" +\r\n //\"1DdR+4j79HA7VLTAsebI79t9nMgmXJ5hB1JKcJMUAgWpxT7C7JUGcWCPIG10NuCd9XQ7H4ykQ4Ve6J2LuNo\" +\r\n //\"9SbvP6jPwdfQJB6fJBnKg4mtNuLMlQ4pnXDc+wJmqgw25NfHpFmrZYACZOtLEJoPtMWxxwDzZEYYfT\";\r\n \"6vJhGtLLLz2GNviWmUTrhSqnOItdDwjBylQzQcAOiHn0s4gy0Fr5YoUZ9V00Y0igCSFQzwEqYBh/N77k\" +\r\n \"4f0fWXTHW5rqeBNLkaurJDenJ9o97TyqHs9HfvINK18Uwzsc/bG01Rq+x3H3Rf+g7AY92gvWmp7VA2Ux\" +\r\n \"a30Q97f61siWz2dE5kdBVcCnSFzC6awE74JzDcJMj8OuxplqB1CYcpoPcOjKy1PiATlC3UsBaLEXsok1\" +\r\n \"xxtRMQ283r282tkh8XQitsxtTczAJBxijuJNfziYhci2jResWXK51ygOOEbVAxmpflujkJ8oEVHkOA/C\" +\r\n \"jX6bGx05pNZ6oSIu9H8deF94MyqIwcdeirCe60GbIQByQtLimfxbIZnO35X3fs/94av0ODfELqrQEpLr\" +\r\n \"pU6FNeHttvlMc5UVrT4K+8lPbqR8Hq0PFWmFrbVIYSi7tAVFMMe2D1C59NWyLu3AkrD3No7YhLVh7LV0\" +\r\n \"Tttr/8FrcZ8xirBPcMZCIGrRIesrHxOsZH2V8t/t0GXCnLLAWX+TNvdNXkB8cF2y9ZXf1enI064yE5dw\" +\r\n \"Ms2fQ0yOUG/xornE\";\r\n this.options = new Stimulsoft.Designer.StiDesignerOptions();\r\n this.options.toolbar.showFileMenu = false;\r\n this.options.toolbar.showPageButton = false;\r\n this.options.toolbar.showInsertButton = false;\r\n this.options.toolbar.showLayoutButton = false;\r\n this.options.toolbar.showSetupToolboxButton = false;\r\n this.options.dictionary.showDictionary = false;\r\n this.options.appearance.showReportTree = false;\r\n this.options.appearance.showPropertiesGrid = false;\r\n this.options.appearance.showTooltips = false;\r\n\r\n this.designer = new Stimulsoft.Designer.StiDesigner(this.options, 'StiDesigner', false);\r\n this.designer.report = new Stimulsoft.Report.StiReport();\r\n this.designer.report.loadFile('/reports/number.mrt');\r\n var dsDemo = new Stimulsoft.System.Data.DataSet();\r\n dsDemo.readJsonFile(\"data/Demo.json\");\r\n this.designer.report.regData(\"Demo\", null, dsDemo);\r\n this.designer.renderHtml('designer');\r\n //var report = Stimulsoft.Report.StiReport.createNewReport();\r\n //report.loadFile(\"reports/report3.mrt\");\r\n\r\n //report.dictionary.databases.clear();\r\n\r\n //var dsDemo = new Stimulsoft.System.Data.DataSet();\r\n //dsDemo.readJsonFile(\"data/Demo.json\");\r\n //report.regData(\"Demo\", null, dsDemo);\r\n\r\n ////this.options.appearance.fullScreenMode = false;\r\n ////this.options.toolbar.displayMode = Stimulsoft.Viewer.StiToolbarDisplayMode.Separated;\r\n\r\n //this.designer.report = report;\r\n //this.designer.renderHtml(\"content\");\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","\n\nimport { Injectable } from '@angular/core';\nimport { OAuthStorage } from 'angular-oauth2-oidc';\n\nimport { LocalStoreManager } from '../services/local-store-manager.service';\n\n@Injectable()\nexport class AuthStorage implements OAuthStorage {\n\n constructor(private localStorage: LocalStoreManager) {\n }\n\n static RememberMe = false;\n private dbKeyPrefix = 'AUTH:';\n\n getItem(key: string): string {\n return this.localStorage.getData(this.dbKeyPrefix + key);\n }\n\n removeItem(key: string): void {\n this.localStorage.deleteData(this.dbKeyPrefix + key);\n }\n\n setItem(key: string, data: string): void {\n if (AuthStorage.RememberMe) {\n this.localStorage.savePermanentData(data, this.dbKeyPrefix + key);\n } else {\n this.localStorage.saveSyncedSessionData(data, this.dbKeyPrefix + key);\n }\n }\n}\n","\n\nexport class Warning {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(txtmessage?: string) {\n\n this.txtmessage = txtmessage;\n }\n\n public txtmessage: string;\n\n}\n","\n\nexport class VMSaleNewContractProduct_PrintInvoice {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(NCPYear?: number, NCPPartCode?: number, NCPCode?: number, NCPProductCode?: string, BarCode?: string,DCDesc?: string, NCPAmount?: number, NCPPrice?: number, TotalPrice?: number,\n NCPDiscountPercent?: number, TotalPriceWithDiscount?: number) {\n this.ncpYear = NCPYear;\n this.ncpPartCode = NCPPartCode;\n this.ncpCode = NCPCode;\n this.ncpProductCode = NCPProductCode;\n this.barCode = BarCode;\n this.dcDesc = DCDesc;\n this.ncpAmount = NCPAmount;\n this.ncpPrice = NCPPrice;\n this.totalPrice = TotalPrice;\n this.ncpDiscountPercent = NCPDiscountPercent;\n this.totalPriceWithDiscount = TotalPriceWithDiscount; \n }\n public ncpYear: number;\n public ncpPartCode: number;\n public ncpCode: number;\n public ncpProductCode: string;\n public barCode: string;\n public dcDesc: string;\n public ncpAmount: number;\n public ncpPrice: number;\n public totalPrice: number;\n public ncpDiscountPercent: number;\n public totalPriceWithDiscount: number; \n\n} \n\nexport class VMSaleNewContractProduct_PrintInvoice_String {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(NCPYear?: string, NCPPartCode?: string, NCPCode?: string, NCPProductCode?: string, BarCode?: string, DCDesc?: string, NCPAmount?: string, NCPPrice?: string, TotalPrice?: string,\n NCPDiscountPercent?: string, TotalPriceWithDiscount?: string, totalPriceDiscount?: string) {\n this.ncpYear = NCPYear;\n this.ncpPartCode = NCPPartCode;\n this.ncpCode = NCPCode;\n this.ncpProductCode = NCPProductCode;\n this.barCode = BarCode;\n this.dcDesc = DCDesc;\n this.ncpAmount = NCPAmount;\n this.ncpPrice = NCPPrice;\n this.totalPrice = TotalPrice;\n this.ncpDiscountPercent = NCPDiscountPercent;\n this.totalPriceWithDiscount = TotalPriceWithDiscount;\n this.totalPriceDiscount = totalPriceDiscount;\n }\n public ncpYear: string;\n public ncpPartCode: string;\n public ncpCode: string;\n public ncpProductCode: string;\n public barCode: string;\n public dcDesc: string;\n public ncpAmount: string;\n public ncpPrice: string;\n public totalPrice: string;\n public ncpDiscountPercent: string;\n public totalPriceWithDiscount: string;\n public totalPriceDiscount: string;\n\n} \n","import { IInstallmentsDetaile } from \"./installment-detail.model\";\r\n\r\nexport class IInstallments {\r\n\r\n constructor(\r\n id?: number,\r\n spiYear?: number,\r\n spiPartCode?: number,\r\n spiCode?: number,\r\n prePayment?: number,\r\n remainingPayment?: number,\r\n numberInstallments?: number,\r\n installmentInterest?: number,\r\n finalAmount?: number,\r\n creditInstitutionPlansForCustomersId?: number,\r\n tbl_InstallmentsDetails?: IInstallmentsDetaile[]\r\n ) {\r\n this.id = id;\r\n this.spiYear = spiYear;\r\n this.spiPartCode = spiPartCode;\r\n this.spiCode = spiCode;\r\n this.prePayment = prePayment;\r\n this.remainingPayment = remainingPayment;\r\n this.numberInstallments = numberInstallments;\r\n this.installmentInterest = installmentInterest;\r\n this.finalAmount = finalAmount;\r\n this.tbl_InstallmentsDetails = tbl_InstallmentsDetails;\r\n this.creditInstitutionPlansForCustomersId = creditInstitutionPlansForCustomersId;\r\n }\r\n public id: number;\r\n public spiYear: number;\r\n public spiPartCode: number;\r\n public spiCode: number;\r\n public prePayment: number;\r\n public remainingPayment: number;\r\n public numberInstallments: number;\r\n public installmentInterest: number;\r\n public finalAmount: number;\r\n public creditInstitutionPlansForCustomersId: number;\r\n public tbl_InstallmentsDetails: IInstallmentsDetaile[]\r\n}\r\n","export class SaleInvoiceDetail {\n idyear: number;\n idcode: number;\n idproductCode: string;\n idid: number;\n idamount: number;\n idunitPrice: number;\n idtotalPrice: number;\n iddiscount: number;\n idtotalAfterDiscount: number;\n idtax: number;\n idtotalPayment: number;\n}\n","import { Directive, HostListener } from '@angular/core';\nimport { Location } from '@angular/common';\n\n@Directive({\n selector: '[backButton]'\n})\nexport class BackButtonDirective {\n constructor(private location: Location) { }\n\n @HostListener('click')\n onClick() {\n this.location.back();\n }\n}","import {Injectable} from '@angular/core';\r\nimport {retry} from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ColorSettingsService {\r\n\r\n changeColor(value) {\r\n switch (value) {\r\n case 'تایید شده':\r\n return 'accept';\r\n case 'در حال سفارش':\r\n return 'ordering';\r\n case 'اتمام اعتبار':\r\n return 'expert';\r\n case 'ابطال شده':\r\n return 'canceld';\r\n case 'در حال ارسال':\r\n return 'sending';\r\n case 'در حال بررسی':\r\n return 'sending';\r\n case 'بایگانی':\r\n return 'archive';\r\n case 'تایید':\r\n return 'accept';\r\n case 'ابطال':\r\n return 'canceld';\r\n default:\r\n return 'other';\r\n }\r\n }\r\n\r\n assignClassStatus(value: number) {\r\n switch (value) {\r\n case 1: // بررسی نشده\r\n return \"other\";\r\n case 2: // تایید شده\r\n return 'accept';\r\n case 3: // ردشده\r\n return 'canceld';\r\n case 4: // مدارک ناقص\r\n return \"ordering\";\r\n case 5: // بدون مدارک\r\n return \"archive\";\r\n case 6: // تایید نهایی\r\n return \"archive\";\r\n default:\r\n return 'other';\r\n }\r\n }\r\n\r\n paymentType(value) {\r\n switch (value) {\r\n case 1: // نقدی\r\n return \"cash\";\r\n case 2: // اقساط\r\n return 'installments';\r\n }\r\n }\r\n\r\n\r\n diffrentContractPrice(value: number) {\r\n // cash desk\r\n if (value === 0) {\r\n return \"green\";\r\n } else if (value < 0) {\r\n return \"red\";\r\n } else {\r\n return \"orange\";\r\n }\r\n }\r\n\r\n changeColorBarcode(value: number) {\r\n if (value === 1) {\r\n return \"light-green-back\";\r\n } else {\r\n return 'white-back';\r\n }\r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { ConfirmMessageModel } from '../../models/utilities/confirm-message.model';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'confirm-message',\r\n templateUrl: './confirm-message.component.html',\r\n styleUrls: ['./confirm-message.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class ConfirmMessageComponent {\r\n\r\n @Input() confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n @Output() confirmResult = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() { }\r\n\r\n confirmMessage(event: boolean) {\r\n this.confirmResult.emit(event);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n X\r\n priority_high\r\n close\r\n done\r\n \r\n
\r\n
\r\n {{ confirmMessageObj.title }}\r\n {{ confirmMessageObj.text }}\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'price-payment-form',\n templateUrl: './price-payment-form.component.html',\n animations: [fadeInOut]\n})\nexport class PricePaymentFormComponent {\n}\n","
\r\n
\r\n\r\n\r\n
\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 } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'reports-marketer',\n templateUrl: './reports-marketer.component.html',\n animations: [fadeInOut]\n})\nexport class ReportsMarketerComponent {\n}\n","
\r\n

\r\n \r\n گزارشات\r\n

\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n","export default __webpack_public_path__ + \"logo-header.png\";","\n\nimport { Directive, Input, Output, EventEmitter } from '@angular/core';\n\n\n@Directive({\n selector: '[lastElement]'\n})\nexport class LastElementDirective {\n @Input()\n set lastElement(isLastElement: boolean) {\n\n if (isLastElement) {\n setTimeout(() => {\n this.lastFunction.emit();\n });\n }\n }\n\n @Output()\n lastFunction = new EventEmitter();\n}\n","\n\nimport { SaleLoadingCommand } from \"./SaleLoadingCommand.model\";\nimport { VMSaleSubLoadingCommands_BarCode } from \"./VMSaleSubLoadingCommands_BarCode.model\";\n\n \n\nexport class VMSelectSaleSubLoadingCommand_BarCode {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(saleLoadingCommand?: SaleLoadingCommand, rowsNewProduct?: VMSaleSubLoadingCommands_BarCode[], code?: number) {\n\n this.saleLoadingCommand = saleLoadingCommand;\n this.rowsNewProduct = rowsNewProduct;\n this.code = code;\n\n }\n\n public saleLoadingCommand: SaleLoadingCommand = new SaleLoadingCommand();\n public rowsNewProduct: VMSaleSubLoadingCommands_BarCode[] = [];\n public code: number;\n\n}\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { group } from '../../models/group.model';\r\nimport { ViewModelUser } from '../../models/CMainCode.model';\r\nimport { SaleCustomerService } from '../../services/SaleCustomer.service';\r\nimport { Ostan } from '../../models/Ostan.model';\r\nimport { City } from '../../models/City.model';\r\nimport { PubCar } from '../../models/PubCar.model';\r\nimport { PubCarKind } from '../../models/PubCarKind.model';\r\n\r\n@Component({\r\n selector: 'car-info',\r\n templateUrl: './car-info.component.html',\r\n styleUrls: ['./car-info.component.scss']\r\n})\r\nexport class carInfoComponent {\r\n\r\n public isEditMode = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public objpubcar: PubCar = new PubCar();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n submitted=false;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allPubCarKind: PubCarKind[] = [];\r\n public CCarKindCodeobj: number = 1;\r\n public firstNum: string = '';\r\n public secoundNum: string = '';\r\n public lastNum: string = '';\r\n public alphabet: string = 'الف';\r\n public pelaqueNumber: string = '';\r\n\r\n public alphabetArray = ['الف', 'ب', 'پ', 'ت', 'ث', 'ج', 'چ', 'ح', 'خ', 'د', 'ذ', 'ر', 'ز', 'ژ', 'س', 'ش', 'ص', 'ض', 'ط', 'ظ', 'ع', 'غ', 'ف', 'ق', 'ک', 'گ', 'ل', 'م', 'ن', 'و', 'ه', 'ی']\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n @ViewChild('Ccode', { static: false })\r\n public Ccode;\r\n\r\n @ViewChild('Cnumer', { static: false })\r\n public Cnumer;\r\n\r\n @ViewChild('CserilaNum', { static: false })\r\n public CserilaNum;\r\n\r\n @ViewChild('ClastDriverCode', { static: false })\r\n public ClastDriverCode;\r\n\r\n @ViewChild('CcarKindCode', { static: false })\r\n public CcarKindCode;\r\n\r\n @ViewChild('DStore', { static: false })\r\n public DStore;\r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService, private SaleCustomerService: SaleCustomerService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.loadPubKindCar();\r\n this.accountService.GetNewCarsCode().subscribe(res => this.MethodloadNewCode(res));\r\n }\r\n\r\n private loadPubKindCar() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getPubCarKinds().subscribe(results => this.onCurrentHesabKindDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private onCurrentHesabKindDataLoadSuccessful(PubCarKindObj: PubCarKind[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allPubCarKind = PubCarKindObj;\r\n }\r\n\r\n MethodloadNewCode(loadNewCode: number) {\r\n this.objpubcar.ccode = loadNewCode;\r\n }\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n if (this.isNewCustomer) {\r\n this.objpubcar.CcarKindCode = this.CCarKindCodeobj;\r\n this.objpubcar.ClastDriverCode = 0;\r\n this.objpubcar.DStore = true;\r\n this.pelaqueNumber = this.secoundNum + '/' + this.lastNum + this.alphabet + this.firstNum;\r\n this.objpubcar.cnumer = this.pelaqueNumber;\r\n this.accountService.newPubCars(this.objpubcar).subscribe(s => this.saveSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n else {\r\n }\r\n }\r\n\r\n cancel() {\r\n this.objpubcar = new PubCar();\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n private saveSubSuccessHelper() {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', ` خودرو با موفقیت ایجاد شد`, MessageSeverity.success);\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n newCar(allkind: PubCarKind[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.objpubcar = new PubCar();\r\n this.edit();\r\n return this.objpubcar;\r\n }\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.objpubcar = new PubCar();\r\n Object.assign(this.objpubcar, this.objpubcar);\r\n } else {\r\n if (!this.objpubcar) {\r\n this.objpubcar = new PubCar();\r\n }\r\n }\r\n this.isEditMode = true;\r\n }\r\n\r\n onChange(number?: number) {\r\n this.CCarKindCodeobj = number;\r\n }\r\n\r\n private saveSuccessHelper(objcar?: PubCar) {\r\n if (objcar) {\r\n Object.assign(this.objpubcar, objcar);\r\n }\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n Object.assign(this.objpubcar, this.objpubcar);\r\n this.resetForm();\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('Success', `خودرو با موفقیت ایجاد شد`, MessageSeverity.success);\r\n\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', `تغییرات خودرو با موفقیت انجام شد`, MessageSeverity.success);\r\n\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به خودرو با موفقیت ثبت شد', MessageSeverity.success);\r\n //this.refreshLoggedInUser();\r\n }\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n //private refreshLoggedInUser() {\r\n // this.accountService.refreshLoggedInUser()\r\n // .subscribe(user => {\r\n // },\r\n // error => {\r\n // this.alertService.resetStickyMessage();\r\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n // });\r\n //}\r\n\r\n resetForm(replace = false) {\r\n //if (!replace) {\r\n // this.form.reset();\r\n //} else {\r\n // this.formResetToggle = false;\r\n\r\n // setTimeout(() => {\r\n // this.formResetToggle = true;\r\n // });\r\n //}\r\n }\r\n\r\n private testIsRoleUserCountChanged(currentUser: SaleCustomer, editedUser: SaleCustomer) {\r\n\r\n const rolesAdded = this.isNewCustomer ? editedUser.group : editedUser.group.filter(role => currentUser.group.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewCustomer ? [] : currentUser.group.filter(role => editedUser.group.indexOf(role) == -1);\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n\r\n getGroupByName(name: string) {\r\n return this.allPubCarKind.find((r) => r.CarKind == name);\r\n }\r\n\r\n editcustomer(sale: PubCar, allPUbkind: PubCarKind[]) {\r\n if (sale) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = false;\r\n }\r\n }\r\n\r\n onSubmit(){}\r\n\r\n\r\n}\r\n","
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
{{pelaqueNumber}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \"Alternate\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n

You submitted successfully!

\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n","\n\nimport { Injectable } from '@angular/core';\nimport { Router, NavigationExtras } from '@angular/router';\nimport { Observable, Subject, from, throwError } from 'rxjs';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { OAuthService } from 'angular-oauth2-oidc';\n\nimport { LocalStoreManager } from './local-store-manager.service';\nimport { AuthStorage } from './auth-storage';\nimport { ConfigurationService } from './configuration.service';\nimport { DBkeys } from './db-Keys';\nimport { JwtHelper } from './jwt-helper';\nimport { Utilities } from './utilities';\nimport { AccessToken } from '../models/access-token.model';\nimport { User } from '../models/user.model';\nimport { PermissionValues } from '../models/permission.model';\n\n\n@Injectable()\nexport class AuthService {\n private readonly _discoveryDocUrl: string = '/.well-known/openid-configuration';\n\n private get discoveryDocUrl() { return this.configurations.tokenUrl + this._discoveryDocUrl; }\n public get baseUrl() { return this.configurations.baseUrl; }\n public get loginUrl() { return this.configurations.loginUrl; }\n public get homeUrl() { return this.configurations.homeUrl; }\n\n public loginRedirectUrl: string;\n public logoutRedirectUrl: string;\n\n public reLoginDelegate: () => void;\n\n private previousIsLoggedInCheck = false;\n private _loginStatus = new Subject();\n\n constructor(\n private router: Router,\n private oauthService: OAuthService,\n private configurations: ConfigurationService,\n private localStorage: LocalStoreManager\n ) {\n\n this.initializeLoginStatus();\n }\n\n private initializeLoginStatus() {\n this.localStorage.getInitEvent().subscribe(() => {\n this.reevaluateLoginStatus();\n });\n }\n\n gotoPage(page: string, preserveParams = true) {\n\n const navigationExtras: NavigationExtras = {\n queryParamsHandling: preserveParams ? 'merge' : '', preserveFragment: preserveParams\n };\n\n this.router.navigate([page], navigationExtras);\n }\n\n gotoHomePage() {\n this.router.navigate([this.homeUrl]);\n }\n\n redirectLoginUser() {\n const redirect = this.loginRedirectUrl && this.loginRedirectUrl != '/' && this.loginRedirectUrl != ConfigurationService.defaultHomeUrl ? this.loginRedirectUrl : this.homeUrl;\n this.loginRedirectUrl = null;\n\n const urlParamsAndFragment = Utilities.splitInTwo(redirect, '#');\n const urlAndParams = Utilities.splitInTwo(urlParamsAndFragment.firstPart, '?');\n\n const navigationExtras: NavigationExtras = {\n fragment: urlParamsAndFragment.secondPart,\n queryParams: Utilities.getQueryParamsFromString(urlAndParams.secondPart),\n queryParamsHandling: 'merge'\n };\n\n this.router.navigate([urlAndParams.firstPart], navigationExtras);\n }\n\n redirectLogoutUser() {\n const redirect = this.logoutRedirectUrl ? this.logoutRedirectUrl : this.loginUrl;\n this.logoutRedirectUrl = null;\n\n this.router.navigate([redirect]);\n }\n\n redirectForLogin() {\n this.loginRedirectUrl = this.router.url;\n this.router.navigate([this.loginUrl]);\n }\n\n reLogin() {\n if (this.reLoginDelegate) {\n this.reLoginDelegate();\n } else {\n this.redirectForLogin();\n }\n }\n\n refreshLogin(): Observable {\n if (this.oauthService.discoveryDocumentLoaded) {\n return from(this.oauthService.refreshToken()).pipe(\n map(() => this.processLoginResponse(this.oauthService.getAccessToken(), this.rememberMe)));\n } else {\n this.configureOauthService(this.rememberMe);\n return from(this.oauthService.loadDiscoveryDocument(this.discoveryDocUrl)).pipe(mergeMap(() => this.refreshLogin()));\n }\n }\n\n login(userName: string, password: string, rememberMe?: boolean) {\n if (this.isLoggedIn) {\n this.logout();\n }\n\n this.configureOauthService(rememberMe);\n\n return from(this.oauthService.loadDiscoveryDocument(this.discoveryDocUrl)).pipe(mergeMap(() => {\n return from(this.oauthService.fetchTokenUsingPasswordFlow(userName, password)).pipe(\n map(() => this.processLoginResponse(this.oauthService.getAccessToken(), rememberMe))\n );\n }));\n }\n\n private configureOauthService(rememberMe?: boolean) {\n this.oauthService.issuer = this.baseUrl;\n this.oauthService.clientId = 'quickapp_spa';\n this.oauthService.scope = 'openid email phone profile offline_access roles quickapp_api';\n this.oauthService.skipSubjectCheck = true;\n this.oauthService.dummyClientSecret = 'not_used';\n\n AuthStorage.RememberMe = rememberMe;\n }\n\n\n private processLoginResponse(accessToken: string, rememberMe: boolean) {\n\n if (accessToken == null) {\n throw new Error('accessToken cannot be null');\n }\n\n const jwtHelper = new JwtHelper();\n const decodedAccessToken = jwtHelper.decodeToken(accessToken) as AccessToken;\n\n const permissions: PermissionValues[] = Array.isArray(decodedAccessToken.permission) ? decodedAccessToken.permission : [decodedAccessToken.permission];\n\n if (!this.isLoggedIn) {\n this.configurations.import(decodedAccessToken.configuration);\n }\n\n const user = new User(\n decodedAccessToken.sub,\n decodedAccessToken.name,\n decodedAccessToken.fullname,\n decodedAccessToken.email,\n decodedAccessToken.jobtitle,\n decodedAccessToken.phone_number,\n Array.isArray(decodedAccessToken.role) ? decodedAccessToken.role : [decodedAccessToken.role], decodedAccessToken.CMainCode, decodedAccessToken.activityyear);\n user.isEnabled = true;\n\n this.saveUserDetails(user, permissions, rememberMe);\n\n this.reevaluateLoginStatus(user);\n\n\n\n\n\n\n return user;\n }\n\n\n\n MethodTestCmain(res: any) {\n\n }\n\n private saveUserDetails(user: User, permissions: PermissionValues[], rememberMe: boolean) {\n if (rememberMe) {\n this.localStorage.savePermanentData(permissions, DBkeys.USER_PERMISSIONS);\n this.localStorage.savePermanentData(user, DBkeys.CURRENT_USER);\n } else {\n this.localStorage.saveSyncedSessionData(permissions, DBkeys.USER_PERMISSIONS);\n this.localStorage.saveSyncedSessionData(user, DBkeys.CURRENT_USER);\n }\n\n this.localStorage.savePermanentData(rememberMe, DBkeys.REMEMBER_ME);\n }\n\n logout(): void {\n this.localStorage.deleteData(DBkeys.USER_PERMISSIONS);\n this.localStorage.deleteData(DBkeys.CURRENT_USER);\n this.localStorage.deleteData(DBkeys.CURRENT_USER);\n this.configurations.clearLocalChanges();\n this.oauthService.logOut(true);\n this.reevaluateLoginStatus();\n }\n\n private reevaluateLoginStatus(currentUser?: User) {\n const user = currentUser || this.localStorage.getDataObject(DBkeys.CURRENT_USER);\n const isLoggedIn = user != null;\n\n if (this.previousIsLoggedInCheck != isLoggedIn) {\n setTimeout(() => {\n this._loginStatus.next(isLoggedIn);\n });\n }\n\n this.previousIsLoggedInCheck = isLoggedIn;\n }\n\n getLoginStatusEvent(): Observable {\n return this._loginStatus.asObservable();\n }\n\n get currentUser(): User {\n\n const user = this.localStorage.getDataObject(DBkeys.CURRENT_USER);\n this.reevaluateLoginStatus(user);\n\n return user;\n }\n\n get userPermissions(): PermissionValues[] {\n return this.localStorage.getDataObject(DBkeys.USER_PERMISSIONS) || [];\n }\n\n get accessToken(): string {\n return this.oauthService.getAccessToken();\n }\n\n get accessTokenExpiryDate(): Date {\n return new Date(this.oauthService.getAccessTokenExpiration());\n }\n\n get isSessionExpired(): boolean {\n if (this.accessTokenExpiryDate == null) {\n return true;\n }\n\n return this.accessTokenExpiryDate.valueOf() <= new Date().valueOf();\n }\n\n get refreshToken(): string {\n return this.oauthService.getRefreshToken();\n }\n\n get isLoggedIn(): boolean {\n return this.currentUser != null;\n }\n\n get rememberMe(): boolean {\n return this.localStorage.getDataObject(DBkeys.REMEMBER_ME) == true;\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ConfigurationService } from '../configuration.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CustomerClubService {\r\n baseUrl: string = \"/api/CustomerClubs/\";\r\n get baseAddress() { return this.configurations.baseUrl + this.baseUrl }\r\n\r\n constructor(\r\n private configurations: ConfigurationService,\r\n private http: HttpClient) { }\r\n\r\n getCustomerClubByNationalCode(customerNationalCode: string, cMainCode: number): Observable {\r\n return this.http.get(this.baseAddress + \"get-customer-by-nationalcode/\" + customerNationalCode + \"/\" + cMainCode);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {PreInvoice} from '../../../models/PreInvoice.model';\nimport {AlertService, MessageSeverity} from '../../../services/alert.service';\nimport {SalePreInvoiceForContractCheckInfoModel} from '../../../models/SalePreInvoiceForContractCheckInfo.model';\nimport {InputPricePaymentFormInvoiceSaleModel} from '../../../models/InputPricePaymentFormInvoiceSale.model';\nimport {SaleSubReceipt} from \"../../../models/SaleReceipts/SaleSubReceipt.model\";\nimport {ConfirmMessageEnum} from \"../../../enums/confirm-message.enum\";\nimport {ConfirmMessageModel} from \"../../../models/utilities/confirm-message.model\";\nimport {AccountService} from \"../../../services/account.service\";\nimport {SaleReceiptService} from \"../../../services/receipt-services/sale-receipt.service\";\nimport {SaleReceipt} from \"../../../models/SaleReceipts/SaleReceipt.model\";\nimport {AuthService} from \"../../../services/auth.service\";\nimport * as moment from \"jalali-moment\";\nimport {Utilities} from \"../../../services/utilities\";\nimport {SharedService} from \"../../../services/Shared.service\";\nimport {environment} from \"../../../../environments/environment\";\nimport {SaleSubReceiptSelect} from \"../../../models/SaleSubReceiptSelect.model\";\n\ndeclare var $: any;\n\n@Component({\n selector: 'app-sale-receipt-check',\n templateUrl: './sale-receipt-check.component.html',\n styleUrls: ['./sale-receipt-check.component.scss']\n})\nexport class SaleReceiptCheckComponent implements OnInit {\n\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\n public checkoutConfirm = false;\n public dateObjectRSDate = moment();\n public domainName = environment.production ? 'https://172.16.60.10/' : 'https://localhost:44350/';\n\n public loadingIndicator = false;\n public enableSummary = true;\n public summaryPosition = 'bottom';\n public SerialNumber = \"\";\n public isEdit = false;\n public isEditContractCode = false;\n public checkAmount = '';\n public uploadCheckFiles: File;\n public showImageFiles: File;\n public listUploadFileName: string;\n public columns: any[] = [];\n public checkImage: File;\n public checkImageServer = '';\n public checkImageStatus = true;\n public countOfCheck = 1;\n @Input() oldcheckDetailList: SalePreInvoiceForContractCheckInfoModel[];\n @Input() saleInvoiceDetail: PreInvoice;\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;\n @Output() saveCheckDetailStatus = new EventEmitter();\n\n constructor(\n private accountService: AccountService,\n private saleReceiptService: SaleReceiptService,\n private sharedService: SharedService,\n private alertService: AlertService,\n private authService: AuthService) {\n }\n\n ngOnInit() {\n }\n\n getLoadGrid() {\n return this.inputPricePaymentFormInvoiceSale.saleReceiptList.filter(x => x.rsKind === 2);\n }\n\n\n fileChangeEvent(event: FileList) {\n if (event.length > 0) {\n this.listUploadFileName = (event.item(0).name);\n if (event.item(0).size <= 1000000 && event.item(0).type == \"image/jpeg\") {\n this.uploadCheckFiles = event.item(0);\n if (this.uploadCheckFiles && event.length != 0) {\n const reader = new FileReader();\n reader.onload = (event2: any) => {\n this.showImageFiles[this.countOfCheck - 1] = event2.target.result;\n };\n reader.readAsDataURL(this.uploadCheckFiles);\n }\n } else {\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\n }\n }\n }\n\n save() {\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\n this.accountService.GetRSerialCheck(this.SaleSubReceiptObj.rSerial).subscribe(\n results => {\n const checkComplet = this.onCurrentCheck(results);\n if (checkComplet) {\n if (this.SaleSubReceiptObj.rsPrice > 0) {\n if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice === 0) {\n this.alertService.showStickyMessage('عدم تایید', ' قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" کامل پرداخت شده است. ', MessageSeverity.error);\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice < this.SaleSubReceiptObj.rsPrice) {\n this.alertService.showStickyMessage('عدم تایید', 'مبلغ پرداختی وارد شده بیشتر از مانده بدهی قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" می باشد. ', MessageSeverity.error);\n } else if (this.inputPricePaymentFormInvoiceSale.remindPaymentInvoice >= this.SaleSubReceiptObj.rsPrice) {\n\n const formData = new FormData;\n formData.append((1).toString(), this.uploadCheckFiles);\n this.saleReceiptService.insertUploadCustomerImage(\n this.saleInvoiceDetail.spiCustomerCode.toString(),\n this.saleInvoiceDetail.spiSubCustomerCode.toString(),\n this.saleInvoiceDetail.contractCode.toString(),\n this.SaleSubReceiptObj.rSerial.toString(),\n formData)\n .subscribe(\n (res) => {\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\n this.SaleReceiptObj.rnum = 0;\n this.SaleReceiptObj.ryear = this.saleInvoiceDetail.spiYear;\n this.SaleReceiptObj.rmainCustomerCode = this.saleInvoiceDetail.spiCustomerCode;\n this.SaleReceiptObj.rsubCustomerCode = this.saleInvoiceDetail.spiSubCustomerCode;\n this.SaleReceiptObj.rpartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleReceiptObj.rkind = 1;\n this.SaleReceiptObj.rreceivedFor = -1;\n this.SaleReceiptObj.rreceivedNumber = this.saleInvoiceDetail.spiCode;\n this.SaleReceiptObj.rreceivedYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.risNotInCycle = false;\n this.SaleReceiptObj.rcontractYear = +this.authService.currentUser.phoneNumber;\n this.SaleReceiptObj.rcontractCode = this.saleInvoiceDetail.contractCode;\n this.SaleReceiptObj.sanavat = false;\n this.SaleReceiptObj.UserId = 0;\n this.SaleSubReceiptObj.rsKind = 2;\n this.SaleSubReceiptObj.rsPartCode = this.saleInvoiceDetail.spiPartCode;\n this.SaleSubReceiptObj.rsYear = this.saleInvoiceDetail.spiYear;\n this.SaleSubReceiptObj.rsReceiptKind = 1;\n this.SaleSubReceiptObj.rsNum = 0;\n this.SaleSubReceiptObj.rsDate = this.dateObjectRSDate.toDate().toLocaleDateString('en-US').toString();\n this.SaleSubReceiptObj.saleReceiptsId = 0;\n this.SaleReceiptObj.SaleSubReceipt = [];\n this.SaleReceiptObj.SaleSubReceipt.push(this.SaleSubReceiptObj);\n this.saleReceiptService.InsertSaleReceipt(this.SaleReceiptObj).subscribe(result => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' ثبت شد. ', MessageSeverity.success);\n this.SaleSubReceiptObj = new SaleSubReceipt();\n this.SaleSubReceiptObj.rsDes = \"\";\n this.SaleSubReceiptObj.rSerial = \"\";\n this.SaleSubReceiptObj.rsPrice = 0;\n this.alertService.stopLoadingMessage();\n this.saveCheckDetailStatus.emit(true);\n\n } else if (result.actionStatus === 1) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n } else if (result.actionStatus === 2) {\n this.alertService.showMessage('عدم تایید', result.actionDescription, MessageSeverity.error);\n }\n this.alertService.stopLoadingMessage();\n }, error => {\n });\n },\n (err) => {\n this.alertService.showMessage('عدم تایید', \"خطا در آپلود تصویر صورت گرفته است لطفا مجددا اقدام نمایید\", MessageSeverity.error);\n });\n } else {\n this.alertService.showMessage('عدم تایید', 'مانده بدهی برای قرارداد شماره \\\"' + this.SaleReceiptObj.rcontractCode + '\\\" با مبلغ پرداختی تراز نمی باشد. ', MessageSeverity.error);\n }\n } else {\n this.alertService.showMessage('عدم تایید', 'مبلغ وارد شده صفر / نا معتبر می باشد. ', MessageSeverity.error);\n }\n }\n },\n error => this.onCurrentUserDataLoadFailed(error)\n );\n } else {\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات مربوط به پرداخت را وارد نمایید.', MessageSeverity.warn);\n }\n } else {\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\n this.confirmMessageObj.title = 'عدم پرداخت';\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به پرداخت نمی باشید.';\n this.checkoutConfirm = true;\n }\n }\n\n onCurrentCheck(results: boolean): boolean {\n if (results === true) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'شماره سریال تکراری می باشد', MessageSeverity.warn);\n return false;\n }\n if (this.dateObjectRSDate == null || this.dateObjectRSDate.toLocaleString() === \"undefined\" || this.dateObjectRSDate == undefined || this.dateObjectRSDate.toLocaleString() === \"\") {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\n return false;\n }\n if (this.SaleSubReceiptObj.rsPrice === 0 || this.SaleSubReceiptObj.rsPrice == null) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\n return false;\n }\n if (this.SaleSubReceiptObj.rSerial === \"\" || this.SaleSubReceiptObj.rSerial == null) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\n return false;\n }\n if ((this.SaleSubReceiptObj.rsBankAccountCode == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا بانک گشایش کننده را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n if ((this.SaleSubReceiptObj.rsBankType == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا بانک را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n if ((this.SaleSubReceiptObj.sayadiNumber.toString() === \"\") || (this.SaleSubReceiptObj.sayadiNumber == undefined)) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'لطفا شماره صیادی را وارد کنید', MessageSeverity.warn);\n return false;\n }\n\n const date = this.sharedService.checkDate(this.dateObjectRSDate);\n if (date > 0) {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\n return false;\n }\n return true;\n }\n\n\n private onCurrentUserDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n\n backgroundChange = (item: SalePreInvoiceForContractCheckInfoModel) => {\n if (item.saleCustomerImageStatusId === 2) {\n return 'light-green-back';\n } else if (item.saleCustomerImageStatusId === 3) {\n return 'light-red-back';\n } else {\n return 'white-back';\n }\n }\n\n showCheckDetail(row: SalePreInvoiceForContractCheckInfoModel) {\n this.inputPricePaymentFormInvoiceSale.checkDetailList.forEach((val, index) => {\n if (val == row) {\n if (this.showImageFiles[index] != null) {\n this.checkImageStatus = true;\n this.checkImage = this.showImageFiles[index];\n } else {\n this.checkImageStatus = false;\n this.checkImageServer = this.domainName + val.imageAddress;\n }\n $('.check-image').modal('show');\n return;\n }\n });\n }\n\n getFormatDateShamsi(date: string) {\n return new Date(date).toLocaleDateString(\"fa-IR\");\n }\n\n emptySumm() {\n return null;\n }\n\n closeModal() {\n $('.check-image').modal('hide');\n }\n\n deleteCheck(row: SaleSubReceiptSelect) {\n this.saleReceiptService.deleteSaleReceipt(row).subscribe((result) => {\n if (result.actionStatus === 0) {\n this.alertService.showMessage('Success', ' پرداخت با شماره ' + result.id + ' حذف گردید. ', MessageSeverity.success);\n this.saveCheckDetailStatus.emit(true);\n } else {\n this.alertService.showMessage('هشدار', result.actionDescription, MessageSeverity.error);\n }\n }, (error) => {\n this.alertService.showMessage('هشدار', error.message, MessageSeverity.warn);\n });\n }\n\n}\n","
\n
\n
\n
\n \n پیش فاکتور\n \n \n
\n
\n
\n
\n \n قرارداد\n \n \n
\n
\n
\n
\n
خریدار : {{ saleInvoiceDetail.cName }}
\n
\n
\n
\n\n
\n
\n
\n \n
\n
\n
\n \n مبلغ چک\n \n \n
\n
\n \n شماره حساب بانکی چک\n \n \n
\n
\n \n شماره شبا حساب چک\n \n \n
\n
\n \n شماره صیادی چک\n \n \n
\n
\n \n شماره چک\n \n \n
\n
\n \n بانک چک\n \n بانک چک\n {{ bank.sbaBankName }}\n \n \n \n
\n
\n \n تاریخ وصول چک *\n \n \n \n \n
\n
\n
\n \n \n
\n
\n
\n \n توضیحات\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n \n
\n \n \n
\n
\n
\n \n \n {{ rowIndex + 1 }}\n \n \n \n \n {{ value | number }} ریال\n \n \n \n \n \n \n {{ getFormatDateShamsi(value) }}\n \n \n \n \n {{ value.substr(0, 10) | titlecase }}\n \n \n
\n
\n
\n
\n\n
\n
\n
\n
\n
نمایش تصویر
\n \n
\n
\n \n \n \n
\n
\n
\n
\n","import {Injectable} from '@angular/core';\r\nimport {ConfigurationService} from '../configuration.service';\r\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\r\nimport {BaseService} from '../base-services/base.service';\r\nimport {CashUser} from \"../../models/CashUser.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SaleSubReceiptService {\r\n\r\n private saleSubReceiptUrl: string = \"/api/SaleSubReceipts\";\r\n private saleReceiptUrl: string = \"/api/SaleReceipts\";\r\n\r\n get saleSubReceiptApiUrl() {\r\n return this.configurations.baseUrl + this.saleSubReceiptUrl;\r\n }\r\n\r\n get saleReceiptApiUrl() {\r\n return this.configurations.baseUrl + this.saleReceiptUrl;\r\n }\r\n\r\n constructor(private configurations: ConfigurationService,\r\n private baseService: BaseService,\r\n private http: HttpClient) {\r\n }\r\n\r\n updateSaleSubReceipt(customerObject: any) {\r\n const endpointUrl = `${this.saleSubReceiptApiUrl}/updateSaleSubReceipt`;\r\n return this.http.post(endpointUrl, JSON.stringify(customerObject), this.baseService.headers);\r\n }\r\n\r\n getRecipt(yearActive: number) {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/GetRecipt/` + yearActive;\r\n return this.http.get(endpointUrl);\r\n }\r\n\r\n\r\n}\r\n\r\n\r\n","import { ContractProduct } from './ContractProduct.model';\r\n\r\n// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class SaleNewContract {\r\n // note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(ncyear?: number, ncpartCode?: number, nccode?: number, nckindCode?: number, ncdate?: string, nccustomerCode?: number, ncfromCreditDate?: string, nctoCreditDate?: string, ncisVoid?: boolean, ncisAccepted?: boolean, ncsaleFactor?: string, ncbuyFactor?: string, ncregistUserCode?: number, ncacceptedUserCode?: number, ncPrivateConditions?: string, ncsubCustomerCode?: number, PriceKind?: number, AssigneSalerCode?: number, saleNewContract?: SaleNewContract[], ncStatusNumber?: number, ncStatusString?: string, ncStatusAccept?: boolean, cName?: string, IdSaleCustomerGroup?: number, chktasviyeh?: number, statusString?: string\r\n , sumAssPrice?: number\r\n , sumPrice?: number\r\n , SumAssignment?: number\r\n , SumContract?: number\r\n , Status_ID?: number\r\n , ID?: number\r\n , StatusName?: string\r\n , Name?: string\r\n , ncpdate?: string\r\n\r\n ) {\r\n this.ncyear = ncyear;\r\n this.ncpartCode = ncpartCode;\r\n this.nccode = nccode;\r\n this.nckindCode = nckindCode;\r\n this.ncdate = ncdate;\r\n this.nccustomerCode = nccustomerCode;\r\n this.ncfromCreditDate = ncfromCreditDate;\r\n this.nctoCreditDate = nctoCreditDate;\r\n this.ncisVoid = ncisVoid;\r\n this.ncisAccepted = ncisAccepted;\r\n this.ncsaleFactor = ncsaleFactor;\r\n this.ncbuyFactor = ncbuyFactor;\r\n this.ncregistUserCode = ncregistUserCode;\r\n this.ncPrivateConditions = ncPrivateConditions;\r\n this.ncacceptedUserCode = ncacceptedUserCode;\r\n this.ncsubCustomerCode = ncsubCustomerCode;\r\n this.PriceKind = PriceKind;\r\n this.AssigneSalerCode = AssigneSalerCode;\r\n this.saleNewContract = saleNewContract;\r\n this.ncStatusNumber = ncStatusNumber;\r\n this.ncStatusString = ncStatusString;\r\n this.ncStatusAccept = ncStatusAccept;\r\n this.IdSaleCustomerGroup = IdSaleCustomerGroup;\r\n this.cName = cName;\r\n this.chktasviyeh = chktasviyeh;\r\n this.statusString = statusString;\r\n this.sumAssPrice = sumAssPrice;\r\n this.sumPrice = sumPrice;\r\n this.SumAssignment = SumAssignment;\r\n this.SumContract = SumContract;\r\n this.Status_ID = Status_ID;\r\n this.ID = ID;\r\n this.StatusName = StatusName;\r\n this.Name = Name;\r\n this.ncpdate = ncpdate;\r\n\r\n }\r\n public ncyear: number;\r\n public ncpartCode: number;\r\n public nccode: number;\r\n public nckindCode: number;\r\n public ncdate: string;\r\n public ncpdate: string;\r\n public nccustomerCode: number;\r\n public ncfromCreditDate: string;\r\n public nctoCreditDate: string;\r\n public ncisVoid: boolean;\r\n public ncisAccepted: boolean;\r\n public ncsaleFactor: string;\r\n public ncbuyFactor: string;\r\n public ncregistUserCode: number;\r\n public ncPrivateConditions: string;\r\n public ncacceptedUserCode: number;\r\n public ncsubCustomerCode: number;\r\n public PriceKind: number;\r\n public AssigneSalerCode: number;\r\n public cName: string;\r\n public chktasviyeh: number;\r\n public ncStatusNumber: number;\r\n public ncStatusString: string;\r\n public ncStatusAccept: boolean;\r\n public IdSaleCustomerGroup: number;\r\n public saleNewContract: SaleNewContract[];\r\n public statusString: string;\r\n public sumAssPrice: number;\r\n public sumPrice: number;\r\n public SumAssignment: number;\r\n public SumContract: number;\r\n public Status_ID: number;\r\n public ID: number;\r\n public StatusName: string;\r\n public Name: string;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-sale-closing-managment',\n templateUrl: './sale-closing-managment.component.html'\n})\nexport class SaleClosingManagmentComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

sale-closing-managment works!

\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n styleUrls: ['./forgot-password.component.scss']\r\n})\r\n\r\nexport class ForgotPasswordComponent implements OnInit {\r\n emailForm: FormGroup;\r\n\r\n constructor(private fbuilder: FormBuilder,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.emailForm = this.fbuilder.group({\r\n email: new FormControl('', Validators.required)\r\n })\r\n }\r\n\r\n get fEmail() {\r\n return this.emailForm.controls;\r\n }\r\n\r\n onSubmitEmail() {\r\n console.log(this.emailForm.value);\r\n this.router.navigate(['/new-password']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n فراموشی رمز ورود\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n لطفا ایمیل خود را وارد نمایید.\r\n
\r\n
\r\n
\r\n
\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\nexport class SDCodeClass {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(result?: string) {\n this.result = result;\n }\n public result: string;\n\n}\n","\n\nexport class SaleSubLoadingCommands {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(lscnum?: number, Lscyear?: number, lscdccode?: string, lsccountLoading?: number, LscunitProductCode?: number, Lscdesc?: string, LscpartCode?: number, lscloadingOrderCount?: number, setcountload?: number, saleLoadingCommand?: string[], BarCode?: string) {\n this.lscnum = lscnum;\n this.Lscyear = Lscyear;\n this.lscdccode = lscdccode;\n this.lsccountLoading = lsccountLoading;\n this.LscunitProductCode = LscunitProductCode;\n this.Lscdesc = Lscdesc;\n this.LscpartCode = LscpartCode;\n this.lscloadingOrderCount = lscloadingOrderCount;\n this.setcountload = setcountload;\n this.saleLoadingCommand = saleLoadingCommand;\n this.barCode = BarCode;\n\n }\n public lscnum: number;\n public Lscyear: number;\n public lscdccode: string;\n public lsccountLoading: number;\n public lscloadingOrderCount: number;\n public LscunitProductCode: number;\n public Lscdesc: string;\n public LscpartCode: number;\n public setcountload: number;\n public saleLoadingCommand: string[];\n public barCode: string;\n}\n","\n\nexport class DepoRevertToDepoCustomerDetail {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(DRTDCDYear?: number\n , DRTDCDCode?: number\n , DRTDCDDepCode?: string\n , DRTDCDDCCode?: string\n , DRTDCDUnitProduct?: number\n , DRTDCDCount?: number\n , DRTDCDDesc?: string\n , DRTDCDPrice?: number\n , DRTDCDPricefinal?: number\n , DRTDCDDescPrice?: string\n , DRTDCDPercent?: number\n , DRTDCDPriceEnd?: number \n ) {\n this.DRTDCDYear = DRTDCDYear;\n this.DRTDCDCode = DRTDCDCode;\n this.DRTDCDDepCode = DRTDCDDepCode;\n this.DRTDCDDCCode = DRTDCDDCCode;\n this.DRTDCDUnitProduct = DRTDCDUnitProduct;\n this.DRTDCDCount = DRTDCDCount;\n this.DRTDCDDesc = DRTDCDDesc;\n this.DRTDCDPrice = DRTDCDPrice;\n this.DRTDCDPricefinal = DRTDCDPricefinal;\n this.DRTDCDDescPrice = DRTDCDDescPrice;\n this.DRTDCDPercent = DRTDCDPercent;\n this.DRTDCDPriceEnd = DRTDCDPriceEnd;\n }\n public DRTDCDYear: number;\n public DRTDCDCode: number;\n public DRTDCDDepCode: string;\n public DRTDCDDCCode: string;\n public DRTDCDUnitProduct: number;\n public DRTDCDCount: number;\n public DRTDCDDesc: string;\n public DRTDCDPrice: number;\n public DRTDCDPricefinal: number;\n public DRTDCDDescPrice: string;\n public DRTDCDPercent: number;\n public DRTDCDPriceEnd: number;\n}\n","\n\nexport class HesabTafzili {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(HTCode?: string, HTGCode?: number, HTName?: string) {\n this.HTCode = HTCode;\n this.HTGCode = HTGCode;\n this.HTName = HTName;\n }\n public HTCode: string;\n public HTGCode: number;\n public HTName: string;\n\n}\n","import { Component, ElementRef } from '@angular/core';\r\n\n@Component({\n selector: 'website-guide-info',\n templateUrl: './website-guide-info.component.html',\n styleUrls: ['./website-guide-info.component.scss']\n})\nexport class WebsiteGuideInfoComponent {\n //public rows = [];\n\n //@ViewChild('contextMenu') contextMenu: ElementRef;\n\n //list = [\n // { name: 'امیر', gender: 'امیری', company: 'لورچ' },\n // { name: 'علی', gender: 'علوی', company: 'آرسام' },\n // { name: 'هما', gender: 'هومایونی', company: 'تجارت' },\n // { name: 'احمد', gender: 'احمدی', company: 'نیکو' },\n // { name: 'سوما', gender: 'سلیمانی', company: 'تجهیز' },\n // { name: 'مهنا', gender: 'محمدی', company: 'تراز' },\n // { name: 'جمال', gender: 'جمالوند', company: 'پویش' },\n // { name: 'امید', gender: 'امیدوار', company: 'سداد' },\n // { name: 'امین', gender: 'امانی', company: 'ملی' },\n // { name: 'صبا', gender: 'سربلند', company: 'صادرات' }\n //]\n\n constructor() {}\n\n //onTableContextMenu(event) {\n // event.preventDefault();\n // this.contextMenu.nativeElement.style.display = \"block\";\n // this.contextMenu.nativeElement.style.left = event.pageX + \"px\" ;\n // this.contextMenu.nativeElement.style.top = event.pageY + \"px\";\n //}\n\n //disContextMenu() {\n // this.contextMenu.nativeElement.style.display = \"none\";\r\n //}\n\n}\n","
\r\n
\r\n\r\n
\r\n

لطفا جهت نمایش راهنما بر روی دکمه زیر کلیک کنید.***

\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n\r\n\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, Input } from '@angular/core';\r\n\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { User } from '../../models/user.model';\r\nimport { UserEdit } from '../../models/user-edit.model';\r\nimport { Role } from '../../models/role.model';\r\nimport { Permission } from '../../models/permission.model';\r\n\r\n\r\n@Component({\r\n selector: 'user-info',\r\n templateUrl: './user-info.component.html',\r\n styleUrls: ['./user-info.component.scss']\r\n})\r\nexport class UserInfoComponent {\r\n\r\n public isEditMode = false;\r\n public isNewUser = false;\r\n public isSaving = false;\r\n public isChangePassword = false;\r\n public isEditingSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public user: User = new User();\r\n public userEdit: UserEdit;\r\n public allRoles: Role[] = [];\r\n\r\n public formResetToggle = true;\r\n\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n\r\n\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n // ViewChilds Required because ngIf hides template variables from global scope\r\n @ViewChild('userName', { static: false })\r\n public userName;\r\n\r\n @ViewChild('userPassword', { static: false })\r\n public userPassword;\r\n\r\n @ViewChild('email', { static: false })\r\n public email;\r\n\r\n @ViewChild('currentPassword', { static: false })\r\n public currentPassword;\r\n\r\n @ViewChild('newPassword', { static: false })\r\n public newPassword;\r\n\r\n @ViewChild('confirmPassword', { static: false })\r\n public confirmPassword;\r\n\r\n @ViewChild('roles', { static: false })\r\n public roles;\r\n\r\n @ViewChild('rolesSelector', { static: false })\r\n public rolesSelector;\r\n\r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService) {\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.isGeneralEditor) {\r\n this.loadCurrentUserData();\r\n }\r\n }\r\n\r\n\r\n\r\n private loadCurrentUserData() {\r\n this.alertService.startLoadingMessage();\r\n\r\n if (this.canViewAllRoles) {\r\n this.accountService.getUserAndRoles().subscribe(results => this.onCurrentUserDataLoadSuccessful(results[0], results[1]), error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n this.accountService.getUser().subscribe(user => this.onCurrentUserDataLoadSuccessful(user, user.roles.map(x => new Role(x))), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n }\r\n\r\n\r\n\r\n private onCurrentUserDataLoadSuccessful(user: User, roles: Role[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.user = user;\r\n this.allRoles = roles;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات کاربر از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n this.user = new User();\r\n }\r\n\r\n\r\n\r\n getRoleByName(name: string) {\r\n return this.allRoles.find((r) => r.name == name);\r\n }\r\n\r\n\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n\r\n deletePasswordFromUser(user: UserEdit | User) {\r\n const userEdit = user as UserEdit;\r\n\r\n delete userEdit.currentPassword;\r\n delete userEdit.newPassword;\r\n delete userEdit.confirmPassword;\r\n }\r\n\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.userEdit = new UserEdit();\r\n Object.assign(this.userEdit, this.user);\r\n } else {\r\n if (!this.userEdit) {\r\n this.userEdit = new UserEdit();\r\n }\r\n\r\n this.isEditingSelf = this.accountService.currentUser ? this.userEdit.id == this.accountService.currentUser.id : false;\r\n }\r\n\r\n this.isEditMode = true;\r\n this.showValidationErrors = true;\r\n this.isChangePassword = false;\r\n }\r\n\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n\r\n if (this.isNewUser) {\r\n this.accountService.newUser(this.userEdit).subscribe(user => this.saveSuccessHelper(user), error => this.saveFailedHelper(error));\r\n } else {\r\n this.accountService.updateUser(this.userEdit).subscribe(response => this.saveSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n }\r\n\r\n\r\n private saveSuccessHelper(user?: User) {\r\n this.testIsRoleUserCountChanged(this.user, this.userEdit);\r\n\r\n if (user) {\r\n Object.assign(this.userEdit, user);\r\n }\r\n\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.isChangePassword = false;\r\n this.showValidationErrors = false;\r\n\r\n this.deletePasswordFromUser(this.userEdit);\r\n Object.assign(this.user, this.userEdit);\r\n this.userEdit = new UserEdit();\r\n this.resetForm();\r\n\r\n\r\n if (this.isGeneralEditor) {\r\n if (this.isNewUser) {\r\n this.alertService.showMessage('موفقیت', `کاربر \\\"${this.user.userName}\\\" با موفقیت ایجاد شد`, MessageSeverity.success);\r\n } else if (!this.isEditingSelf) {\r\n this.alertService.showMessage('موفقیت', `تغییر در کاربر \\\"${this.user.userName}\\\" با موفقیت ذخیره شد`, MessageSeverity.success);\r\n }\r\n }\r\n\r\n if (this.isEditingSelf) {\r\n this.alertService.showMessage('موفقیت', 'تغییرات در پروفایل شما با موفقیت ذخیره شد', MessageSeverity.success);\r\n this.refreshLoggedInUser();\r\n }\r\n\r\n this.isEditMode = false;\r\n\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا ذخیره', 'خطاهای زیر هنگام ذخیره تغییرات شما رخ داده است', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n\r\n\r\n private testIsRoleUserCountChanged(currentUser: User, editedUser: User) {\r\n\r\n const rolesAdded = this.isNewUser ? editedUser.roles : editedUser.roles.filter(role => currentUser.roles.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewUser ? [] : currentUser.roles.filter(role => editedUser.roles.indexOf(role) == -1);\r\n\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n this.userEdit = this.user = new UserEdit();\r\n } else {\r\n this.userEdit = new UserEdit();\r\n }\r\n\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n\r\n this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n\r\n close() {\r\n this.userEdit = this.user = new UserEdit();\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.isEditMode = false;\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n\r\n\r\n private refreshLoggedInUser() {\r\n this.accountService.refreshLoggedInUser()\r\n .subscribe(user => {\r\n this.loadCurrentUserData();\r\n },\r\n error => {\r\n this.alertService.resetStickyMessage();\r\n this.alertService.showStickyMessage('خطا در تازه کردن', 'هنگام تجدید ورود به سیستم اطلاعات کاربر از سرور ، خطایی روی داد', MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n changePassword() {\r\n this.isChangePassword = true;\r\n }\r\n\r\n\r\n unlockUser() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Unblocking user...');\r\n\r\n\r\n this.accountService.unblockUser(this.userEdit.id)\r\n .subscribe(() => {\r\n this.isSaving = false;\r\n this.userEdit.isLockedOut = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', 'User has been successfully unblocked', MessageSeverity.success);\r\n },\r\n error => {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Unblock Error', 'The below errors occured whilst unblocking the user:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n });\r\n }\r\n\r\n\r\n resetForm(replace = false) {\r\n this.isChangePassword = false;\r\n\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n\r\n newUser(allRoles: Role[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewUser = true;\r\n\r\n this.allRoles = [...allRoles];\r\n this.user = this.userEdit = new UserEdit();\r\n this.userEdit.isEnabled = true;\r\n this.edit();\r\n\r\n return this.userEdit;\r\n }\r\n\r\n editUser(user: User, allRoles: Role[]) {\r\n if (user) {\r\n this.isGeneralEditor = true;\r\n this.isNewUser = false;\r\n\r\n this.setRoles(user, allRoles);\r\n this.user = new User();\r\n this.userEdit = new UserEdit();\r\n Object.assign(this.user, user);\r\n Object.assign(this.userEdit, user);\r\n this.edit();\r\n\r\n return this.userEdit;\r\n } else {\r\n return this.newUser(allRoles);\r\n }\r\n }\r\n\r\n\r\n displayUser(user: User, allRoles?: Role[]) {\r\n\r\n this.user = new User();\r\n Object.assign(this.user, user);\r\n this.deletePasswordFromUser(this.user);\r\n this.setRoles(user, allRoles);\r\n\r\n this.isEditMode = false;\r\n }\r\n\r\n\r\n\r\n private setRoles(user: User, allRoles?: Role[]) {\r\n\r\n this.allRoles = allRoles ? [...allRoles] : [];\r\n\r\n if (user.roles) {\r\n for (const ur of user.roles) {\r\n if (!this.allRoles.some(r => r.name == ur)) {\r\n this.allRoles.unshift(new Role(ur));\r\n }\r\n }\r\n }\r\n\r\n if (allRoles == null || this.allRoles.length != allRoles.length) {\r\n setTimeout(() => {\r\n if (this.rolesSelector) {\r\n this.rolesSelector.refresh();\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n get canViewAllRoles() {\r\n return this.accountService.userHasPermission(Permission.viewRolesPermission);\r\n }\r\n\r\n get canAssignRoles() {\r\n return this.accountService.userHasPermission(Permission.assignRolesPermission);\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{user.jobTitle}}

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

{{user.userName}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'users.editor.UserNameRequired' | 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 {{'users.editor.PasswordHint' | translate}}\r\n \r\n \r\n {{'users.editor.CurrentPasswordRequired' | 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

{{user.email}}

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'users.editor.EmailRequired' | translate}}\r\n \r\n \r\n {{'users.editor.InvalidEmail' | 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 {{'users.editor.CurrentPasswordRequired' | 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 {{'users.editor.NewPasswordRequired' | 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 {{'users.editor.ConfirmationPasswordRequired' | translate}}\r\n \r\n \r\n {{'users.editor.PasswordMismatch' | 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 {{role}}\r\n \r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n {{'users.editor.RoleRequired' | 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

{{user.fullName}}

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

{{user.phoneNumber}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\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 } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'reference-reports',\n templateUrl: './reference-reports.component.html',\n animations: [fadeInOut]\n})\nexport class ReferenceReportsComponent {\n}\n","
\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 } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'driver',\n templateUrl: './driver.component.html',\n styleUrls: ['./driver.component.scss'],\n animations: [fadeInOut]\n})\nexport class driverComponent {\n}\n","
\r\n

\r\n \r\n راننده\r\n

\r\n\r\n
\r\n \r\n\r\n
\r\n
\r\n","\n\nexport class VMSelectSubOrder {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(OPartCode?: number, OOrderNum?: number, orderCount?: number, osCount?: number, OSDes?: string, OYear?: number, pCode?: string, BarCode?: string, productName?: string, Unit?: string, ContractRemind?: number, DCLong?: number, DCwidth?: number, DCweight?: number, Remind?: number, count?: number, rmindMajazi?: number) {\n this.OPartCode = OPartCode;\n this.OOrderNum = OOrderNum;\n this.orderCount = orderCount;\n this.osCount = osCount;\n this.OSDes = OSDes;\n this.OYear = OYear;\n this.pCode = pCode;\n this.barCode = BarCode;\n this.productName = productName;\n this.Unit = Unit;\n this.ContractRemind = ContractRemind;\n this.DCLong = DCLong;\n this.DCwidth = DCwidth;\n this.DCweight = DCweight;\n this.Remind = Remind;\n this.count = count;\n this.rmindMajazi = rmindMajazi;\n\n }\n public OPartCode: number;\n public OOrderNum: number;\n public orderCount: number;\n public osCount: number;\n public OSDes: string;\n public OYear: number;\n public pCode: string;\n public barCode: string;\n public productName: string;\n public Unit: string;\n public ContractRemind: number;\n public DCLong: number;\n public DCwidth: number;\n public DCHeight: number;\n public DCweight: number;\n public Remind: number;\n public count: number;\n public rmindMajazi: number;\n\n}\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'check-information',\n templateUrl: './check-information.component.html',\n styleUrls: ['./check-information.component.scss'],\n animations: [fadeInOut]\n})\nexport class CheckInformationComponent {\n}\n","
\r\n

\r\n \r\n اطلاعات چک\r\n

\r\n\r\n
\r\n \r\n
\r\n
\r\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'personal-information',\n templateUrl: './personal-information.component.html',\n animations: [fadeInOut]\n})\nexport class PersonalInformationComponent {\n}\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 { fadeInOut } from '../../../services/animations';\r\nimport { icon, latLng, LeafletMouseEvent, Map, MapOptions, Marker, marker, tileLayer } from 'leaflet';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { Location } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'visitor-detail',\r\n templateUrl: 'visitor-detail.component.html',\r\n styleUrls: ['visitor-detail.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class VisitorDetailComponent implements OnInit {\r\n public map: Map;\r\n public initialMarkers: any[] = [];\r\n public markers: Marker[] = [];\r\n public options: MapOptions;\r\n public displayedColumns: string[] = ['actions', 'index', 'visitorName', 'role'];\r\n public visitorDetails: MatTableDataSource;\r\n public visitIcon: string = require('../../../assets/images/leaflet/visitor-marker-icon.png').default;\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n\r\n @ViewChild(MatSort) sort: MatSort;\r\n\r\n constructor(private location: Location) { }\r\n\r\n ngOnInit() {\r\n this.initializeMapOptions();\r\n setInterval(() => {\r\n navigator.geolocation.getCurrentPosition(\r\n (position) => {\r\n let lat = position.coords.latitude;\r\n let lng = position.coords.longitude;\r\n console.log(\"lat\" + lat);\r\n console.log(\"lng\" + lng);\r\n }\r\n );\r\n }, 5000);\r\n }\r\n\r\n initMarkers(map: Map) {\r\n this.map = map;\r\n const mapIcon = this.getDefaultIcon();\r\n this.initialMarkers = [\r\n {\r\n position: { lat: 35.78439447345552, lng: 771.4153236150743 },\r\n draggable: false,\r\n },\r\n {\r\n position: { lat: 35.785234354817305, lng: 771.415119767189 },\r\n draggable: false,\r\n },\r\n {\r\n position: { lat: 35.78482964625342, lng: 771.4150232076647 },\r\n draggable: false,\r\n },\r\n ];\r\n for (let index = 0; index < this.initialMarkers.length; index++) {\r\n const data = this.initialMarkers[index];\r\n const marker = this.generateMarker(data, index);\r\n marker\r\n .addTo(this.map)\r\n .setIcon(mapIcon)\r\n .bindPopup(`${data.position.lat}, ${data.position.lng}`);\r\n this.map.panTo(data.position);\r\n this.markers.push(marker);\r\n }\r\n }\r\n\r\n mapClicked($event: any) {\r\n const mapIcon = this.getVisitorsIcon();\r\n this.initialMarkers.push({\r\n position: { lat: $event.latlng.lat, lng: $event.latlng.lng },\r\n draggable: true,\r\n });\r\n const data = this.initialMarkers[this.initialMarkers.length - 1];\r\n const marker = this.generateMarker(data, this.initialMarkers.length - 1);\r\n marker\r\n .addTo(this.map)\r\n .setIcon(mapIcon)\r\n .bindPopup(`${data.position.lat}, ${data.position.lng}`);\r\n this.map.panTo(data.position);\r\n this.markers.push(marker);\r\n }\r\n\r\n generateMarker(data: any, index: number) {\r\n return marker(data.position, { draggable: data.draggable })\r\n .on('click', (event) => this.markerClicked(event, index))\r\n .on('dragend', (event) => this.markerDragEnd(event, index));\r\n }\r\n\r\n markerClicked($event: any, index: number) {\r\n console.log($event.latlng.lat, $event.latlng.lng);\r\n }\r\n\r\n markerDragEnd($event: any, index: number) {\r\n console.log($event.target.getLatLng());\r\n }\r\n\r\n private initializeMapOptions() {\r\n this.options = {\r\n zoom: 12,\r\n layers: [\r\n tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { maxZoom: 18, attribution: 'OSM' })\r\n ]\r\n }\r\n }\r\n\r\n private getDefaultIcon() {\r\n return icon({\r\n iconSize: [25, 41],\r\n iconAnchor: [13, 41],\r\n iconUrl: this.visitIcon,\r\n shadowUrl: 'assets/marker-shadow.png'\r\n });\r\n }\r\n \r\n private getVisitorsIcon() {\r\n return icon({\r\n iconSize: [25, 41],\r\n iconAnchor: [13, 41],\r\n iconUrl: 'assets/marker-icon.png',\r\n shadowUrl: 'assets/marker-shadow.png'\r\n });\r\n }\r\n\r\n showVisitorLocations(row: any) { }\r\n\r\n goBackPage() {\r\n this.location.back();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

\r\n \r\n تور ویزیتور ها\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
... \r\n
\r\n \r\n
\r\n
ردیف {{i + 1}}
نام ویزیتور {{row.visitorName}}
نقش {{row.role}}
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","\n\nimport { Injectable } from '@angular/core';\nimport { HttpResponse } from '@angular/common/http';\nimport { Observable, of } from 'rxjs';\n\n\n\n\n@Injectable()\nexport class NotificationEndpoint {\n\n private demoNotifications = [\n {\n id: 1,\n header: '20 New Products were added to your inventory by \"administrator\"',\n body: '20 new \"BMW M6\" were added to your stock by \"administrator\" on 5/28/2017 4:54:13 PM',\n isRead: true,\n isPinned: true,\n date: '2017-05-28T16:29:13.5877958'\n },\n {\n id: 2,\n header: '1 Product running low',\n body: 'You are running low on \"Nissan Patrol\". 2 Items remaining',\n isRead: false,\n isPinned: false,\n date: '2017-05-28T19:54:42.4144502'\n },\n {\n id: 3,\n header: 'Tomorrow is half day',\n body: 'Guys, tomorrow we close by midday. Please check in your sales before noon. Thanx. Alex.',\n isRead: false,\n isPinned: false,\n date: '2017-05-30T11:13:42.4144502'\n }\n ];\n\n\n\n getNotificationEndpoint(notificationId: number): Observable {\n\n const notification = this.demoNotifications.find(val => val.id == notificationId);\n let response: HttpResponse;\n\n if (notification) {\n response = this.createResponse(notification, 200);\n } else {\n response = this.createResponse(null, 404);\n }\n\n return of(response.body);\n }\n\n\n\n getNotificationsEndpoint(page: number, pageSize: number): Observable {\n\n const notifications = this.demoNotifications;\n const response = this.createResponse(this.demoNotifications, 200);\n\n return of(response.body);\n }\n\n\n\n getUnreadNotificationsEndpoint(userId?: string): Observable {\n\n const unreadNotifications = this.demoNotifications.filter(val => !val.isRead);\n const response = this.createResponse(unreadNotifications, 200);\n\n return of(response.body);\n }\n\n\n\n getNewNotificationsEndpoint(lastNotificationDate?: Date): Observable {\n\n const unreadNotifications = this.demoNotifications;\n const response = this.createResponse(unreadNotifications, 200);\n\n return of(response.body);\n }\n\n\n\n getPinUnpinNotificationEndpoint(notificationId: number, isPinned?: boolean, ): Observable {\n\n const notification = this.demoNotifications.find(val => val.id == notificationId);\n let response: HttpResponse;\n\n if (notification) {\n response = this.createResponse(null, 204);\n\n if (isPinned == null) {\n isPinned = !notification.isPinned;\n }\n\n notification.isPinned = isPinned;\n notification.isRead = true;\n } else {\n response = this.createResponse(null, 404);\n }\n\n\n return of(response.body);\n }\n\n\n\n getReadUnreadNotificationEndpoint(notificationIds: number[], isRead: boolean, ): Observable {\n\n for (const notificationId of notificationIds) {\n\n const notification = this.demoNotifications.find(val => val.id == notificationId);\n\n if (notification) {\n notification.isRead = isRead;\n }\n }\n\n const response = this.createResponse(null, 204);\n return of(response.body);\n }\n\n\n\n getDeleteNotificationEndpoint(notificationId: number): Observable {\n\n const notification = this.demoNotifications.find(val => val.id == notificationId);\n let response: HttpResponse;\n\n if (notification) {\n this.demoNotifications = this.demoNotifications.filter(val => val.id != notificationId);\n response = this.createResponse(notification, 200);\n } else {\n response = this.createResponse(null, 404);\n }\n\n return of(response.body);\n }\n\n\n\n private createResponse(body, status: number) {\n return new HttpResponse({ body, status });\n }\n}\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-client-footer',\r\n templateUrl: './client-footer.component.html',\r\n styleUrls: ['./client-footer.component.scss']\r\n})\r\n/** clientFooter component*/\r\nexport class ClientFooterComponent {\r\n /** clientFooter ctor */\r\n constructor() {\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

ارتباط با ما

\r\n تهران – خیابان جردن-خیابان گلستان – انتهاي گلستان –پلاك 87\r\n

\r\n 021 - 22653679 , 021- 75968\r\n
info@lorchco.ir\r\n

\r\n
\r\n
    \r\n
  • \r\n
  • \r\n
  • \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\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 class IInstallmentsDetaile {\r\n\r\n constructor(\r\n id?: number,\r\n installmentsId?: number,\r\n dateInstallments?: string,\r\n amountInstallments?: number,\r\n ) {\r\n this.id = id;\r\n this.installmentsId = installmentsId;\r\n this.dateInstallments = dateInstallments;\r\n this.amountInstallments = amountInstallments;\r\n }\r\n public id: number;\r\n public installmentsId: number;\r\n public dateInstallments: string;\r\n public amountInstallments: number;\r\n}\r\n","import { Component, OnInit} from '@angular/core';\r\nimport { Router, NavigationStart, NavigationEnd } from '@angular/router';\r\nimport { Location, PopStateEvent } from \"@angular/common\";\r\n@Component({\r\n selector: 'app-client',\r\n templateUrl: './client.component.html',\r\n styleUrls: ['./client.component.scss']\r\n})\r\n/** Client component*/\r\nexport class ClientComponent {\r\n private lastPoppedUrl: string;\r\n private yScrollStack: number[] = [];\r\n constructor(private router: Router, private location: Location) {\r\n\r\n }\r\n ngOnInit() {\r\n this.location.subscribe((ev: PopStateEvent) => {\r\n this.lastPoppedUrl = ev.url;\r\n });\r\n this.router.events.subscribe((ev: any) => {\r\n if (ev instanceof NavigationStart) {\r\n if (ev.url != this.lastPoppedUrl)\r\n this.yScrollStack.push(window.scrollY);\r\n } else if (ev instanceof NavigationEnd) {\r\n if (ev.url == this.lastPoppedUrl) {\r\n this.lastPoppedUrl = undefined;\r\n window.scrollTo(0, this.yScrollStack.pop());\r\n } else\r\n window.scrollTo(0, 0);\r\n }\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import { Component } from '@angular/core';\r\nimport { FormBuilder, FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-client-shop-header',\r\n templateUrl: './client-shop-header.component.html',\r\n styleUrls: ['./client-shop-header.component.scss']\r\n})\r\n\r\n\r\nexport class ClientShopHeaderComponent {\r\n\r\n form: FormGroup = new FormGroup({});\r\n display = \"none\";\r\n\r\n constructor(private formbuilder: FormBuilder, private router: Router) {\r\n this.form = formbuilder.group({\r\n mobileNumber: ['', [Validators.required, Validators.minLength(9), Validators.maxLength(11), Validators.pattern(\"^(\\\\+98|0)?9\\\\d{9}$\")]]\r\n })\r\n }\r\n\r\n get formFunc() {\r\n return this.form.controls;\r\n }\r\n\r\n onSubmit() {\r\n this.router.navigate(['/login']);\r\n this.form.reset();\r\n }\r\n\r\n closeModalDialog() {\r\n this.display = \"none\";\r\n }\r\n}\r\n/*^((\\\\+98-?)|0)?[0-9]{10}$*/\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n

فرم ورود و ثبت نام

\r\n
\r\n\r\n
\r\n \r\n \"Arsam\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
لطفا شماره تلفن همراه خود را وارد کنید.
\r\n
لطفا شماره تلفن همراه خود را بصورت 10 یا 11 رقمی وارد\r\n کنید!\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\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 {ConfigurationService} from '../configuration.service';\r\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\r\nimport {Observable} from 'rxjs';\r\nimport {ReportAll} from '../../models/ReportAll.model';\r\nimport {ReportCashier} from '../../models/ReportCashier.model';\r\nimport {VMReportCashierResult} from '../../models/VMReportCashierResult.model';\r\nimport {VMReportReciptCashierResult} from '../../models/VMReportReciptCashierResult.model';\r\nimport {CashUser} from '../../models/CashUser.model';\r\nimport {BaseService} from '../base-services/base.service';\r\nimport {SaleReceipt} from '../../models/SaleReceipts/SaleReceipt.model';\r\nimport {ResultSaleReceiptModel} from \"../../models/SaleReceipts/ResultSaleReceipt.model\";\r\nimport {SaleSubReceiptSelect} from \"../../models/SaleSubReceiptSelect.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SaleReceiptService {\r\n\r\n private saleReceiptUrl = \"/api/SaleReceipts\";\r\n\r\n get saleReceiptApiUrl() {\r\n return this.configurations.baseUrl + this.saleReceiptUrl;\r\n }\r\n\r\n constructor(private configurations: ConfigurationService,\r\n private baseService: BaseService,\r\n private http: HttpClient) {\r\n }\r\n\r\n getAllReportmethodsettlement(year: number, partCode: number, code: number, status_ID: number, CustomerCode: number, fromDate?: string, toDate?: string): Observable {\r\n return this.http.get(`${this.saleReceiptApiUrl}/GetAllReceiptWithContractCodeSelect98Settlement/${year}/${partCode}/${code}/${status_ID}/${CustomerCode}/${fromDate}/${toDate}`);\r\n }\r\n\r\n getAllReportmethodsettlementSimilar(year: number, partCode: number, code: number, status_ID: number, NCCode: number, CustomerCode: number, SubCustomerCode: number, CustomerID: number, NCCOdeopposing: number, fromDate?: string, toDate?: string): Observable {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/GetSimilarAllReceiptWithContractCodeSelect98Settlement/${year}/${partCode}/${code}/${status_ID}/${NCCode}/${CustomerCode}/${SubCustomerCode}/${CustomerID}/${NCCOdeopposing}/${fromDate}/${toDate}`;\r\n return this.http.get(endpointUrl);\r\n }\r\n\r\n getAllReportCashier(year: number, partCode: number, CustomerCode: number, SubCustomerCode: number, fromDate?: string, toDate?: string, ncIsAccepted?: boolean, ncIsVoid?: boolean) {\r\n return this.http.get(`${this.saleReceiptApiUrl}/GetAllReportCashier/${year}, ${partCode}, ${CustomerCode}, ${SubCustomerCode}, ${fromDate}, ${toDate}, ${ncIsAccepted}, ${ncIsVoid}`);\r\n }\r\n\r\n getAllReportContractsSaleReciptCash(year: number, partCode: number, CustomerCode: number, SubCustomerCode: number, fromDate?: string, toDate?: string, ncIsAccepted?: boolean, ncIsVoid?: boolean): Observable {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/GetAllReportContractsSaleReciptCash/${year}/${partCode}/${CustomerCode}/${SubCustomerCode}/${fromDate}/${toDate}/${ncIsAccepted}/${ncIsVoid}`;\r\n return this.http.get(endpointUrl);\r\n }\r\n\r\n getAllReportReciptsSaleReciptCash(year: number, partCode: number, CustomerCode: number, SubCustomerCode: number, fromDate?: string, toDate?: string, ncIsAccepted?: boolean, ncIsVoid?: boolean): Observable {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/GetAllReportReciptsSaleReciptCash/${year}/${partCode}/${CustomerCode}/${SubCustomerCode}/${fromDate}/${toDate}/${ncIsAccepted}/${ncIsVoid}`;\r\n return this.http.get(endpointUrl);\r\n }\r\n\r\n\r\n getRSerialCheckForUpdate(RNum: number, RSerial: string): Observable {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/CheckExistReceiptForUpdate/${RNum}/${RSerial}`;\r\n return this.http.get(endpointUrl);\r\n }\r\n\r\n checkUpdateSaleSubReceiptByContractCode(Year: number, PartCode: number, oldCuntractCode: number, newContractCode: number, newPrice: number): Observable {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/CheckUpdateSaleSubReceiptByContractCode/${Year}/${PartCode}/${oldCuntractCode}/${newContractCode}/${newPrice}`;\r\n return this.http.get(endpointUrl);\r\n }\r\n\r\n updateSaleReceipt(customerObject: any, rSerial: string) {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/${rSerial}`;\r\n return this.http.post(endpointUrl, JSON.stringify(customerObject), this.baseService.headers);\r\n }\r\n\r\n checkSaveSaleReceipts(customerObject: any) {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/SaveChekToSaleReceipt`;\r\n return this.http.post(endpointUrl, JSON.stringify(customerObject), this.baseService.headers);\r\n }\r\n\r\n\r\n InsertSaleReceipt(saleReceiptObj: SaleReceipt): Observable {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/SaveCashToSaleReceipt`;\r\n return this.http.post(endpointUrl, JSON.stringify(saleReceiptObj), this.baseService.headers);\r\n }\r\n\r\n // آپلود تصاویر\r\n insertUploadCustomerImage(cMainCode: string, cSubCode: string, invoiceCode: string, serialSaleReceipt: string, formData: FormData) {\r\n return this.http.post(this.saleReceiptApiUrl + \"/upload-customer-image/\" + cMainCode + \"/\" + cSubCode + \"/\" + invoiceCode + \"/\" + serialSaleReceipt, formData);\r\n }\r\n\r\n deleteSaleReceipt(saleReceiptObj: SaleSubReceiptSelect) {\r\n const endpointUrl = `${this.saleReceiptApiUrl}/DeleteCashToSaleReceipt`;\r\n return this.http.post(endpointUrl, JSON.stringify(saleReceiptObj), this.baseService.headers);\r\n }\r\n}\r\n\r\n\r\n","\n\nexport class Adjustments {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(OffsetContractCode?: number, OffsetContractYear?: number, OffsetPartCode?: number, AimContractCode?: number, AimContractYear?: number\n , AimPartCode?: number\n , amount?: number\n , date?: string\n , UserCode?: number\n , Description?: string \n ) {\n this.Description = Description;\n this.UserCode = UserCode;\n this.date = date;\n this.amount = amount;\n this.AimPartCode = AimPartCode;\n this.AimContractYear = AimContractYear;\n this.AimContractCode = AimContractCode;\n this.OffsetPartCode = OffsetPartCode;\n this.OffsetContractYear = OffsetContractYear;\n this.OffsetContractCode = OffsetContractCode;\n }\n public OffsetContractCode: number;\n public OffsetContractYear: number;\n public OffsetPartCode: number;\n public AimContractCode: number;\n public AimContractYear: number;\n public AimPartCode: number;\n public amount: number;\n public date: string;\n public UserCode: number;\n public Description: string;\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: 'input[decimalnumbersOnly]'\r\n})\r\nexport class DecimalNumberDirective {\r\n\r\n constructor(private _el: ElementRef) { }\r\n\r\n @HostListener('input', ['$event']) onInputChange(event) {\r\n const initalValue = this._el.nativeElement.value;\r\n this._el.nativeElement.value = initalValue.replace(/[^0-9\\.0-9]*/g, '');\r\n if (initalValue !== this._el.nativeElement.value) {\r\n event.stopPropagation();\r\n }\r\n }\r\n\r\n}\r\n","export default __webpack_public_path__ + \"visitor-marker-icon.png\";","import {HttpClient} from '@angular/common/http';\r\nimport {Injectable} from '@angular/core';\r\nimport {Observable} from 'rxjs';\r\nimport {catchError} from 'rxjs/operators';\r\nimport {AuthService} from './auth.service';\r\nimport {ConfigurationService} from './configuration.service';\r\nimport {EndpointBase} from './endpoint-base.service';\r\nimport {RegisterDocumentRequestMasterModel} from \"../models/RegisterDocumentRequestMaster.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NtsEndPointService extends EndpointBase {\r\n ntsWithTrackingCodeUrl = \"/api/DepoAssignmentProducts/GetNtswByTrackingCode\";\r\n ntsWithOutTrackingCodeUrl = \"/api/DepoAssignmentProducts/GetNtsWithOutTrackingCode\";\r\n ntsWithOutTrackingCodeBussinessManUrl = '/api/DepoAssignmentProducts/GetNtswWithOutTrackingCodeBussinessMan';\r\n ntsLocationtransfer = '/api/DepoAssignmentProducts/GetNtswLocationtransfer';\r\n ntsStoreAll = '/api/ReportStore/GetNtswStore';\r\n registerDocumentRequestMaster = '/api/DepoAssignmentProducts/GetMasterRegisterDocumentRequest';\r\n sendRegisterDocumentRequestMaster = '/api/DepoAssignmentProducts/SendMasterRegisterDocumentRequest';\r\n getStatusRegisterDocumentRequestUrl = '/api/DepoAssignmentProducts/GetStatusRegisterDocumentRequest';\r\n\r\n constructor(http: HttpClient, auth: AuthService, public configurations: ConfigurationService) {\r\n super(http, auth);\r\n }\r\n\r\n get NtsWithTrackingCodeUrl() {\r\n return this.configurations.baseUrl + this.ntsWithTrackingCodeUrl;\r\n }\r\n\r\n get NtsWithOutTrackingCodeUrl() {\r\n return this.configurations.baseUrl + this.ntsWithOutTrackingCodeUrl;\r\n }\r\n\r\n get NtsWithOutTrackingCodeBussinessMan() {\r\n return this.configurations.baseUrl + this.ntsWithOutTrackingCodeBussinessManUrl;\r\n }\r\n\r\n get NtsLocationTransfer() {\r\n return this.configurations.baseUrl + this.ntsLocationtransfer;\r\n }\r\n\r\n get NtsStoreAll() {\r\n return this.configurations.baseUrl + this.ntsStoreAll;\r\n }\r\n\r\n get RegisterDocumentRequestMaster() {\r\n return this.configurations.baseUrl + this.registerDocumentRequestMaster;\r\n }\r\n\r\n get SendRegisterDocumentRequestMaster() {\r\n return this.configurations.baseUrl + this.sendRegisterDocumentRequestMaster;\r\n }\r\n\r\n get GetStatusRegisterDocumentRequestUrl() {\r\n return this.configurations.baseUrl + this.getStatusRegisterDocumentRequestUrl;\r\n }\r\n\r\n GetNtsTrackingEndPoint(datetimefrom: string, datetimeto: string, storeCode: string): Observable {\r\n const endpointUrl = `${this.NtsWithTrackingCodeUrl}/${datetimefrom}/${datetimeto}/${storeCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNtsTrackingEndPoint(datetimefrom, datetimeto, storeCode));\r\n })\r\n );\r\n }\r\n\r\n\r\n GetNtsStoreAllEndPoint(datetimefrom: string, datetimeto: string): Observable {\r\n const endpointUrl = `${this.NtsStoreAll}/${datetimefrom}/${datetimeto}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNtsStoreAllEndPoint(datetimefrom, datetimeto));\r\n })\r\n );\r\n }\r\n\r\n GetNtswWithOutTrackingCode(datefrom: string, dateto: string, storeCode: string): Observable {\r\n const endpointUrl = `${this.NtsWithOutTrackingCodeUrl}/${datefrom}/${dateto}/${storeCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetNtswWithOutTrackingCode(datefrom, dateto, storeCode));\r\n })\r\n );\r\n }\r\n\r\n getNtsWithOutTrackingCodeBussinessMan(dateForm: string, dateTo: string, storeCode: string): Observable {\r\n const endpointUrl = `${this.NtsWithOutTrackingCodeBussinessMan}/${dateForm}/${dateTo}/${storeCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(err => {\r\n return this.handleError(err, () => this.getNtsWithOutTrackingCodeBussinessMan(dateForm, dateTo, storeCode));\r\n })\r\n );\r\n }\r\n\r\n getNtsLocationTransfer(dateForm: string, dateTo: string, storeCode: string): Observable {\r\n const endpointUrl = `${this.NtsLocationTransfer}/${dateForm}/${dateTo}/${storeCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(err => {\r\n return this.handleError(err, () => this.getNtsLocationTransfer(dateForm, dateTo, storeCode));\r\n })\r\n );\r\n }\r\n\r\n getRegisterDocumentRequestMaster(dateForm: string, dateTo: string, storeCode: string): Observable {\r\n const endpointUrl = `${this.RegisterDocumentRequestMaster}/${dateForm}/${dateTo}/${storeCode}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(err => {\r\n return this.handleError(err, () => this.getRegisterDocumentRequestMaster(dateForm, dateTo, storeCode));\r\n })\r\n );\r\n }\r\n\r\n sendRegisterDocumentRequest(row: RegisterDocumentRequestMasterModel) {\r\n return this.http.post(this.SendRegisterDocumentRequestMaster, JSON.stringify(row), this.requestHeaders)\r\n .pipe(\r\n catchError(err => {\r\n return this.handleError(err, () => this.sendRegisterDocumentRequest(row));\r\n })\r\n );\r\n }\r\n\r\n getStatusRegisterDocumentRequest(row: RegisterDocumentRequestMasterModel) {\r\n return this.http.post(this.GetStatusRegisterDocumentRequestUrl, JSON.stringify(row), this.requestHeaders)\r\n .pipe(\r\n catchError(err => {\r\n return this.handleError(err, () => this.getStatusRegisterDocumentRequest(row));\r\n })\r\n );\r\n\r\n }\r\n}\r\n","import { RequestInvoiceProductBarCode } from './RequestInvoiceProductBarCode.model';\r\n\r\nexport class RequestInvoiceProduct {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(reqpYear?: number, reqpCode?: number, reqpDealercode?: string\r\n , reqpProductCode?: string\r\n , reqpAmount?: number\r\n , reqpPrice?: number\r\n , reqpSocode?: number\r\n , reqpName?: string\r\n , reqpPriceSum?: number\r\n , requestInvoiceId?: number\r\n , requestInvoiceProductBarCodes?: RequestInvoiceProductBarCode[]\r\n\r\n\r\n ) {\r\n this.reqpYear = reqpYear;\r\n this.reqpCode = reqpCode;\r\n this.reqpDealercode = reqpDealercode;\r\n this.reqpProductCode = reqpProductCode;\r\n this.reqpAmount = reqpAmount;\r\n this.reqpPrice = reqpPrice;\r\n this.reqpSocode = reqpSocode;\r\n this.reqpName = reqpName;\r\n this.reqpPriceSum = reqpPriceSum;\r\n this.requestInvoiceId = requestInvoiceId;\r\n this.requestInvoiceProductBarCodes = requestInvoiceProductBarCodes;\r\n }\r\n public reqpYear: number;\r\n public reqpCode: number;\r\n public reqpDealercode: string;\r\n public reqpProductCode: string;\r\n public reqpAmount: number;\r\n public reqpPrice: number;\r\n public reqpSocode: number;\r\n public reqpName: string;\r\n public reqpPriceSum: number;\r\n public requestInvoiceId: number;\r\n public requestInvoiceProductBarCodes: RequestInvoiceProductBarCode[]=[];\r\n}\r\n","export class SaleCustomerImageModel {\r\n id: number;\r\n cMainCode: number;\r\n cSubCode: number;\r\n saleCustomerImageStatusId: number; \r\n saleCustomerImageTypeId: number;\r\n imageAddress: string;\r\n insertDate: Date;\r\n isDeleted: number;\r\n notAcceptDescription: string;\r\n}\r\n","\r\nimport { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { PreInvoice } from '../../models/PreInvoice.model';\r\nimport { InputPricePaymentFormInvoiceSaleModel } from '../../models/InputPricePaymentFormInvoiceSale.model';\r\nimport { fadeInOut } from '../../services/animations';\r\nimport { SaleReceipt } from '../../models/SaleReceipts/SaleReceipt.model';\r\nimport { SaleSubReceipt } from '../../models/SaleReceipts/SaleSubReceipt.model';\r\nimport * as moment from 'jalali-moment';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { SharedService } from '../../services/Shared.service';\r\nimport { ConfirmMessageEnum } from '../../enums/confirm-message.enum';\r\nimport { ConfirmMessageModel } from '../../models/utilities/confirm-message.model';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-barat-electronic-form',\r\n templateUrl: './barat-electronic-form.component.html',\r\n styleUrls: ['barat-electronic-form.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class BaratElectronicFormComponent implements OnInit, OnChanges {\r\n\r\n public loadingIndicator: boolean;\r\n public columns: any[] = [];\r\n public SaleReceiptObj: SaleReceipt = new SaleReceipt();\r\n public SaleSubReceiptObj: SaleSubReceipt = new SaleSubReceipt();\r\n public dateObjectRSDate = moment();\r\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n public checkoutConfirm: boolean = false;\r\n public baratFile: File;\r\n\r\n @Input() saleInvoiceDetail: PreInvoice = new PreInvoice();\r\n @Input() inputPricePaymentFormInvoiceSale: InputPricePaymentFormInvoiceSaleModel;\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n }\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private sharedService: SharedService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n cancel() { }\r\n\r\n update(state: boolean) { }\r\n\r\n save() {\r\n if (this.inputPricePaymentFormInvoiceSale.checkoutCashDesk.length <= 0) {\r\n if (this.SaleSubReceiptObj.rSerial != null && this.SaleSubReceiptObj.rSerial != undefined && this.SaleSubReceiptObj.rSerial.toString() != \"\") {\r\n this.accountService.GetRSerialCheck(this.SaleSubReceiptObj.rSerial).subscribe(\r\n results => {\r\n this.onCurrentCheck(results)\r\n },\r\n error => this.onCurrentUserDataLoadFailed(error)\r\n );\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا اطلاعات مربوط به پرداخت را وارد نمایید.', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.ok;\r\n this.confirmMessageObj.title = 'عدم پرداخت';\r\n this.confirmMessageObj.text = 'شما به دلیل تثبیت روزانه صندوق خود قادر به پرداخت نمی باشید.';\r\n this.checkoutConfirm = true;\r\n }\r\n }\r\n\r\n onCurrentCheck(results: boolean): void {\r\n if (results == true) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'شماره سریال تکراری می باشد', MessageSeverity.warn);\r\n }\r\n\r\n\r\n if (this.dateObjectRSDate == null || this.dateObjectRSDate.toLocaleString() == \"undefined\" || this.dateObjectRSDate.toString() == undefined || this.dateObjectRSDate.toLocaleString() == \"\") {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا تاریخ سر رسید را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rsPrice == 0 || this.SaleSubReceiptObj.rsPrice == null) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا مبلغ را وارد کنید', MessageSeverity.warn);\r\n }\r\n if (this.SaleSubReceiptObj.rSerial == \"\" || this.SaleSubReceiptObj.rSerial == null) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'لطفا شماره پیگیری را وارد کنید', MessageSeverity.warn);\r\n }\r\n var date = this.sharedService.checkDate(this.dateObjectRSDate)\r\n if (date > 0) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Warning', 'تاریخ سر رسید باید تاریخ روز یا پیش از تاریخ روز باشد. ', MessageSeverity.warn);\r\n }\r\n\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n showCheckoutConfirm(event: boolean) {\r\n this.checkoutConfirm = event;\r\n }\r\n\r\n deleteLc(event: any) { }\r\n\r\n fileChangeEvent(event: FileList) {\r\n // console.log(event);\r\n let result;\r\n if (event.item(0).size <= 1000000 && event.item(0).type == \"image/jpeg\") {\r\n this.baratFile = event.item(0);\r\n let reader = new FileReader();\r\n reader.onload = (event2: any) => {\r\n result = event2.target.result;\r\n }\r\n\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا عکس با سایز کمتر از 1 مگابایت و فرمت (.jpg) انتخاب کنید.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n getFormatDateShamsi(date: string) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n پیش فاکتور\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n قرارداد\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
خریدار : {{saleInvoiceDetail.cName}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n سریال\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n بانک گشایش کننده\r\n \r\n {{bank.sbaBankName}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n بانک معامله کننده اعتبار\r\n \r\n {{bank.sbaBankName}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n تاریخ سررسید\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n مبلغ\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n توضیحات\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{getFormatDateShamsi(value)}}\r\n \r\n \r\n \r\n \r\n {{value | number}} ریال\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-client-product-list',\n templateUrl: './client-product-list.component.html',\n styleUrls: ['./client-product-list.component.scss']\n})\nexport class ClientProductListComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n
\n
\n
\n

محصولات آرسام

\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \"محصولات\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n","\n\nimport { animate, state, style, transition, trigger } from '@angular/animations';\n\n\n\nexport const fadeInOut = trigger('fadeInOut', [\n transition(':enter', [style({ opacity: 0 }), animate('0.4s ease-in', style({ opacity: 1 }))]),\n transition(':leave', [animate('0.4s 10ms ease-out', style({ opacity: 0 }))])\n]);\n\n\n\nexport function flyInOut(duration: number = 0.2) {\n return trigger('flyInOut', [\n state('in', style({ opacity: 1, transform: 'translateX(0)' })),\n transition('void => *', [style({ opacity: 0, transform: 'translateX(-100%)' }), animate(`${duration}s ease-in`)]),\n transition('* => void', [animate(`${duration}s 10ms ease-out`, style({ opacity: 0, transform: 'translateX(100%)' }))])\n ]);\n}\n","import { Component } from '@angular/core';\nimport { FormControl, Validators } from '@angular/forms';\r\n\n@Component({\n selector: 'reports-marketer-info',\n templateUrl: './reports-marketer-info.component.html',\n styleUrls: ['./reports-marketer-info.component.scss']\n})\nexport class ReportsMarketerInfoComponent {\n public loadingIndicator = true;\n public rows: any[] = [\n {\n customerName: \"امیر\",\n visitDate: \"1400/11/27\",\n address: \"تهران\",\n location: \"، نواب صفوی\",\n phoneNumber1: \"09147162064\",\n phoneNumber2: \"09147162064\",\n },\n {\n customerName: \"امیر\",\n visitDate: \"1400/11/27\",\n address: \"تهران\",\n location: \"تهران\",\n phoneNumber1: \"09147162064\",\n phoneNumber2: \"09147162064\",\n },\n {\n customerName: \"امیر\",\n visitDate: \"1400/11/27\",\n address: \"تهران\",\n location: \"تهران\",\n phoneNumber1: \"09147162064\",\n phoneNumber2: \"09147162064\",\n }\n ]\n public columns = [];\n public list: any[] = [\n { title: \"همه\" },\n { title: \"اجرا\" },\n { title: \"انتظار\" },\n { title: \"بایگانی\" }\n ]\n public listControl = new FormControl('', Validators.required);\n public customerName = new FormControl('', Validators.required);\n\n constructor() { }\n\n public ngOnInit() {\n this.loadingIndicator = false;\n }\n\n public visitorPlace(location: string) {\n \n }\n}\n","\r\n
\r\n
\r\n
\r\n \r\n لیست انتخاب\r\n \r\n --\r\n \r\n {{select.title}}\r\n \r\n \r\n لطفا گزینه مورد نظر را انتخاب کنید\r\n {{listControl.value?.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 {{customerName.value?.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

تاریخ ویزیت :1400/11/27

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","export class CustomerGradeModel {\r\n Id: number;\r\n CustomerId: number;\r\n GradeId: number;\r\n Active: boolean;\r\n InsertDate: string;\r\n InsertUser: string;\r\n}\r\n","\n\nexport class SaleSendProduct {\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n constructor(SpartCode?: number, Spcode?: number, Spyear?: number, Spdate?: string, SpnumberOrder?: number, Spfor?: string, IsAccepted?: boolean, IsRemainCanceled?: boolean, SpdepoCode?: number, SmsNumber?: string, IsCancel?: boolean, SpAdress?: string, CarCode?: number) {\n this.SpartCode = SpartCode;\n this.Spcode = Spcode;\n this.Spyear = Spyear;\n this.Spdate = Spdate;\n this.SpnumberOrder = SpnumberOrder;\n this.Spfor = Spfor;\n this.IsAccepted = IsAccepted;\n this.IsRemainCanceled = IsRemainCanceled;\n this.SpdepoCode = SpdepoCode;\n this.SmsNumber = SmsNumber;\n this.IsCancel = IsCancel;\n this.SpAdress = SpAdress;\n this.CarCode = CarCode;\n\n }\n public SpartCode: number;\n public Spcode: number;\n public Spyear: number;\n public Spdate: string;\n public SpnumberOrder: number;\n public Spfor: string;\n public IsAccepted: boolean;\n public IsRemainCanceled: boolean;\n public SpdepoCode: number;\n public SmsNumber: string;\n public IsCancel: boolean;\n public SpAdress: string;\n public CarCode: number;\n\n\n}\n","import { ViewChild, OnInit, TemplateRef } from '@angular/core';\r\nimport { Component } from '@angular/core';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { SaleCustomer } from '../../models/SaleCustomer.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { SaleCustomerService } from '../../services/SaleCustomer.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { customerInfoComponent } from './customer-info.component'\r\nimport { group } from '../../models/group.model'\r\nimport { Ostan } from '../../models/Ostan.model';\r\nimport { City } from '../../models/City.model';\r\nimport { Router } from '@angular/router';\r\nimport { RecordPersonalInformationInfoComponent } from './record-personal-information-info.component';\r\nimport { SaleCustomerImageModel } from '../../models/SaleCustomerImage.model';\r\nimport { ShowUploadPage } from '../../enums/show-upload-page.enum';\r\nimport { ColorSettingsService } from '../../services/color-settings';\r\nimport { CustomerDocumentStatusEnum } from '../../enums/customer-document-status.enum';\r\nimport { SaleCustomerImageInfoEntityModel } from '../../models/SaleCustomerImageInfoEntity.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { SaleCustomerImageInfosService } from '../../services/sale-customer-service/sale-customer-image-infos.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'sales-customer',\r\n templateUrl: './sales-customer.component.html',\r\n styleUrls: ['./sales-customer.component.scss']\r\n})\r\nexport class salescustomercomponent implements OnInit {\r\n public rowsCache: SaleCustomer[] = [];\r\n public customersStore: SaleCustomer[] = [];\r\n public Sale: SaleCustomer;\r\n public allgroup: group[] = [];\r\n public allOstan: Ostan[] = [];\r\n public group: group;\r\n public editedUser: SaleCustomer;\r\n public sourceUser: SaleCustomer;\r\n public editingCName: { name: string };\r\n public columns: any[] = [];\r\n public loadingIndicator: boolean = true;\r\n public editingFullName: { name: string };\r\n public editingUserName = false;\r\n public customerInfo: SaleCustomer;\r\n public customerImages: SaleCustomerImageModel[] = [];\r\n public customerImagesList: SaleCustomerImageInfoEntityModel[] = [];\r\n public applicantPage: number = ShowUploadPage.customers;\r\n public saleCustomerImageInfo: SaleCustomerImageModel[] = [];\r\n public displayedColumns: string[] = ['index', 'actions', 'cName', 'cPublicCode', 'cTel', 'cStatusType', 'cAddress', 'cOstan', 'cCity', 'group'];\r\n public customerStoreList: MatTableDataSource;\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('CustomerEditor', { static: true })\r\n CustomerEditor: customerInfoComponent;\r\n\r\n @ViewChild('recordPersonalInformationModal', { static: true })\r\n recordPersonalInformationModal: ModalDirective;\r\n\r\n @ViewChild('recordPersonalInformation', { static: true })\r\n recordPersonalInformation: RecordPersonalInformationInfoComponent;\r\n\r\n provinces: Ostan[];\r\n\r\n\r\n constructor(private alertService: AlertService,\r\n private saleCustomerService: SaleCustomerService,\r\n private accountService: AccountService,\r\n private authService: AuthService,\r\n private router: Router,\r\n private saleCustomerImageInfosService: SaleCustomerImageInfosService,\r\n private colorService: ColorSettingsService) { }\r\n\r\n public ngOnInit() {\r\n this.loadData();\r\n this.onLoadOstan();\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.customersStore = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.cName, r.cPublicCode, r.cRegisterCode, r.cTel, r.cAddress, r.group, r.cOstan, r.cCity));\r\n }\r\n\r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.customerStoreList.filter = filterValue.trim().toLowerCase();\r\n if (this.customerStoreList.paginator) {\r\n this.customerStoreList.paginator.firstPage();\r\n }\r\n }\r\n\r\n loadData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n if (this.canViewCustomer) {\r\n if (!this.authService.isSessionExpired) {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(\r\n res => this.saleCustomerService.getAllSaleCustomer(res).subscribe(\r\n results => this.onDataLoadSuccessful(results[0], results[1]),\r\n error => {\r\n this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n }));\r\n } else {\r\n this.alertService.showMessage('پایان مدت زمان ورود', `لطفا مجددا به حساب کاربری خود وارد شوید!`, MessageSeverity.warn);\r\n // this.router.navigate(['/login']);\r\n }\r\n }\r\n this.loadCurrentOstanData();\r\n }\r\n\r\n onLoadOstan() {\r\n this.accountService.getostans().subscribe(\r\n result => {\r\n this.allOstan = result;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.CustomerEditor.changesSavedCallback = () => {\r\n this.addNewCustomerToList();\r\n this.editorModal.hide();\r\n this.loadData();\r\n };\r\n this.CustomerEditor.changesCancelledCallback = () => {\r\n this.editedUser = null;\r\n this.sourceUser = null;\r\n this.editorModal.hide();\r\n };\r\n }\r\n\r\n onLoadcity(Ostans: City[]) {\r\n this.allOstan = Ostans;\r\n }\r\n\r\n addNewCustomerToList() {\r\n if (this.sourceUser) {\r\n Object.assign(this.sourceUser, this.editedUser);\r\n\r\n let sourceIndex = this.rowsCache.indexOf(this.sourceUser, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rowsCache, sourceIndex, 0);\r\n }\r\n sourceIndex = this.customersStore.indexOf(this.sourceUser, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.customersStore, sourceIndex, 0);\r\n }\r\n this.editedUser = null;\r\n this.sourceUser = null;\r\n } else {\r\n const user = new SaleCustomer();\r\n Object.assign(user, this.editedUser);\r\n this.editedUser = null;\r\n\r\n let maxIndex = 0;\r\n for (const u of this.rowsCache) {\r\n if ((u as any).index > maxIndex) {\r\n maxIndex = (u as any).index;\r\n }\r\n }\r\n (user as any).index = maxIndex + 1;\r\n\r\n this.rowsCache.splice(0, 0, user);\r\n this.customersStore.splice(0, 0, user);\r\n this.customersStore = [...this.customersStore];\r\n this.customerStoreList.data = this.customersStore;\r\n }\r\n }\r\n\r\n onDataLoadSuccessful(SaleCustomer: SaleCustomer[], groups: group[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n SaleCustomer.forEach((val, index) => {\r\n let status = this.showStatusCustomer(val.saleCustomerImageInfos, val.cSubCode, val.cMainCode);\r\n if (val.saleCustomerImageInfos.length > 0) {\r\n this.saleCustomerImageInfo = val.saleCustomerImageInfos;\r\n val.cStatusId = status;\r\n val.cStatusType = CustomerDocumentStatusEnum[status];\r\n } else {\r\n val.cStatusId = status;\r\n val.cStatusType = CustomerDocumentStatusEnum[status];\r\n }\r\n });\r\n this.customerStoreList = new MatTableDataSource(SaleCustomer);\r\n this.customerStoreList.paginator = this.paginator;\r\n this.customerStoreList.sort = this.sort;\r\n this.rowsCache = [...SaleCustomer];\r\n this.customersStore = SaleCustomer;\r\n this.customersStore.forEach((value, index) => {\r\n value.saleCustomerImageInfos.forEach(val2 => {\r\n this.customerImagesList.push(val2);\r\n })\r\n })\r\n this.allgroup = groups;\r\n }\r\n\r\n showStatusCustomer(data: SaleCustomerImageModel[], cSubCode, cMainCode) {\r\n if (data.length === 0) {\r\n return 5;\r\n } else {\r\n let countAccept = 0;\r\n let countDelete = 0;\r\n let newData = data.filter(x => x.cSubCode === cSubCode && x.cMainCode === cMainCode);\r\n newData.forEach(\r\n (val) => {\r\n if (val.saleCustomerImageStatusId === 2) {\r\n countAccept++;\r\n }\r\n if (val.saleCustomerImageStatusId === 3) {\r\n countDelete++;\r\n }\r\n })\r\n if (countAccept === 0 && countDelete === 0) {\r\n return 1;\r\n } else if (countAccept === 5) {\r\n return 2;\r\n } else if (countDelete === 5) {\r\n return 3;\r\n } else {\r\n return 4;\r\n }\r\n }\r\n }\r\n\r\n newCus() {\r\n this.Sale = this.CustomerEditor.newCustomer(this.allOstan, this.allgroup);\r\n this.CustomerEditor.AllowEdit = false;\r\n this.editorModal.show();\r\n this.editingFullName = null;\r\n this.CustomerEditor.isReadonly = false;\r\n }\r\n\r\n editCustomer(row: SaleCustomer) {\r\n this.editingFullName = { name: row.cName };\r\n this.sourceUser = row;\r\n this.CustomerEditor.isReadonly = true;\r\n this.CustomerEditor.CheckAllowEditCustomer(row.cSubCode, 5);\r\n this.editedUser = this.CustomerEditor.editcustomer(row, this.allOstan, this.allgroup);\r\n\r\n this.editorModal.show();\r\n }\r\n\r\n private loadCurrentOstanData() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getostans().subscribe(\r\n results => {\r\n this.alertService.stopLoadingMessage();\r\n this.provinces = results; \r\n });\r\n }\r\n\r\n\r\n deleteCustomer(row: SaleCustomer) {\r\n this.alertService.showDialog('آیا از حذف مشتری \\\"' + row.cName + '\\\" اطمینان دارید?', DialogType.confirm, () => this.deleteCustomerHelper(row));\r\n }\r\n\r\n deleteCustomerHelper(row: SaleCustomer) {\r\n this.accountService.checkCustomer(row.cMainCode, row.cSubCode).subscribe(\r\n res => {\r\n if (res === true) {\r\n this.alertService.startLoadingMessage('حذف...');\r\n this.accountService.deleteCustomer(row.cMainCode, row.cSubCode)\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.rowsCache = this.rowsCache.filter(item => item !== row);\r\n this.customersStore = this.customersStore.filter(item => item !== row);\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the user.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n } else {\r\n this.alertService.showMessage('هشدار', `امکان حذف مشتری که پیش فاکتور داشته باشد وجود ندارد.`, MessageSeverity.warn);\r\n }\r\n }\r\n )\r\n }\r\n\r\n newCustomer() {\r\n this.editingCName = null;\r\n this.sourceUser = null;\r\n this.editedUser = this.CustomerEditor.newCustomer(this.allOstan, this.allgroup);\r\n this.editorModal.show();\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.editingCName = null;\r\n this.editingFullName = null;\r\n }\r\n\r\n showDocuments(row: SaleCustomer) {\r\n this.customerImages = [];\r\n this.customerImagesList.forEach(val => {\r\n if (val.cMainCode === row.cMainCode && val.cSubCode === row.cSubCode) {\r\n let saleCustomerImage = new SaleCustomerImageModel();\r\n saleCustomerImage.cMainCode = val.cMainCode;\r\n saleCustomerImage.id = val.id;\r\n saleCustomerImage.cSubCode = val.cSubCode;\r\n saleCustomerImage.imageAddress = val.imageAddress;\r\n saleCustomerImage.saleCustomerImageStatusId = val.saleCustomerImageStatusId;\r\n saleCustomerImage.saleCustomerImageTypeId = val.saleCustomerImageTypeId;\r\n saleCustomerImage.notAcceptDescription = val.notAcceptDescription;\r\n this.customerImages.push(saleCustomerImage);\r\n }\r\n })\r\n this.customerInfo = row;\r\n $('.customerImageInfo').modal('show');\r\n }\r\n\r\n closeModal() {\r\n this.loadData();\r\n this.customerInfo = null;\r\n $('.customerImageInfo').modal('hide');\r\n }\r\n\r\n changeColor(value: SaleCustomer) {\r\n return this.colorService.assignClassStatus(value.cStatusId);\r\n }\r\n\r\n get canAssignRoles() {\r\n return this.accountService.userHasPermission(Permission.assignRolesPermission);\r\n }\r\n\r\n get CanManageCustomer() {\r\n return this.accountService.userHasPermission(Permission.manageCustomerPermission);\r\n }\r\n\r\n get canViewCustomer() {\r\n return this.accountService.userHasPermission(Permission.ViewCustomerPermission);\r\n }\r\n\r\n getCustomerImage() {\r\n this.getCustomerImages(this.customerInfo.cMainCode, this.customerInfo.cSubCode);\r\n }\r\n\r\n getCustomerImages(customerCode: number, subCustomerCode: number) {\r\n this.saleCustomerImageInfosService.getCustomerImageInfos(customerCode, subCustomerCode).subscribe(\r\n (res: SaleCustomerImageModel[]) => {\r\n this.customerImages = res;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n جستجو\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
ردیف {{i + 1}}
... \r\n
\r\n \r\n \r\n \r\n
\r\n
نام مشتری {{row.cName}}
کد ملی {{row.cPublicCode}}
شماره تلفن {{row.cTel}}
وضعیت \r\n {{row.cStatusType}}\r\n
آدرس {{row.cAddress}}
استان {{row.cOstan}}
شهر {{row.cCity}}
گروه قیمتی {{row.group}}
داده با مشخصات وارد شده یافت نگردید.\"{{input.value}}\"
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{'SaleCustomer.management.NewSaleCustomer' | translate}}

\r\n

\r\n {{'users.management.EditUser' | translate:editingUserName}}

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\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';\nimport {addressModel} from \"../../../models/utilities/address.model\";\n\n@Component({\n selector: 'app-client-store-finder',\n templateUrl: './client-store-finder.component.html',\n styleUrls: ['./client-store-finder.component.scss']\n})\nexport class ClientStoreFinderComponent implements OnInit {\n searchtext: string;\n filteredAddress: addressModel[] = [];\n addressModel: addressModel[] =\n [\n new addressModel(1,\n 'فروشگاه جاده ملارد'\n , '2136505548'\n , 'کرج-جاده ملارد ابتدای پل ارتش پلاک 300',\n ''\n , 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n new addressModel(2,\n 'فروشگاه پرند'\n , '2191301016',\n 'تهران - پرند - فاز 5 - فروشگاه آرسام'\n , 'https://goo.gl/maps/6HjafqhDRLQMzsyy6',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n new addressModel(3,\n 'فروشگاه قرچک'\n , '2136113913'\n , 'قرچک - زیباشهر- بلوار اصلی - نرسیده به ترمینال- پلاک 40'\n , 'https://goo.gl/maps/XSPag8N7uerZfCWa6',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n new addressModel(4,\n 'فروشگاه ورامین',\n '2136224325',\n 'ورامین - خیابان دانشگاه - پ 170',\n 'https://goo.gl/maps/Ei6jKqkVMqjRKMUA8',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n new addressModel(5,\n 'فروشگاه اسلامشهر',\n '2191311312',\n 'خیابان سرنوری-بلوار بسیج-پلاک 1012',\n 'https://goo.gl/maps/96rN2A5EE1TXojkU9',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n\n new addressModel(6,\n 'فروشگاه صالحیه',\n '2156638212',\n 'شهر بهارستان-صالحیه-خیابان 30 متری-ما بین نگارستان 5 و 6-پلاک 364',\n '',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n new addressModel(7,\n 'فروشگاه نظرآباد',\n '2645340253',\n 'نظر آباد - خیابان مدرس -قبل از چهارراه 22 بهمن - ضلع شمالی - جنب آموزشگاه رانندگی ماهان',\n 'https://goo.gl/maps/tPB7H9istzCZYf3k9',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n new addressModel(8,\n 'فروشگاه تهران ویلا',\n '2166525240',\n 'تهران ویلا-سر کوچه هورسر پلاک 10 و 12',\n 'https://goo.gl/maps/Vaf8agCcVmzi3DHY6',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n\n new addressModel(9,\n 'فروشگاه همدانیان',\n '3132758088',\n 'اصفهان - خیابان همدانیان - جنب بازار گل و گیاه',\n 'https://goo.gl/maps/ZxJPi3ibgFZVP5oV8',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n new addressModel(10,\n 'فروشگاه شهر ری',\n '2133635081',\n 'خیابان فدائیان اسلام-روبروی کانون بیمه-پلاک 402',\n 'https://goo.gl/maps/mtFZaDYB1ACw6anx7',\n 'روزهای شنبه تا چهارشنبه از ساعت 9 تا 21 و روزهای پنچشنبه از ساعت 9 تا 13 پاسخگوی شما هستیم'),\n ];\n\n constructor() {\n }\n\n ngOnInit() {\n this.filteredAddress = this.addressModel;\n }\n\n onSearch(event) {\n this.filteredAddress = this.addressModel.filter(a =>\n a.name.includes(event.target.value)\n );\n }\n\n}\n","
\n
\n
\n
\n
\n

فروشگاه یاب

\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n {{item.name}}\n
\n\n
\n \n
\n
\n
\n
\n\n\n
\n
\n
\n
\n","\n\nexport class UserLogin {\n constructor(userName?: string, password?: string, rememberMe?: boolean) {\n this.userName = userName;\n this.password = password;\n this.rememberMe = rememberMe;\n }\n\n userName: string;\n password: string;\n rememberMe: boolean;\n}\n","import { Component, OnInit, ViewChild, Input, TemplateRef } from '@angular/core';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport * as moment from 'jalali-moment';\r\nimport { error } from 'jquery';\r\nimport { Router } from '@angular/router';\r\nimport { MyCompanyService } from '../../services/MyCompany.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { WareHouseResult } from '../../models/WareHouseResult.model';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { View_BarcodeInDepo } from '../../models/View_BarcodeInDepo.model';\r\nimport { WareHouseKardexResult } from '../../models/WareHouseKardexResult.model';\r\n\r\n@Component({\r\n selector: 'warehousestore-info-kardex',\r\n templateUrl: './warehousestore-info-kardex.component.html'\r\n})\r\nexport class WarehouseStoreInfoKardexComponent {\r\n public isSelect = false;\r\n\r\n summaryPosition = 'bottom';\r\n enableSummary = true;\r\n\r\n public isEditMode = true;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public formResetToggle = true;\r\n columns: any[] = [];\r\n group = '';\r\n\r\n public depocode: string = \"\";\r\n public productcode: string = \"\";\r\n public productname: string = \"\";\r\n public productUOM: string = \"\";\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public WareHouseResultObj: WareHouseResult = new WareHouseResult();\r\n public ListBarcodesObj: WareHouseKardexResult[] = [];\r\n loadingIndicator: boolean;\r\n rowsCach: WareHouseKardexResult[] = [];\r\n rows: WareHouseKardexResult[] = []; \r\n serverDate: Date;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n\r\n public Allin: number = 0;\r\n public Allout: number = 0;\r\n public Allremain: number = 0;\r\n\r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService, private authService: AuthService, private translationService: AppTranslationService, private myCompanyService: MyCompanyService\r\n , private myaccountService: MyAccountService) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n this.LoadForm();\r\n }\r\n LoadForm() {\r\n if (!this.isGeneralEditor) {\r\n\r\n }\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columns = [\r\n {\r\n prop: 'index', name: gT('wareHouseStore.warehousestoreKardex.Index'), width: 50, cellTemplate: this.indexTemplate,\r\n canAutoResize: false, summaryFunc: cells => this.DetailSummery(cells)\r\n },\r\n { prop: 'date', name: gT('wareHouseStore.warehousestoreKardex.Date'), width: 130 },\r\n { prop: 'descs', name: gT('wareHouseStore.warehousestoreKardex.Description'), width: 350 },\r\n { prop: 'input', name: gT('wareHouseStore.warehousestoreKardex.WarehouseEntryAmount'), width: 200, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'output', name: gT('wareHouseStore.warehousestoreKardex.DepartureAmountToTheWarehouse'), width: 200, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'remanid', name: gT('wareHouseStore.warehousestoreKardex.RemainingAmount'), width: 200, summaryFunc: cells => this.SumRemanid(cells) },\r\n ];\r\n this.columns.push({ name: '', width: 160, resizeable: false, cellTemplate: this.actionsTemplate, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n }\r\n private SumRemanid(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum = currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n loadKardexProduct() {\r\n this.myaccountService.GetKardexProductSelect(Number(this.authService.currentUser.phoneNumber), this.depocode, this.productcode).subscribe(results => this.GetKardexProductSelectSuccess(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private GetKardexProductSelectSuccess(list: WareHouseKardexResult[]) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.Allin = 0;\r\n this.Allout = 0;\r\n this.Allremain = 0;\r\n\r\n list.forEach((user, index, ObjPreInvoices) => {\r\n (user as any).index = index + 1;\r\n this.Allin = this.Allin + Number(user.input);\r\n this.Allout = this.Allout + Number(user.output); \r\n });\r\n \r\n this.Allremain = this.Allin - this.Allout;\r\n\r\n this.rowsCach = [...list];\r\n this.rows = list;\r\n\r\n }\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n } else {\r\n }\r\n this.resetData();\r\n //this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n }\r\n\r\n resetForm(replace = false) {\r\n if (!replace) {\r\n //this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n reset() {\r\n //this.rowsCach = [];\r\n this.rows = [];\r\n this.isEditMode = false;\r\n this.sPIPartCode = 0;\r\n this.Allin = 0;\r\n this.Allout = 0;\r\n this.Allremain = 0;\r\n }\r\n resetData() {\r\n this.reset();\r\n this.LoadForm();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
کد کالا: {{productcode}}
\r\n
\r\n
\r\n
\r\n
\r\n
واحد کالا: {{productUOM}}
\r\n
\r\n
\r\n
\r\n
\r\n
نام کالا: {{productname}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{value}}\r\n \r\n\r\n \r\n {{group}}\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\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';\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport * as moment from 'jalali-moment';\r\nimport { ReportCashierByDateModel } from '../../models/CashDesk/report-cashier-by-date.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { fadeInOut } from '../../services/animations';\nimport { AuthService } from '../../services/auth.service';\r\nimport { CashDeskService } from '../../services/cash-desk-service/cash-desk.service';\r\nimport { ColorSettingsService } from '../../services/color-settings';\r\n\n@Component({\n selector: 'cash-desk',\n templateUrl: './cash-desk.component.html',\n styleUrls: ['./cash-desk.component.scss'],\n animations: [fadeInOut]\n})\nexport class CashDeskComponent implements OnInit {\n public loadingIndicator: boolean = false;\n //public reportCashierSettlmentData: ReportCashierByDateModel[] = [];\n public displayedColumns: string[] = ['actions', 'index', 'reportDate', 'acceptedContractPrice', 'notAcceptedContractPrice', 'sumNaghd', 'contractPrice', 'countALL'];\r\n public reportCashierSettlmentData: MatTableDataSource;\n public cashDeskDetail: ReportCashierByDateModel = new ReportCashierByDateModel();\n public columns: any[] = [];\n public fromDate = moment();\n public toDate = moment();\n public cMainCode: number = 0;\n\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n\r\n @ViewChild(MatSort) sort: MatSort;\n\n constructor(private cashDeskService: CashDeskService,\n private accountService: AccountService,\n private authService: AuthService,\n private router: Router,\n private colorSettings: ColorSettingsService) { }\n\n ngOnInit() {\n if (this.cashDeskService.fromDate !== '' && this.cashDeskService.toDate !== '') {\n this.fromDate = moment(this.cashDeskService.fromDate, 'jYYYY,jMM,jDD');\n this.toDate = moment(this.cashDeskService.toDate, 'jYYYY,jMM,jDD');\n } else {\n let startDateJalali1 = moment().locale('fa').startOf('month').format('YYYY/MM/DD').replace('/', '-');\n let todayJalali1 = moment().locale('fa').format('YYYY/MM/DD').replace('/', '-');\n this.fromDate = moment(startDateJalali1, 'jYYYY,jMM,jDD');\n this.toDate = moment(todayJalali1, 'jYYYY,jMM,jDD');\n }\n \n this.cMainCodeMethod();\n }\n\n cMainCodeMethod() {\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(\n (res) => {\n this.cMainCode = res;\n this.allReportCashDesk(this.fromDate, this.toDate);\n }\n )\n }\n\n allReportCashDesk(fromDate: moment.Moment, toDate: moment.Moment) {\n let firstDayOfMonth: string = '';\n let dateOfNow: string = '';\n this.loadingIndicator = true;\n firstDayOfMonth = fromDate.locale('en').format('YYYY-MM-DD');\n dateOfNow = toDate.locale('en').format('YYYY-MM-DD');\n this.cashDeskService.getAllReportCashierByDate(+this.authService.currentUser.phoneNumber, 5, this.cMainCode, 0, firstDayOfMonth, dateOfNow, true, false).subscribe(\n (res) => {\r\n this.reportCashierSettlmentData = new MatTableDataSource(res);\n this.reportCashierSettlmentData.paginator = this.paginator;\r\n this.reportCashierSettlmentData.sort = this.sort;\n this.loadingIndicator = false;\n })\n }\n\n showCashDeskDetail(row: ReportCashierByDateModel) {\n this.cashDeskService.fromDate = this.fromDate.locale('fa').format('YYYY/MM/DD');\n this.cashDeskService.toDate = this.toDate.locale('fa').format('YYYY/MM/DD');\n let date = moment(row.reportDate).locale('en').format('YYYY-MM-DD');\n this.router.navigate(['/cash-desk/', date]);\n }\n\n diffrentContractPrice(row: ReportCashierByDateModel) {\n return this.colorSettings.diffrentContractPrice(row.contractPrice);\n }\n\n getFormatDateShamsi(date: string) {\n return new Date(date).toLocaleDateString(\"fa-IR\");\n }\n\n changeBackColor(row: ReportCashierByDateModel) {\n if (row.checkoutCashDeskId > 0) {\n return \"row-back-color\";\r\n }\r\n }\n}\n","
\r\n\r\n
\r\n

\r\n \r\n {{'pageHeader.Cash' | 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
ردیف {{i + 1}}
تاریخ {{getFormatDateShamsi(row.reportDate)}}
قرارداد های تایید شده {{row.acceptedContractPrice | number}}
قراردادهای تایید نشده {{row.notAcceptedContractPrice | number}}
نقدی {{row.sumNaghd | number}}
مغایرت \r\n {{row.contractPrice | number}}\r\n
تعداد سند {{row.countALL}}
\r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n","export enum UpdateSaleSubReceiptResult {\r\n Success,\r\n Error,\r\n EmptyOldSerial,\r\n NotExistSaleReceipt,\r\n NotExistSaleSubReceipt,\r\n NotExistSerial,\r\n NotExistOldContract,\r\n NotExistNewContract,\r\n IsNotAcceptedOrIsVoidOldContract,\r\n IsNotAcceptedAndNotIsVoidNewContract,\r\n NotEqualCustomerContract,\r\n NotEqualSubCustomerContract\r\n}\r\n","import { ViewChild, OnInit, TemplateRef, ErrorHandler, Input, ContentChild, ViewChildren } from '@angular/core';\r\nimport { Component } from '@angular/core';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal/public_api';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AppComponent } from '../../components/app.component';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { WareHouseResult } from '../../models/WareHouseResult.model';\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport { Money, Currencies } from 'ts-money';\r\nimport { Depos1 } from '../../models/Depos1.model';\r\nimport { SalePriceKind } from '../../models/SalePriceKind.model';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { WarehouseStoreInfoBarcodesComponent } from './warehousestore-info-barcodes.component';\r\nimport { WarehouseStoreInfoKardexComponent } from './warehousestore-info-kardex.component';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'warehousestore-info',\r\n templateUrl: './warehousestore-info.component.html',\r\n styleUrls: ['./warehousestore-info.component.scss']\r\n})\r\n\r\n\r\nexport class WarehouseStoreInfoComponent {\r\n public Depocode: string;\r\n public rowsDepoProducts: WareHouseResult[] = [];\r\n public rowsDepoProductsCash: WareHouseResult[] = [];\r\n public columnsDepoProducts: any[] = [];\r\n public loadingIndicator: boolean;\r\n public allDepos: Depos1[] = [];\r\n public summaryPosition = 'bottom';\r\n public enableSummary = true;\r\n public isViewOnly = false;\r\n public allgroup: SalePriceKind[] = [];\r\n public pricekindid: number;\r\n public displayedColumns: string[] = ['index', 'dcCode', 'dcDesc', 'dpuName', 'sumInput', 'sumOutput', 'remanid'];\r\n public wareHouseStore: MatTableDataSource;\r\n\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('showkardexEditor', { static: false })\r\n showkardexEditor: WarehouseStoreInfoKardexComponent;\r\n\r\n @ViewChild('editorModalshowkardex', { static: true })\r\n editorModalshowkardex: ModalDirective;\r\n\r\n @ViewChild('showbarcodesEditor', { static: false })\r\n showbarcodesEditor: WarehouseStoreInfoBarcodesComponent;\r\n\r\n @ViewChild('editorModalshowbarcodes', { static: true })\r\n editorModalshowbarcodes: ModalDirective;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private translationService: AppTranslationService,\r\n private authService: AuthService,\r\n private myaccountService: MyAccountService,\r\n private excelService: ExcelService) {}\r\n\r\n ngOnInit() {\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n this.columnsDepoProducts = [\r\n { prop: 'index', name: gT('wareHouseStore.homePage.Index'), width: 50, cellTemplate: this.indexTemplate, canAutoResize: false, summaryFunc: cells => this.DetailSummery(cells) },\r\n { prop: 'dcCode', name: gT('wareHouseStore.homePage.ProductCode'), width: 130 },\r\n { prop: 'dcDesc', name: gT('wareHouseStore.homePage.ProductName'), width: 350 },\r\n { prop: 'dpuName', name: gT('wareHouseStore.homePage.CommodityUnit'), width: 80 },\r\n { prop: 'suminput', name: gT('wareHouseStore.homePage.WarehouseEntryAmount'), width: 200, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'sumoutput', name: gT('wareHouseStore.homePage.DepartureAmountToTheWarehouse'), width: 200, summaryFunc: cells => this.SumMoney(cells) },\r\n { prop: 'remanid', name: gT('wareHouseStore.homePage.RemainingAmount'), width: 200, summaryFunc: cells => this.SumMoney(cells) },\r\n ];\r\n this.columnsDepoProducts.push({ name: '', width: 250, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.LoadData();\r\n }\r\n\r\n DetailSummery(cells: any) {\r\n const filteredCells = \"جمع\";\r\n return filteredCells;\r\n }\r\n\r\n select(event: number) {\r\n this.rowsDepoProducts = [];\r\n this.rowsDepoProductsCash = [];\r\n this.loadingIndicator = true;\r\n this.myaccountService.GetDepoTarazNew(Number(this.authService.currentUser.phoneNumber), event.toString(), this.pricekindid).subscribe(res => this.LoadDepoProducts(res), error => this.saveerror(error));\r\n };\r\n\r\n onChangegroup(idGroup) {\r\n this.rowsDepoProducts = [];\r\n this.rowsDepoProductsCash = [];\r\n this.loadingIndicator = true;\r\n this.pricekindid = idGroup;\r\n this.myaccountService.GetDepoTarazNew(Number(this.authService.currentUser.phoneNumber), this.Depocode, this.pricekindid).subscribe(res => this.LoadDepoProducts(res), error => this.saveerror(error));\r\n }\r\n\r\n LoadData() {\r\n this.myaccountService.getDeposOwner(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n }\r\n\r\n MethodGetDepoProducts(res: number): void {\r\n this.accountService.getgroupswithSaleCustomerItemPriceKind(res).subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private onCurrentUserDataLoadSuccessful(groups: SalePriceKind[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allgroup = groups;\r\n groups.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.pricekindid = user.pkcode;\r\n }\r\n });\r\n this.myaccountService.GetDepoTarazNew(Number(this.authService.currentUser.phoneNumber), this.Depocode, this.pricekindid).subscribe(res => this.LoadDepoProducts(res), error => this.saveerror(error));\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n methodLoaddepos(res: Depos1[]): void {\r\n this.allDepos = res;\r\n this.allDepos.forEach((user, index) => {\r\n if (index == 0) {\r\n this.Depocode = user.value;\r\n this.loadingIndicator = true;\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodGetDepoProducts(res));\r\n }\r\n });\r\n }\r\n\r\n private SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, { code: 'USD' })), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n saveerror(error: any): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n\r\n LoadDepoProducts(res: WareHouseResult[]): void {\r\n if (res){\r\n this.alertService.stopLoadingMessage();\r\n this.rowsDepoProductsCash = [...res];\r\n this.rowsDepoProducts = res;\r\n this.rowsDepoProducts = res;\r\n this.wareHouseStore = new MatTableDataSource(res);\r\n this.wareHouseStore.paginator = this.paginator;\r\n this.wareHouseStore.sort = this.sort;\r\n }\r\n }\r\n\r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.wareHouseStore.filter = filterValue.trim().toLowerCase();\r\n if (this.wareHouseStore.paginator) {\r\n this.wareHouseStore.paginator.firstPage();\r\n }\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rowsDepoProducts = this.rowsDepoProductsCash.filter(r => Utilities.searchArray(value, false, r.dcCode, r.dcDesc));\r\n }\r\n\r\n onCheckboxChange(e) {\r\n if (e == 0) {\r\n this.rowsDepoProducts = this.rowsDepoProductsCash;\r\n }\r\n else if (e == 1) {\r\n this.rowsDepoProducts = this.rowsDepoProductsCash.filter(r => r.remanid == 0);\r\n } else if (e == 2) {\r\n this.rowsDepoProducts = this.rowsDepoProductsCash.filter(r => r.remanid > 0);\r\n }\r\n else {\r\n this.rowsDepoProducts = this.rowsDepoProductsCash;\r\n }\r\n }\r\n\r\n ShowBarCodes(row: WareHouseResult) {\r\n this.showbarcodesEditor.WareHouseResultObj = row;\r\n this.showbarcodesEditor.productcode = row.dcCode;\r\n this.showbarcodesEditor.productname = row.dcDesc;\r\n this.showbarcodesEditor.productUOM = row.dpuName;\r\n this.showbarcodesEditor.depocode = this.Depocode;\r\n this.showbarcodesEditor.loadingIndicator = true;\r\n this.showbarcodesEditor.isGeneralEditor = true;\r\n this.showbarcodesEditor.loadBarcoded();\r\n this.editorModalshowbarcodes.show();\r\n }\r\n\r\n ShowKardex(row: WareHouseResult) {\r\n this.showkardexEditor.WareHouseResultObj = row;\r\n this.showkardexEditor.productcode = row.dcCode;\r\n this.showkardexEditor.productname = row.dcDesc;\r\n this.showkardexEditor.productUOM = row.dpuName;\r\n this.showkardexEditor.depocode = this.Depocode;\r\n this.showkardexEditor.loadingIndicator = true;\r\n this.showkardexEditor.isGeneralEditor = true;\r\n this.showkardexEditor.loadKardexProduct();\r\n this.editorModalshowkardex.show();\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.showbarcodesEditor.resetData();\r\n this.showkardexEditor.resetData();\r\n }\r\n\r\n exportAsXLSX(): void {\r\n this.excelService.exportAsExcelFile(this.rowsDepoProducts, 'تراز انبار');\r\n }\r\n\r\n printPage() {\r\n window.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
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n جستجو\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
ردیف {{i + 1}}
کد کالا \r\n {{row.dcCode}} \r\n
نام کالا {{row.dcDesc}}
واحد کالا {{row.dpuName}}
ورود به انبار {{row.sumInput}}
خروج از انبار {{row.sumOutput}}
مقدار مانده \r\n {{ row.remanid | number}} \r\n
داده با مشخصات وارد شده یافت نگردید.\"{{input.value}}\"
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n ss\r\n
\r\n
\r\n
\r\n

لیست بارکدها - {{showbarcodesEditor.productcode}}

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

کاردکس کالا - {{showkardexEditor.productcode}}

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { VMSaleNewContractProduct_PrintInvoice } from \"./VMSaleNewContractProduct_PrintInvoice.model\";\r\n\r\nexport class VMSaleNewContract {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(NCYear?: number, NCPartCode?: number, NCCode?: number, NCRegistUserCode?: number, NCDate?: string, NCCustomerCode?: number, NCSubCustomerCode?: number,\r\n NCName?: string, NCAddress?: string, SumCount?: number, SumTotal?: number, sumDiscount?: number, SumTotalWithDiscount?: number, PaymentType?: string, Cashyer?: string, SaleNewContractProducts?: VMSaleNewContractProduct_PrintInvoice[]) {\r\n this.ncYear = NCYear;\r\n this.ncPartCode = NCPartCode;\r\n this.ncCode = NCCode;\r\n this.ncRegistUserCode = NCRegistUserCode;\r\n this.ncDate = NCDate;\r\n this.ncCustomerCode = NCCustomerCode;\r\n this.ncSubCustomerCode = NCSubCustomerCode;\r\n this.ncName = NCName;\r\n this.ncAddress = NCAddress;\r\n this.sumCount = SumCount;\r\n this.sumTotal = SumTotal;\r\n this.sumDiscount = sumDiscount;\r\n this.sumTotalWithDiscount = SumTotalWithDiscount;\r\n this.paymentType = PaymentType;\r\n this.cashyer = Cashyer;\r\n this.saleNewContractProducts = SaleNewContractProducts;\r\n }\r\n public ncYear: number;\r\n public ncPartCode: number;\r\n public ncCode: number;\r\n public ncRegistUserCode: number;\r\n public ncDate: string;\r\n public ncCustomerCode: number;\r\n public ncSubCustomerCode: number;\r\n public ncName: string;\r\n public ncAddress: string;\r\n public sumCount: number;\r\n public sumTotal: number;\r\n public sumDiscount: number;\r\n public sumTotalWithDiscount: number;\r\n public paymentType: string;\r\n public cashyer: string;\r\n public saleNewContractProducts: VMSaleNewContractProduct_PrintInvoice[];\r\n\r\n} \r\n","import {NgModule, Injectable} from '@angular/core';\r\nimport {Routes, RouterModule, DefaultUrlSerializer, UrlSerializer, UrlTree, PreloadAllModules, Router} from '@angular/router';\r\nimport {LoginComponent} from './components/login/login.component';\r\nimport {HomeComponent} from './components/home/home.component';\r\nimport {CustomersComponent} from './components/customers/customers.component';\r\nimport {invoicesaleComponent} from './components/invoicesale/invoicesale.component';\r\nimport {contractComponent} from './components/contract/contract.component';\r\nimport {OrdersComponent} from './components/orders/orders.component';\r\nimport {residComponent} from './components/resid/resid.component';\r\nimport {settlementComponent} from './components/settlement/settlement.component';\r\nimport {returnedComponent} from './components/returned/returned.component';\r\nimport {depotarazComponent} from './components/depotaraz/depotaraz.component';\r\nimport {AboutComponent} from './components/about/about.component';\r\nimport {NotFoundComponent} from './components/not-found/not-found.component';\r\nimport {AuthService} from './services/auth.service';\r\nimport {AuthGuard} from './services/auth-guard.service';\r\nimport {Utilities} from './services/utilities';\r\nimport {InvInfoCComponent} from './components/controls/inv-info-c.component';\r\nimport {InventoryComponent} from './components/inventory/inventory.component';\r\nimport {bill} from './components/bill/bill.component';\r\nimport {PreviewsPrintComponent} from './components/previews-print/previews-print.component';\r\nimport {WarehouseStoreComponent} from './components/warehousestore/warehousestore.component';\r\nimport {CashDeskComponent} from './components/cash-desk/cash-desk.component';\r\nimport {SendOrderComponent} from './components/send-order/send-order.component';\r\nimport {WebsiteGuideComponent} from './components/website-guide/website-guide.component';\r\nimport {ForgotPasswordComponent} from './components/forgot-password/forgot-password.component';\r\nimport {NewPasswordComponent} from './components/new-password/new-password.component';\r\nimport {VisitsListComponent} from './components/visits-list/visits-list.component';\r\nimport {ReportsMarketerComponent} from './components/reports-marketer/reports-marketer.component';\r\nimport {PricePaymentFormInfoComponent} from './components/controls/price-payment-form-info.component';\r\nimport {PersonalInformationComponent} from './components/personal-information/personal-information.component';\r\nimport {CheckInformationComponent} from './components/check-information/check-information.component';\r\nimport {DownloadRegistrationComponent} from './components/download-registration/download-registration.component';\r\nimport {CustomerClubListComponent} from './components/customer-club-list/customer-club-list.component';\r\nimport {CashDeskDetailComponent} from './components/cash-desk/cash-desk-detail/cash-desk-detail.component';\r\nimport {VisitorDetailComponent} from './components/visitors-cartable/visitor-detail/visitor-detail.component';\r\nimport {SaleReciptCashComponent} from \"./components/sale-receipt-customer/sale-recipt-cash/sale-recipt-cash.component\";\r\nimport {ClientHomeComponent} from \"./components/client/client-home/client-home.component\";\r\nimport {ClientComponent} from \"./components/client/client.component\";\r\nimport {ClientStoreFinderComponent} from \"./components/client/client-store-finder/client-store-finder.component\";\r\nimport {ClientProductComponent} from \"./components/client/client-product/client-product.component\";\r\nimport {ClientFranchiseComponent} from \"./components/client/client-franchise/client-franchise.component\";\r\nimport {SingleProductComponent} from \"./components/client/client-product/single-product/single-product.component\";\r\nimport {ClientProductListComponent} from \"./components/client/client-home/client-product-list/client-product-list.component\";\r\n\r\nexport class LowerCaseUrlSerializer extends DefaultUrlSerializer {\r\n parse(url: string): UrlTree {\r\n const possibleSeparators = /[?;#]/;\r\n const indexOfSeparator = url.search(possibleSeparators);\r\n let processedUrl: string;\r\n\r\n if (indexOfSeparator > -1) {\r\n const separator = url.charAt(indexOfSeparator);\r\n const urlParts = Utilities.splitInTwo(url, separator);\r\n urlParts.firstPart = urlParts.firstPart.toLowerCase();\r\n\r\n processedUrl = urlParts.firstPart + separator + urlParts.secondPart;\r\n } else {\r\n processedUrl = url.toLowerCase();\r\n }\r\n\r\n return super.parse(processedUrl);\r\n }\r\n}\r\n\r\nconst routes: Routes = [\r\n\r\n {\r\n path: '', component: ClientComponent,\r\n children: [\r\n {path: '', component: ClientHomeComponent},\r\n {path: 'about', component: AboutComponent},\r\n {path: 'stores', component: ClientStoreFinderComponent},\r\n // {path: 'product', component: ClientProductListComponent},\r\n {path: 'franchise', component: ClientFranchiseComponent},\r\n {path: 'product/:id', component: ClientProductComponent},\r\n {path: 'single-product/:id', component: SingleProductComponent},\r\n ]\r\n },\r\n\r\n\r\n {path: 'login', component: LoginComponent, data: {title: 'ورود'}},\r\n {path: 'forgot-password', component: ForgotPasswordComponent, data: {title: 'فراموشی رمز'}},\r\n {path: 'new-password', component: NewPasswordComponent, data: {title: 'رمز ورود جدید'}},\r\n\r\n {path: 'dashboard', component: HomeComponent, canActivate: [AuthGuard], data: {title: 'خانه'}},\r\n {path: 'customers', component: CustomersComponent, canActivate: [AuthGuard], data: {title: 'مشتریان'}},\r\n {path: 'invoicesale', component: invoicesaleComponent, canActivate: [AuthGuard], data: {title: 'پیش فاکتور'}},\r\n {path: 'invoicesale/add', component: InvInfoCComponent, canActivate: [AuthGuard], data: {title: 'add'}},\r\n {path: 'contract', component: contractComponent, canActivate: [AuthGuard], data: {title: 'قرارداد'}},\r\n {path: 'orders', component: OrdersComponent, canActivate: [AuthGuard], data: {title: 'ترازمشتریان'}},\r\n {path: 'resid', component: residComponent, canActivate: [AuthGuard], data: {title: 'رسید'}},\r\n {path: 'inventory', component: InventoryComponent, canActivate: [AuthGuard], data: {title: 'فهرست'}},\r\n {path: 'bill', component: bill, canActivate: [AuthGuard], data: {title: 'رسید چاپی'}},\r\n {path: 'previewsprint', component: PreviewsPrintComponent, canActivate: [AuthGuard], data: {title: 'پیش نمایش چاپ'}},\r\n {path: 'warehousestore', component: WarehouseStoreComponent, canActivate: [AuthGuard], data: {title: 'ترازانبار'}},\r\n {path: 'cash-desk', component: CashDeskComponent, canActivate: [AuthGuard], data: {title: 'صندوق'}},\r\n {path: 'cash-desk/:cashDate', component: CashDeskDetailComponent, canActivate: [AuthGuard], data: {title: 'جزئیات صندوق'}},\r\n {path: 'send-order', component: SendOrderComponent, canActivate: [AuthGuard], data: {title: 'سفارش ارسال'}},\r\n {path: 'visitors-cartable/:id/:fromDate/:toDate', component: VisitorDetailComponent, canActivate: [AuthGuard], data: {title: 'جزئیات ویزیتور'}},\r\n {path: 'website-guide', component: WebsiteGuideComponent, canActivate: [AuthGuard], data: {title: 'راهنمای وبسایت'}},\r\n {path: 'visits-list', component: VisitsListComponent, canActivate: [AuthGuard], data: {title: 'لیست ویزیت ها'}},\r\n {path: 'reports-marketer', component: ReportsMarketerComponent, canActivate: [AuthGuard], data: {title: 'گزارشات'}},\r\n {path: 'price-payment', component: PricePaymentFormInfoComponent, canActivate: [AuthGuard], data: {title: 'پرداختی'}},\r\n {path: 'personal-information', component: PersonalInformationComponent, canActivate: [AuthGuard], data: {title: 'اطلاعات فردی'}},\r\n {path: 'check-information', component: CheckInformationComponent, canActivate: [AuthGuard], data: {title: 'تایید چک'}},\r\n {path: 'depotaraz', component: depotarazComponent, canActivate: [AuthGuard], data: {title: 'ترازانبار'}},\r\n {path: 'settlement', component: settlementComponent, canActivate: [AuthGuard], data: {title: 'تسویه'}},\r\n {path: 'returned', component: returnedComponent, canActivate: [AuthGuard], data: {title: 'مرجوع'}},\r\n {path: 'about', component: AboutComponent, data: {title: 'درباره ما'}},\r\n {path: 'home', redirectTo: '/', pathMatch: 'full'},\r\n {path: 'download-registration', component: DownloadRegistrationComponent, canActivate: [AuthGuard], data: {title: 'ثبت بارگیری'}},\r\n {path: 'customer-club', component: CustomerClubListComponent, canActivate: [AuthGuard], data: {title: 'لیست باشگاه مشتریان'}},\r\n {path: 'not-found', component: NotFoundComponent, data: {title: 'صفحه پیدا نشد'}},\r\n {path: '**', redirectTo: 'not-found'}\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, {scrollPositionRestoration: 'top', relativeLinkResolution: 'legacy', preloadingStrategy: PreloadAllModules})],\r\n exports: [RouterModule],\r\n providers: [\r\n AuthService,\r\n AuthGuard,\r\n {provide: UrlSerializer, useClass: LowerCaseUrlSerializer}]\r\n})\r\nexport class AppRoutingModule {\r\n}\r\n","\n\nimport { Directive, ElementRef, Output, EventEmitter, OnDestroy, NgZone } from '@angular/core';\nimport { Observable, Subscription, fromEvent } from 'rxjs';\n\n\ndeclare var $: any;\n\ninterface eventArg { type: string; target: Element; relatedTarget: Element; }\n\n@Directive({\n selector: '[bootstrapTab]',\n exportAs: 'bootstrap-tab'\n})\nexport class BootstrapTabDirective implements OnDestroy {\n\n\n @Output()\n showBSTab = new EventEmitter();\n\n @Output()\n hideBSTab = new EventEmitter();\n\n private tabShownSubscription: Subscription;\n private tabHiddenSubscription: Subscription;\n\n\n constructor(private el: ElementRef, private zone: NgZone) {\n\n this.tabShownSubscription = fromEvent($(this.el.nativeElement), 'show.bs.tab')\n .subscribe((e: any) => {\n this.runInZone(() => this.showBSTab.emit({ type: e.type, target: e.target, relatedTarget: e.relatedTarget }));\n });\n\n this.tabHiddenSubscription = fromEvent($(this.el.nativeElement), 'hidden.bs.tab')\n .subscribe((e: any) => {\n this.runInZone(() => this.hideBSTab.emit({ type: e.type, target: e.target, relatedTarget: e.relatedTarget }));\n });\n }\n\n\n ngOnDestroy() {\n this.tabShownSubscription.unsubscribe();\n this.tabHiddenSubscription.unsubscribe();\n }\n\n\n private runInZone(delegate: () => any) {\n this.zone.run(() => {\n delegate();\n });\n }\n\n\n show(selector: string) {\n $(selector).tab('show');\n }\n}\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
... \r\n
\r\n \r\n
\r\n
ردیف {{ i + 1 }}
شماره رسید موقت {{row.drtCode}}
کد تحویل دهنده {{row.drtDealerCode}}
کد انبار {{row.drtDepCode}}
تاریخ رسید موقت {{row.drtRecieptDate}}
شماره تایید فنی {{row.drttCode}}
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n شماره رسید دائم\r\n \r\n \r\n
\r\n
\r\n \r\n نوع وسیله حمل\r\n \r\n \r\n
\r\n
\r\n \r\n شماره پلاک\r\n \r\n \r\n
\r\n
\r\n \r\n انبار مبدا\r\n \r\n \r\n
\r\n
\r\n \r\n توضیحات\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n سریال کالا\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
... \r\n
\r\n \r\n
\r\n
ردیف {{ i + 1 }}
کدکالا {{row.drtddcCode}}
شرح کالا {{row.dcDesc}}
واحد کالا {{row.dpuName}}
مقدار رسید موقت {{row.drtdCount}}
مقدار رسید دائم {{row.drpdCount}}
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\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 { ViewChild, TemplateRef, ElementRef, OnInit, Renderer2, AfterViewInit } from '@angular/core';\r\nimport { Component } from '@angular/core';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { VMDepoRecieptTemporaryNewSelectForPermanent } from '../../models/VMDepoRecieptTemporaryNewSelectForPermanent.model';\r\nimport { DepoRecieptTemporaryNewDetailSelectForPermanentResult } from '../../models/DepoRecieptTemporaryNewDetailSelectForPermanentResult.model';\r\nimport { DepoRecieptTemporaryBarCodeSelectResult } from '../../models/DepoRecieptTemporaryBarCodeSelectResult';\r\nimport { DepoRecieptPermanent } from '../../models/DepoRecieptPermanent.model';\r\nimport { DepoRecieptPermanentDetail } from '../../models/DepoRecieptPermanentDetail.model';\r\nimport { DepoRecieptPermanentBarCode } from '../../models/DepoRecieptPermanentBarCode.model';\r\nimport { Depos1 } from '../../models/Depos1.model';\r\nimport { SupliesOrderRelationReciept } from '../../models/SupliesOrderRelationReciept.model';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { forkJoin } from 'rxjs';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { BarcodeListModel } from '../../models/utilities/barcode-list.model';\r\nimport { ConfirmMessageModel } from '../../models/utilities/confirm-message.model';\r\nimport { ConfirmMessageEnum } from '../../enums/confirm-message.enum';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { SaleClosingManagementService } from '../../services/base-services/sale-closing-management.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'resid-info',\r\n templateUrl: './resid-info.component.html',\r\n styleUrls: ['./resid-info.component.scss']\r\n})\r\nexport class residinfocomponent implements OnInit, AfterViewInit {\r\n rows: DepoRecieptTemporaryBarCodeSelectResult[] = [];\r\n rowsDepoRecieptTemporaryNewSelectForPermanent: VMDepoRecieptTemporaryNewSelectForPermanent[] = [];\r\n rowsDepoRecieptTemporaryNewSelectForPermanentCash: VMDepoRecieptTemporaryNewSelectForPermanent[] = [];\r\n rowsDepoRecieptTemporaryNewDetail: DepoRecieptTemporaryNewDetailSelectForPermanentResult[] = [];\r\n rowsDepoRecieptTemporaryNewDetailCash: DepoRecieptTemporaryNewDetailSelectForPermanentResult[] = [];\r\n public ObjDepoRecieptPermanent: DepoRecieptPermanent = new DepoRecieptPermanent();\r\n public ObjDepoRecieptPermanentDetail: DepoRecieptPermanentDetail = new DepoRecieptPermanentDetail();\r\n public DepoRecieptPermanentBarCodeobj: DepoRecieptPermanentBarCode = new DepoRecieptPermanentBarCode();\r\n public SupliesOrderRelationRecieptObj: SupliesOrderRelationReciept = new SupliesOrderRelationReciept();\r\n\r\n public displayedColumns: string[] = ['actions', 'index', 'drtCode', 'drtDealerCode', 'drtDepCode', 'drtRecieptDate', 'drttCode'];\r\n public recieptTemporaryList: MatTableDataSource;\r\n public displayedColumnsDetail: string[] = ['actions', 'index', 'drtddcCode', 'dcDesc', 'dpuName', 'drtdCount', 'drpdCount'];\r\n public recieptTemporaryListDetail: MatTableDataSource;\r\n public showRecieptTemporaryListDetail: boolean = false;\r\n public barcodeList: string[] = [];\r\n public newBarcodeList: BarcodeListModel[] = [];\r\n public confirmMessageObj: ConfirmMessageModel = new ConfirmMessageModel();\r\n public lastAccept: boolean = false;\r\n\r\n columnsTemproryResid: any[] = [];\r\n columnsTemproryResidDetail: any[] = [];\r\n loadingIndicator: boolean;\r\n selected = [];\r\n carKind: string;\r\n cNumer: string;\r\n depTitle: string;\r\n drtCode: number;\r\n drtRecieptDate: string;\r\n drtCarCode: number;\r\n newCodeRecieptPermanent: number;\r\n DRPBCode: number;\r\n drtbCodeget: string;\r\n indexNumber: number;\r\n drtDealerCode: string;\r\n drtDepCode: string;\r\n drpdesc: string;\r\n isViewOnly = false;\r\n drtKindDealerCode: number;\r\n carcode: number;\r\n uniqueId = '';\r\n SerialCode: string[] = [];\r\n public isSaving = false;\r\n drtRecieptTime: any;\r\n public allDepos: Depos1[] = [];\r\n public Depocode: string;\r\n serverDate: Date;\r\n public SerialNUmber: string;\r\n isInputTxtKeyNumber: boolean;\r\n\r\n @ViewChild(MatSort) sort: MatSort;\r\n\r\n @ViewChild('txtserial', { static: true }) searchElement: ElementRef;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('myTable', { static: true }) table: any;\r\n form: FormGroup;\r\n\r\n\r\n\r\n constructor(private alertService: AlertService,\r\n private saleClosingManagementService: SaleClosingManagementService,\r\n private accountService: AccountService,\r\n private authService: AuthService,\r\n private myaccountService: MyAccountService,\r\n private renderer: Renderer2) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n this.loaddata();\r\n this.form = new FormGroup({\r\n myInput: new FormControl('')\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.showRecieptTemporaryListDetail) {\r\n setTimeout(() => {\r\n var elem = this.renderer.selectRootElement('#myInput');\r\n this.renderer.listen(elem, \"focus\", () => { console.log('focus') });\r\n this.renderer.listen(elem, \"blur\", () => { console.log('blur') });\r\n elem.focus();\r\n }, 1000);\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n loaddata() {\r\n let userId: string = this.authService.currentUser.id;\r\n let currentYear: number = +this.authService.currentUser.phoneNumber;\r\n this.myaccountService.getDeposOwner(userId).subscribe(\r\n (res: Depos1[]) => {\r\n this.allDepos = res;\r\n this.Depocode = this.allDepos[0].value;\r\n this.accountService.GetDepoRecieptTemporaryList(currentYear, this.Depocode).subscribe(\r\n res => {\r\n this.recieptTemporaryList = new MatTableDataSource(res);\r\n this.recieptTemporaryList.sort = this.sort;\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanentCash = [...res];\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanent = res;\r\n },\r\n error => console.log(error));\r\n }\r\n )\r\n }\r\n\r\n showReciptDetail(row: VMDepoRecieptTemporaryNewSelectForPermanent) {\r\n let newRecieptTemporaryList = this.recieptTemporaryList.data.filter(x => x.drtCode === row.drtCode);\r\n this.recieptTemporaryList = new MatTableDataSource(newRecieptTemporaryList);\r\n this.recieptTemporaryList.sort = this.sort;\r\n\r\n this.DRPBCode = row.drtCode;\r\n this.drtDealerCode = row.drtDealerCode;\r\n this.drtDepCode = row.drtDepCode;\r\n this.drtKindDealerCode = row.drtKindDealerCode;\r\n forkJoin(this.depoRecieptTemporaryNewDetail(row), this.depoRecieptTemporaryDetail(row), this.newCodeDepoRecieptPermanent(row)).subscribe(\r\n (res) => {\r\n this.recieptTemporaryListDetail = new MatTableDataSource(res[0]);\r\n this.recieptTemporaryListDetail.sort = this.sort;\r\n this.rowsDepoRecieptTemporaryNewDetail = res[0];\r\n this.rowsDepoRecieptTemporaryNewDetailCash = [...res[0]];\r\n res[1].forEach((user) => {\r\n this.carKind = user.carKind;\r\n this.carcode = user.drtCarCode;\r\n this.cNumer = user.cNumer;\r\n this.depTitle = user.depTitle;\r\n this.drtCode = user.drtCode;\r\n this.drtRecieptDate = user.drtRecieptDate;\r\n this.drtCode = user.drtCode;\r\n this.drtRecieptTime = user.drtRecieptDateTime;\r\n })\r\n this.newCodeRecieptPermanent = res[2];\r\n this.showRecieptTemporaryListDetail = true;\r\n })\r\n }\r\n\r\n depoRecieptTemporaryNewDetail(row: VMDepoRecieptTemporaryNewSelectForPermanent) {\r\n return this.accountService.GetDepoRecieptTemporaryNewDetail(Number(this.authService.currentUser.phoneNumber), row.drtDepCode, row.drtCode, 0);\r\n }\r\n\r\n depoRecieptTemporaryDetail(row: VMDepoRecieptTemporaryNewSelectForPermanent) {\r\n return this.accountService.GetDepoRecieptTemporaryDetail(Number(this.authService.currentUser.phoneNumber), row.drtDepCode, row.drtCode);\r\n }\r\n\r\n newCodeDepoRecieptPermanent(row: VMDepoRecieptTemporaryNewSelectForPermanent) {\r\n return this.accountService.GetNewCodeDepoRecieptPermanent(+this.authService.currentUser.phoneNumber, +row.drtDepCode);\r\n }\r\n\r\n showBarcodes(barcodes: string[]) {\r\n this.barcodeList = barcodes;\r\n this.newBarcodeList = [];\r\n this.barcodeList.forEach(\r\n (val) => {\r\n let newBarcodeObject = new BarcodeListModel();\r\n let findBarcode = this.SerialCode.find(x => x === val);\r\n newBarcodeObject.isSelect = 1;\r\n if (findBarcode === undefined) {\r\n newBarcodeObject.isSelect = 0;\r\n }\r\n newBarcodeObject.barcode = val;\r\n this.newBarcodeList.push(newBarcodeObject);\r\n })\r\n $('.receipt-barcode-list').modal('show');\r\n }\r\n\r\n borcodeListModalClose() {\r\n $('.receipt-barcode-list').modal('hide');\r\n }\r\n\r\n addSelectModalBarcode(barcodes: string[]) {\r\n barcodes.forEach((item) => {\r\n let count = 0;\r\n this.SerialCode.forEach((val) => {\r\n if (val == item) {\r\n count++;\r\n }\r\n })\r\n if (count == 0) {\r\n this.accountService.GetDepoRecieptTemporaryBarCodeCheckSerial(Number(this.authService.currentUser.phoneNumber), this.DRPBCode, this.drtDepCode, item).subscribe(\r\n res => this.loadDepoRecieptTemporaryDetailProductCode(res, item),\r\n error => this.saveerror(error));\r\n }\r\n });\r\n $('.receipt-barcode-list').modal('hide');\r\n }\r\n\r\n\r\n onKeydownSerial(barcode) {\r\n this.SerialNUmber = barcode;\r\n var isCan = true;\r\n this.isInputTxtKeyNumber = true;\r\n this.SerialCode.forEach((user) => {\r\n if (user == this.SerialNUmber) {\r\n isCan = false;\r\n }\r\n });\r\n\r\n if (isCan) {\r\n this.accountService.GetDepoRecieptTemporaryBarCodeCheckSerial(Number(this.authService.currentUser.phoneNumber),\r\n this.DRPBCode, this.drtDepCode, this.SerialNUmber).subscribe(\r\n res => this.loadDepoRecieptTemporaryDetailProductCode(res, this.SerialNUmber),\r\n error => this.saveerror(error));\r\n }\r\n else {\r\n this.alertService.showMessage('خطا', 'شماره سریال قبلا وارد شده', MessageSeverity.warn);\r\n this.SerialNUmber = \"\";\r\n this.isInputTxtKeyNumber = false;\r\n }\r\n this.renderer.selectRootElement('#myInput').focus();\r\n }\r\n\r\n loadDepoRecieptTemporaryDetailProductCode(res: DepoRecieptTemporaryBarCodeSelectResult[], barcode): void {\r\n this.drtbCodeget = \"\";\r\n this.isInputTxtKeyNumber = false;\r\n res.forEach((user) => {\r\n this.drtbCodeget = user.drtbProductCode;\r\n });\r\n this.rowsDepoRecieptTemporaryNewDetailCash.forEach((user) => {\r\n if (user.drtddcCode == this.drtbCodeget) {\r\n if (String(user.drpdCount) == \"undefined\") {\r\n user.drpdCount = 1;\r\n }\r\n else {\r\n user.drpdCount = user.drpdCount + 1;\r\n }\r\n this.SerialCode.push(barcode);\r\n }\r\n });\r\n this.recieptTemporaryListDetail = new MatTableDataSource(this.rowsDepoRecieptTemporaryNewDetailCash);\r\n this.recieptTemporaryListDetail.sort = this.sort;\r\n this.SerialNUmber = \"\";\r\n }\r\n\r\n saveReceipt() {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n this.confirmMessageObj.statusId = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.confirmType = ConfirmMessageEnum.yesOrNo;\r\n this.confirmMessageObj.title = 'ثبت رسید دائم';\r\n this.confirmMessageObj.text = 'آیا مایل به ثبت رسید موقت و تبدیل به رسید دائم هستید؟.';\r\n this.lastAccept = true;\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n\r\n }\r\n\r\n SavePermanentInsert(event: boolean) {\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n this.lastAccept = false;\r\n if (event) {\r\n var isCan = true;\r\n var isExsit = true;\r\n this.rowsDepoRecieptTemporaryNewDetailCash.forEach((user) => {\r\n if (user.drpdCount != user.drtdCount) {\r\n isCan = false;\r\n }\r\n });\r\n if (isCan) {\r\n this.accountService.GetDepoRecieptPermanents(Number(this.authService.currentUser.phoneNumber), this.drtDepCode, this.DRPBCode).subscribe(res => this.loadeExist(res));\r\n }\r\n else {\r\n this.alertService.showMessage('خطا', 'مقدار ستون رسید دائم با موقت باید یکی باشد', MessageSeverity.warn);\r\n }\r\n }\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n loadeExist(res: boolean): void {\r\n if (!res) {\r\n this.accountService.GetNewCodeDepoRecieptPermanent(Number(this.authService.currentUser.phoneNumber), Number(this.drtDepCode)).subscribe(res => this.loadeNewCodeLoading(res));\r\n }\r\n else {\r\n this.alertService.showMessage('خطا', 'رسید دائم برای این رسید موقت قبلا ثبت شده است', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n loadeNewCodeLoading(res: number): void {\r\n this.ObjDepoRecieptPermanent.DRPYear = Number(this.authService.currentUser.phoneNumber);\r\n this.ObjDepoRecieptPermanent.DRPUserCode = 27;\r\n this.ObjDepoRecieptPermanent.DRPCarCode = this.carcode;\r\n this.ObjDepoRecieptPermanent.DRPCode = res;\r\n this.ObjDepoRecieptPermanent.DRPDateTime = this.serverDate.toLocaleDateString('en-US');\r\n this.ObjDepoRecieptPermanent.DRPSysDate = this.serverDate.toLocaleDateString('en-US');\r\n this.ObjDepoRecieptPermanent.DRPDealerCode = this.drtDealerCode;\r\n this.ObjDepoRecieptPermanent.DRPDepCode = this.drtDepCode;\r\n this.ObjDepoRecieptPermanent.DRPDesc = this.drpdesc;\r\n this.ObjDepoRecieptPermanent.DRPKindDealerCode = this.drtKindDealerCode;\r\n this.ObjDepoRecieptPermanent.DRPRecieptTecnical = 0;\r\n this.ObjDepoRecieptPermanent.DRPRecieptTemp = this.drtCode;\r\n this.ObjDepoRecieptPermanent.DRPDeliverCode = 8;\r\n this.accountService.newDepoRecieptPermanents(this.ObjDepoRecieptPermanent).subscribe(s => this.savePreInvoiceSubProduct(res), error => this.saveerror(error));\r\n }\r\n\r\n savePreInvoiceSubProduct(Count: any): void {\r\n\r\n if (this.saleClosingManagementService.allowChangeData) {\r\n this.rowsDepoRecieptTemporaryNewDetail.forEach((async user => {\r\n this.ObjDepoRecieptPermanentDetail.DRPDYear = Number(this.authService.currentUser.phoneNumber);\r\n this.ObjDepoRecieptPermanentDetail.DRPDCode = Count;\r\n this.ObjDepoRecieptPermanentDetail.DRPDDepCode = this.drtDepCode;\r\n this.ObjDepoRecieptPermanentDetail.DRPDDCCode = user.drtddcCode;\r\n this.ObjDepoRecieptPermanentDetail.DRPDUnitProduct = user.drtdUnitProduct;\r\n this.ObjDepoRecieptPermanentDetail.DRPDCount = user.drpdCount;\r\n this.ObjDepoRecieptPermanentDetail.DRPDDesc = \"ثبت رسید دائم از فروشگاه\";\r\n this.ObjDepoRecieptPermanentDetail.DRPDBuyReqCode = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDYearRequest = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDPrice = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDPricefinal = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDPricePersonel = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDPriceEstehlak = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDPriceSale = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDPriceMali = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDPriceEnergy = 0;\r\n this.ObjDepoRecieptPermanentDetail.DRPDDescPrice = \"\";\r\n\r\n user.drtbBarCode.forEach((userobj) => {\r\n this.DepoRecieptPermanentBarCodeobj.DrpbbarCode = userobj;\r\n this.DepoRecieptPermanentBarCodeobj.Drpbyear = Number(this.authService.currentUser.phoneNumber);\r\n this.DepoRecieptPermanentBarCodeobj.Drpbcode = this.ObjDepoRecieptPermanent.DRPCode;\r\n this.DepoRecieptPermanentBarCodeobj.DrpbdepCode = this.drtDepCode;\r\n this.DepoRecieptPermanentBarCodeobj.DRPBProductCode = user.drtddcCode;\r\n this.accountService.SaveDepoRecieptPermanentBarCodes(this.DepoRecieptPermanentBarCodeobj).subscribe(s => this.SaveDepoRecieptPermanentBarCodessuccess(s), error => this.saveerror(error));\r\n });\r\n\r\n this.accountService.newDepoRecieptPermanentDetails(this.ObjDepoRecieptPermanentDetail).subscribe(s => this.saveDepoRecieptPermanentDetail(s), error => this.saveerror(error));\r\n }));\r\n } else {\r\n this.alertService.showMessage('خطا', 'بنابر صلاح دید مدیریت محترم تااطلاع ثانویه امکان بهره برداری از سیستم موجود نمی باشد.', MessageSeverity.warn);\r\n }\r\n\r\n }\r\n\r\n SaveDepoRecieptPermanentBarCodessuccess(s: DepoRecieptPermanentBarCode): void {\r\n\r\n }\r\n\r\n saveDepoRecieptPermanentDetail(s: DepoRecieptPermanentDetail): void {\r\n //this.accountService.GetcheckDepoRecieptPermanent(Number(this.authService.currentUser.phoneNumber), this.ObjDepoRecieptPermanent.DRPCode, this.drtDepCode).subscribe(rez => this.methodresaltSuccess(rez));\r\n this.alertService.showMessage('پیغام', 'رسید دائم با موفقیت ثبت شد', MessageSeverity.success);\r\n this.isSaving = true;\r\n this.showRecieptTemporaryListDetail = false;\r\n this.ngOnInit();\r\n }\r\n\r\n onDetailToggle(event) { }\r\n\r\n saveerror(error: any): void {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n\r\n select(event: number) {\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanentCash = [];\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanent = [];\r\n this.rowsDepoRecieptTemporaryNewDetailCash = [];\r\n this.rowsDepoRecieptTemporaryNewDetail = [];\r\n this.carKind = \"\";\r\n this.cNumer = \"\";\r\n this.carcode = 0;\r\n this.depTitle = \"\";\r\n this.drtCode = 0;\r\n this.drtCarCode = 0;\r\n this.drtRecieptDate = \"\";\r\n this.drtCode = 0;\r\n this.drtRecieptTime = \"\";\r\n this.loadingIndicator = true;\r\n this.accountService.GetDepoRecieptTemporaryList(Number(this.authService.currentUser.phoneNumber), event.toString()).subscribe(\r\n res => {\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanentCash = [...res];\r\n this.rowsDepoRecieptTemporaryNewSelectForPermanent = res;\r\n },\r\n error => this.saveerror(error));\r\n };\r\n //loadTemproryBarCodeList(res: import(\"../../models/DepoRecieptTemporaryBarCodeSelectResult\").DepoRecieptTemporaryBarCodeSelectResult[]): void {\r\n // this.rows = res;\r\n //}\r\n\r\n\r\n //methodLoaddepos(res: Depos1[]): void {\r\n\r\n // this.allDepos.forEach((user, index) => {\r\n // if (index == 0) {\r\n // this.Depocode = user.value;\r\n // this.loadingIndicator = true;\r\n // this.accountService.GetDepoRecieptTemporaryList(Number(this.authService.currentUser.phoneNumber), this.Depocode).subscribe(res => this.loadTemproryResidList(res), error => this.saveerror(error));\r\n // }\r\n // });\r\n //}\r\n\r\n\r\n //loadTemproryResidList(res: VMDepoRecieptTemporaryNewSelectForPermanent[]): void {\r\n // if (res) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.loadingIndicator = false;\r\n // res.forEach((user, index, con) => {\r\n // (user as any).index = index + 1;\r\n // });\r\n // this.loadingIndicator = false;\r\n // this.rowsDepoRecieptTemporaryNewSelectForPermanentCash = [...res];\r\n // this.rowsDepoRecieptTemporaryNewSelectForPermanent = res;\r\n // }\r\n //}\r\n\r\n //onSelect({ selected }) {\r\n // this.selected = selected;\r\n // this.selected.forEach((user) => {\r\n // this.DRPBCode = user.drtCode;\r\n // this.drtDealerCode = user.drtDealerCode;\r\n // this.drtDepCode = user.drtDepCode;\r\n // this.drtKindDealerCode = user.drtKindDealerCode;\r\n // this.accountService.GetDepoRecieptTemporaryNewDetail(Number(this.authService.currentUser.phoneNumber), user.drtDepCode, user.drtCode, 0).subscribe(res => this.loadTemproryResidListDetailProduct(res), error => this.saveerror(error));\r\n // this.accountService.GetDepoRecieptTemporaryDetail(Number(this.authService.currentUser.phoneNumber), user.drtDepCode, user.drtCode).subscribe(res => this.loadDepoRecieptTemporaryDetail(res), error => this.saveerror(error));\r\n // this.accountService.GetNewCodeDepoRecieptPermanent(Number(this.authService.currentUser.phoneNumber), user.drtDepCode).subscribe(res => this.DepoRecieptPermanentNewCode(res));\r\n // });\r\n //}\r\n\r\n //DepoRecieptPermanentNewCode(res: number): void {\r\n // this.newCodeRecieptPermanent = res;\r\n //}\r\n\r\n //loadDepoRecieptTemporaryDetail(res: import(\"../../models/DepoRecieptTemporaryNewSelectByCodeResult.model\").DepoRecieptTemporaryNewSelectByCodeResult[]): void {\r\n // res.forEach((user) => {\r\n // this.carKind = user.carKind;\r\n // this.cNumer = user.cNumer;\r\n // this.carcode = user.drtCarCode;\r\n // this.depTitle = user.depTitle;\r\n // this.drtCode = user.drtCode;\r\n // this.drtCarCode = user.drtCarCode;\r\n // this.drtRecieptDate = user.drtRecieptDate;\r\n // this.drtCode = user.drtCode;\r\n // this.drtRecieptTime = user.drtRecieptDateTime;\r\n // })\r\n //}\r\n\r\n //loadTemproryResidListDetailProduct(res: DepoRecieptTemporaryNewDetailSelectForPermanentResult[]): void {\r\n // if (res) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.loadingIndicator = false;\r\n\r\n // res.forEach((user, index, con) => {\r\n // (user as any).index = index + 1;\r\n // });\r\n // this.loadingIndicator = false;\r\n // this.rowsDepoRecieptTemporaryNewDetailCash = [...res];\r\n // this.rowsDepoRecieptTemporaryNewDetail = res;\r\n // }\r\n //}\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ConfigurationService } from '../configuration.service';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { CheckoutCashDeskModel } from '../../models/CashDesk/checkout-cash-desks.model';\r\nimport { ReportCashierByDateModel } from '../../models/CashDesk/report-cashier-by-date.model';\r\nimport { ReportCashier } from '../../models/ReportCashier.model';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CashDeskService { \r\n private checkoutCashDesksUrl: string = \"/api/CheckoutCashDesks/\";\r\n public fromDate: string = '';\r\n public toDate: string = '';\r\n\r\n get checkoutCashDeskApiUrl() { return this.configurations.baseUrl + this.checkoutCashDesksUrl };\r\n\r\n constructor(private configurations: ConfigurationService,\r\n private http: HttpClient) { }\r\n\r\n getAllReportCashierByDate(year: number, partCode: number, customerCode: number, subCustomerCode: number, fromDate?: string, toDate?: string, ncIsAccepted?: boolean, ncIsVoid?: boolean): Observable {\r\n return this.http.get(this.checkoutCashDeskApiUrl + \"get-report-cashier-by-date/\" + `${year}/${partCode}/${customerCode}/${subCustomerCode}/${fromDate}/${toDate}/${ncIsAccepted}/${ncIsVoid}`);\r\n }\r\n\r\n allReportCashierByCheckoutCashDeskDetail(year: number, partCode: number, customerCode: number, subCustomerCode: number, fromDate?: string, ncIsAccepted?: boolean, ncIsVoid?: boolean): Observable {\r\n return this.http.get(this.checkoutCashDeskApiUrl + \"get-report-checkout-cash-desk/\" + `${year}/${partCode}/${customerCode}/${subCustomerCode}/${fromDate}/${ncIsAccepted}/${ncIsVoid}`);\r\n }\r\n\r\n checkoutCashDesk(checkoutCashDesk: ReportCashierByDateModel): Observable {\r\n return this.http.post(this.checkoutCashDeskApiUrl + \"add-checkout-cash-desks\", checkoutCashDesk);\r\n }\r\n\r\n allCheckoutCashDesks(customerCode: number, fromDate: string, toDate: string): Observable {\r\n return this.http.get(this.checkoutCashDeskApiUrl + \"get-all-checkout-cash-desks/\" + `${customerCode}/${fromDate}/${toDate}`);\r\n }\r\n\r\n deleteCheckoutCashDesks(id: number, userId: string) {\r\n let headers = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n return this.http.post(this.checkoutCashDeskApiUrl + \"delete-checkout-cash-desks/\" + id + \"/\" + userId, headers);\r\n }\r\n}\r\n","\n\nexport class DepoRecieptPermanentBarCode {\n //// Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\n //constructor(DrpbbarCode?: string, Drpbyear?: number, Drpbcode?: number, DrpbdepCode?: string) {\n // this.DrpbbarCode = DrpbbarCode;\n // this.Drpbyear = Drpbyear;\n // this.Drpbcode = Drpbcode;\n // this.DrpbdepCode = DrpbdepCode;\n // this.DRPBProductCode = DRPBProductCode;\n //}\n public DrpbbarCode: string;\n public Drpbyear: number;\n public Drpbcode: number;\n public DrpbdepCode: string;\n public DRPBProductCode: string;\n \n}\n\n\n\n\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'new-password',\r\n templateUrl: './new-password.component.html',\r\n styleUrls: ['./new-password.component.scss']\r\n})\r\n\r\nexport class NewPasswordComponent implements OnInit {\r\n passwordForm: FormGroup;\r\n\r\n constructor(private fbuilder: FormBuilder) { }\r\n\r\n ngOnInit() {\r\n this.passwordForm = this.fbuilder.group({\r\n password: new FormControl('', Validators.required)\r\n })\r\n }\r\n\r\n get fPassword() {\r\n return this.passwordForm.controls;\r\n }\r\n\r\n onSubmitPassword() {\r\n console.log(this.passwordForm.value);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n رمز ورود جدید\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n لطفا رمز جدید خود را وارد نمایید.\r\n
\r\n
\r\n
\r\n
\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 class PreInvoice {\n spiCode: number;\n spiPartCode: number;\n spiYear: number;\n spipDate: string;\n depoName: string;\n customerCode: string;\n cName: string;\n status: string;\n acceptorUser: string;\n contractCode: number;\n countProduct: number;\n sumPrice: number;\n typePrice: number;\n spiSubCustomerCode: number;\n spiCustomerCode: number;\n nameTypePrice: string;\n cAddress: string;\n cPostalCode: string;\n cPublicCode: string;\n cOstanCode: number;\n nameOstan: string;\n cCityCode: number;\n nameCity: string;\n depoCode: number;\n spiIsAccepted: boolean;\n spiIsVoid: boolean;\n cTel: string;\n idSaleCustomerGroup: number;\n nameGroup: string;\n spiDate: string;\n datediffrent: number;\n priceKindName: string;\n priceKind: number;\n msg: string;\n installmentInterest: number;\n buyerNationalCode: string;\n}\n","import {SaleSubReceipt} from \"./SaleSubReceipt.model\";\n\nexport class SaleReceipt {\n receiptId: number;\n rkind: number;\n rpartCode: number;\n rnum: number;\n ryear: number;\n rmainCustomerCode: number;\n rsubCustomerCode: number;\n rdate: string;\n risVoid: boolean;\n rreceivedFor: number;\n rreceivedNumber: number;\n rreceivedYear: number;\n risNotInCycle: boolean;\n rcontractYear: number;\n rcontractCode: number;\n sanavat: boolean;\n SaleSubReceipt: SaleSubReceipt[];\n UserId: number;\n}\n","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'send-order',\n templateUrl: './send-order.component.html',\n animations: [fadeInOut]\n})\nexport class SendOrderComponent {\n}\n","
\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 {NtsEndPointService} from '../services/nts-end-point.service';\r\nimport {NtsByTrackingCode} from '../models/NtswByTrackingCode';\r\nimport {NtswWithOutTrackingCode} from '../models/NtswWithOutTrackingCode';\r\nimport {NtswWithOutTrackingCodeBussinessMan} from '../models/ntsWithOutTrackingCodeBussinessMan';\r\nimport {NtsStoreModel} from '../models/NtsStoreModel';\r\n\r\nimport {NtswLocationTransfer} from '../models/NtswLocationTransfer';\r\nimport {RegisterDocumentRequestMasterModel} from \"../models/RegisterDocumentRequestMaster.model\";\r\nimport {observableToBeFn} from \"rxjs/internal/testing/TestScheduler\";\r\nimport {Observable} from \"rxjs\";\r\nimport {RegisterDocumentRequestResultStatusModel} from \"../models/RegisterDocumentRequest/register-document-request-result-status.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NtsService {\r\n\r\n constructor(public NtsEndPointService: NtsEndPointService) {\r\n }\r\n\r\n GetNtsWithTraceCode(datefrom: string, datetimeto: string, storeCode: string) {\r\n return this.NtsEndPointService.GetNtsTrackingEndPoint(datefrom, datetimeto, storeCode);\r\n }\r\n\r\n GetNtswWithOutTraceCode(datefrom: string, dateto: string, storeCode: string) {\r\n return this.NtsEndPointService.GetNtswWithOutTrackingCode(datefrom, dateto, storeCode);\r\n }\r\n\r\n GetNtswWithOutTraceCodeBusinessMan(dateFrom: string, dateTo: string, storeCode: string) {\r\n return this.NtsEndPointService.getNtsWithOutTrackingCodeBussinessMan(dateFrom, dateTo, storeCode);\r\n }\r\n\r\n GetNtswLocationTransfer(dateFrom: string, dateTo: string, storeCode: string) {\r\n return this.NtsEndPointService.getNtsLocationTransfer(dateFrom, dateTo, storeCode);\r\n }\r\n\r\n GetNtsStoreAll(dateFrom: string, dateTo: string) {\r\n return this.NtsEndPointService.GetNtsStoreAllEndPoint(dateFrom, dateTo);\r\n }\r\n\r\n GetMasterRegisterDocumentRequest(dateFrom: string, dateTo: string, storeCode: string): Observable {\r\n const result = this.NtsEndPointService.getRegisterDocumentRequestMaster(dateFrom, dateTo, storeCode);\r\n return result;\r\n }\r\n\r\n\r\n SendRegisterDocumentRequest(row: RegisterDocumentRequestMasterModel) {\r\n return this.NtsEndPointService.sendRegisterDocumentRequest(row);\r\n }\r\n\r\n GetStatusRegisterDocumentRequest(row: RegisterDocumentRequestMasterModel): Observable {\r\n return this.NtsEndPointService.getStatusRegisterDocumentRequest(row);\r\n }\r\n\r\n}\r\n","export enum ShowUploadPage {\r\n customers = 1,\r\n customerDocuments = 2\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'customers',\r\n templateUrl: './customers.component.html',\r\n styleUrls: ['./customers.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class CustomersComponent {\r\n value = 'Clear me';\r\n constructor() { \r\n }\r\n}\r\n","
\r\n
\r\n

\r\n \r\n {{'pageHeader.Customers' | translate}}\r\n

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n","export class IReturnProductDescription {\r\n constructor(depoCode?: string,\r\n productName?: string,\r\n productCode?: string,\r\n productCount?: number,\r\n depoViewBarcodes?: IReturnProductBarcode[]) {\r\n this.depoCode = depoCode;\r\n this.productName = productName;\r\n this.productCode = productCode;\r\n this.productCount = productCount;\r\n this.depoViewBarcodes = depoViewBarcodes;\r\n }\r\n\r\n public depoCode: string;\r\n public productName: string;\r\n public productCode: string;\r\n public productCount: number;\r\n public depoViewBarcodes: IReturnProductBarcode[];\r\n}\r\n\r\nexport class IReturnProductBarcode {\r\n constructor(productName?: string,\r\n productCode?: string,\r\n productSerial?: string,) {\r\n this.productName = productName;\r\n this.productCode = productCode;\r\n this.productSerial = productSerial;\r\n }\r\n\r\n public productName: string;\r\n public productCode: string;\r\n public productSerial: string;\r\n}\r\n","
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n نوع پرداخت\r\n \r\n نوع پرداخت\r\n نقدی\r\n اقساطی\r\n \r\n \r\n
\r\n
\r\n \r\n گروه\r\n \r\n انتخاب گروه\r\n \r\n {{ group.pkname }}\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n نام انبار\r\n \r\n \r\n {{ depos.label }}\r\n \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.cName }}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n توضیحات\r\n \r\n \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 \r\n \r\n \r\n \r\n \r\n \r\n
{{ row.index + ' - ' + (i + 1) }}\r\n \r\n \r\n \r\n {{ X.serialCode }}
\r\n
\r\n
\r\n \r\n \r\n 0\"\r\n [class.datatable-icon-left]=\"!expanded\" [class.datatable-icon-down]=\"expanded\" title=\"نمایش بارکد ها\"\r\n (click)=\"toggleExpandRow(row)\">\r\n \r\n \r\n \r\n \r\n \r\n {{ rowIndex + 1 }}\r\n \r\n \r\n {{ 'InvoiceSale.NewInvoice.Index' | 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 {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.editor.ProductName' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.editor.Count' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.editor.Price' | translate }}\r\n \r\n \r\n \r\n \r\n row.vmSalePriceProductInfoForSalePerInvoice.discountPriceFromMaximumUnitSalePriceAfterDiscount? 'bc-red' :''\"\r\n [disabled]=\" (row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId !== null &&\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId !== '' &&\r\n\r\n ((row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === 'Systemic' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === '0' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === '-')\r\n ||\r\n (row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === 'Percentage' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === '0' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === '-'))\r\n ) ? 'disabled' : ''\" class=\"width100\"/>\r\n \r\n \r\n {{ 'InvoiceSale.NewInvoice.DiscountAmount' | translate }}\r\n \r\n \r\n \r\n \r\n row.vmSalePriceProductInfoForSalePerInvoice.discountValue? 'bc-red' :''\"\r\n [disabled]=\" (row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId !== null &&\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId !== '' &&\r\n\r\n ((row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === 'Systemic' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === '0' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === '-')\r\n ||\r\n (row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === 'Amount' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === '0' ||\r\n row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === '-'))\r\n ) ? 'disabled' : ''\" width=\"150\"/>\r\n \r\n \r\n {{ 'InvoiceSale.NewInvoice.DiscountPercent' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.NewInvoice.Commission' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.editor.Ammount' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.editor.Tax' | translate }}\r\n \r\n \r\n \r\n \r\n {{ value }}\r\n \r\n \r\n {{ 'InvoiceSale.NewInvoice.totalSum' | 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 {{ item.planTitle }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n پیش پرداخت\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n تعداد اقساط\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n کارمزد قسط\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n مبلغ نهایی پرداخت\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n {{ 'SaleCustomer.management.NewSaleCustomer' | translate }}\r\n

\r\n

\r\n \r\n {{ 'users.management.EditUser' | translate:editingUserName }}\r\n

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

\r\n {{\r\n 'InvoiceSale.editor.SelectGoods' |\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 جزئیات کالا - {{ showdetailsEditor.productcode }}\r\n

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
لیست اقساط
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ردیفتاریخ پرداختمبلغ قسط
{{ i + 1 }}{{ getFormatDateShamsi(inst.dateInstallments) }}{{ inst.amountInstallments | number }} ریال
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import {Component, OnInit, ViewChild, Input, Output, EventEmitter, TemplateRef, AfterViewInit, ErrorHandler, ElementRef, ViewEncapsulation} from '@angular/core';\r\nimport {AlertService, MessageSeverity, DialogType} from '../../services/alert.service';\r\nimport {Utilities} from '../../services/utilities';\r\nimport {SaleCustomer} from '../../models/SaleCustomer.model';\r\nimport {AccountService} from '../../services/account.service';\r\nimport {AuthService} from '../../services/auth.service';\r\nimport {View_BarcodeInDepo} from './../../models/View_BarcodeInDepo.model';\r\nimport * as moment from 'jalali-moment';\r\nimport {Permission} from '../../models/permission.model';\r\nimport {group} from '../../models/group.model';\r\nimport {ViewModelUser} from '../../models/CMainCode.model';\r\nimport {SaleCustomerService} from '../../services/SaleCustomer.service';\r\nimport {Ostan} from '../../models/Ostan.model';\r\nimport {City} from '../../models/City.model';\r\nimport {customerInfoComponent} from './customer-info.component';\r\nimport {ModalDirective} from 'ngx-bootstrap/modal/public_api';\r\nimport {AppTranslationService} from '../../services/app-translation.service';\r\nimport {jqxGridComponent} from 'jqwidgets-ng/jqxgrid';\r\nimport {goodsInfoComponent} from './goods-info.component';\r\nimport {Depos1} from '../../models/Depos1.model';\r\nimport {DepoCode} from '../../models/DepoCode.model';\r\nimport {PreInvoice} from '../../models/PreInvoice.model';\r\nimport {SalePreInvoiceForContracts} from '../../models/SalePreInvoiceForContracts.model';\r\nimport {SalePreInvoiceForContractProduct} from '../../models/SalePreInvoiceForContractProduct.model';\r\nimport {invpricecomponent} from './inv-price.component';\r\nimport {invcheckcomponent} from './inv-check.component';\r\nimport {invInstallmentcomponent} from './inv-Installment.component';\r\nimport {HesabKindBanks} from '../../models/HesabKindBanks.model';\r\nimport {SaleBankAccounts} from '../../models/SaleBankAccounts.model';\r\nimport {SaleNewContract} from '../../models/SaleNewContract.model';\r\nimport {ContractProduct} from '../../models/ContractProduct.model';\r\nimport {PreInvoiceContract} from '../../models/PreInvoiceContract.model';\r\nimport {SalePriceKind} from '../../models/SalePriceKind.model';\r\nimport {CustomerClub} from '../../models/CustomerClub.model';\r\nimport {CustomerSalePreInvoice} from '../../models/CustomerSalePreInvoice.model';\r\nimport {VMSelectSalePreInvoiceForContractProduct_BarCode} from '../../models/VMSelectSalePreInvoiceForContractProduct_BarCode.model';\r\nimport {VMSalePreInvoiceForContractProduct_BarCode} from '../../models/VMSalePreInvoiceForContractProduct_BarCode.model';\r\nimport {MyAccountService} from '../../services/MyAccount.service';\r\nimport {VMSalePriceProductInfoForSalePerInvoice} from '../../models/VMSalePriceProductInfoForSalePerInvoice.model';\r\nimport {SharedService} from '../../services/Shared.service';\r\nimport {GoodsInfoDetailsComponent} from './goods-info-details.component';\r\nimport {DatatableComponent} from '@swimlane/ngx-datatable';\r\nimport {SerialProduct} from '../../models/SerialProduct.model';\r\nimport {IInstallments} from '../../models/installments.model';\r\nimport {IInstallmentsDetaile} from '../../models/installment-detail.model';\r\nimport {FormBuilder, FormControl, FormGroup, Validators} from '@angular/forms';\r\nimport {NationalCodeService} from '../../services/national-code.service';\r\nimport {PercentInstallmentInterestService} from '../../services/base-services/percent-installment-interest.service';\r\nimport {CreditInstitutiomService} from \"../../services/credit-institution-service/credit-institution.service\";\r\nimport {CreditInstitutionPlansModel} from \"../../models/credit-institution/credit-institution-plans.model\";\r\nimport {Observable} from 'rxjs';\r\nimport {map, startWith} from 'rxjs/operators';\r\n\r\ndeclare let $: any;\r\n\r\n@Component({\r\n selector: 'inv-info-c',\r\n templateUrl: './inv-info-c.component.html',\r\n styleUrls: ['./inv-info-c.component.scss'],\r\n encapsulation: ViewEncapsulation.Emulated\r\n})\r\nexport class InvInfoCComponent implements ErrorHandler, OnInit, AfterViewInit {\r\n // index = 0;\r\n // isMoveGroup: boolean = false;\r\n MoveGroupDepo: boolean = false;\r\n lenght: number;\r\n public EnabaleChange = false;\r\n public EnabaleChangeTasvieh = false;\r\n\r\n handleError(error: any): void {\r\n this.isError = true;\r\n }\r\n\r\n public creditInstitutionPlans: CreditInstitutionPlansModel[];\r\n public totallTax: string;\r\n public totallAllRows: number = 0;\r\n public totallTaxRows: number = 0;\r\n public totallSumRows: number = 0;\r\n public totallComissionRows: number = 0;\r\n public totallDiscountRows: number = 0;\r\n public isEditMode = false;\r\n public isshownew = true;\r\n public CAssignSaler: number;\r\n public isError = false;\r\n public isSelect = false;\r\n public isNewCustomer = false;\r\n public isEditingSelf = false;\r\n public isEditing = false;\r\n public isCan = true;\r\n public isNewCus = false;\r\n public Ncpcodeobject: number;\r\n public allhesabkindbank: HesabKindBanks[] = [];\r\n public allsalebankaccounts: SaleBankAccounts[] = [];\r\n public allbank: SaleBankAccounts[] = [];\r\n public isSaving = false;\r\n public isEditSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public sale: SaleCustomer = new SaleCustomer();\r\n public SaleNewContractObj: SaleNewContract = new SaleNewContract();\r\n public SaleNewContractProductObj: ContractProduct = new ContractProduct();\r\n public SalePreInvoice?: SalePreInvoiceForContracts = new SalePreInvoiceForContracts();\r\n public SalePreInvoiceSaleNewContract: PreInvoiceContract = new PreInvoiceContract();\r\n public SalePreInvoiceProduct: SalePreInvoiceForContractProduct = new SalePreInvoiceForContractProduct();\r\n public CustomerClubObj: CustomerClub = new CustomerClub();\r\n public CustomerSalePreInvoiceObj: CustomerSalePreInvoice = new CustomerSalePreInvoice();\r\n public rowsSalePreInvoiceForContractProduct_BarCode: VMSalePreInvoiceForContractProduct_BarCode[] = [];\r\n public VMSelectSalePreInvoiceForContractProduct_BarCode: VMSelectSalePreInvoiceForContractProduct_BarCode = new VMSelectSalePreInvoiceForContractProduct_BarCode();\r\n public installmentData: IInstallments = new IInstallments();\r\n public installmentForm!: FormGroup;\r\n public showInstallmentFields: boolean = false;\r\n public completed: boolean;\r\n public SerialNumber: string = '';\r\n public allgroup: SalePriceKind[] = [];\r\n public ddlGroup: SalePriceKind[] = [];\r\n\r\n public allgroup_PK_3: SalePriceKind[] = [];\r\n public allostan: Ostan[] = [];\r\n public gr: group = new group();\r\n public CMainCodeVirtual: ViewModelUser;\r\n public isreal = true;\r\n public formResetToggle = true;\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n public allCity: City[] = [];\r\n public allDepos: Depos1[] = [];\r\n public Cmain: number;\r\n public Csub: number;\r\n public sourcePreInvoiceInfo: PreInvoice;\r\n public spiCode: number;\r\n public factorrasmi: boolean;\r\n public existcustomer: boolean;\r\n public CuntractNumber: number;\r\n public TypePrice: number = 0;\r\n public sPIPartCode: number;\r\n public sPIYear: number;\r\n public SPISubCustomerCode: number;\r\n public NewNumber: number;\r\n public myArrId: string[] = new Array();\r\n public Depocode: string;\r\n public rowsSelectInv: DepoCode[] = [];\r\n public columns: any[] = [];\r\n public preinvoicenew: boolean;\r\n public acceptInstallment: boolean = false;\r\n public acceptInstallmentText: string = \"تایید نشده\";\r\n public customerCode: number;\r\n // public inveSaleForm!: FormGroup;\r\n public installmentNum: number = 0;\r\n public groupCode: number = 0;\r\n public paymentType: string = \"\";\r\n public saleGroup: number;\r\n public paymentType2 = new FormControl();\r\n public selectGroup1 = new FormControl();\r\n public selectGroup2 = new FormControl();\r\n public selectcreditInstitutionPlans = new FormControl();\r\n public selectcreditInstitutionPlansId = 0;\r\n SerialCode: string[] = [];\r\n\r\n percentageoCom: number;\r\n serverDate: Date;\r\n editingUserName = false;\r\n AllowEdit = false;\r\n editing = {};\r\n idGroup: number;\r\n Sale: SaleCustomer;\r\n\r\n customerControl = new FormControl();\r\n filteredCustomers: Observable;\r\n EnabaleSerialNumber = false;\r\n displayFn = (value: any) => {\r\n const chosedItem = this.rows.find(item => item[\"cSubCode\"] === value);\r\n return chosedItem && chosedItem[\"cName\"] || value;\r\n };\r\n\r\n @Output() preInvoiceSale = new EventEmitter();\r\n @Output() successfulSave = new EventEmitter();\r\n @Output() editingFullName = new EventEmitter();\r\n @Output() sourcePreInvoice = new EventEmitter();\r\n @Output() spiCodeLocal = new EventEmitter();\r\n @Output() AllpaySale = new EventEmitter();\r\n @Output() spiPartCodeLocal = new EventEmitter();\r\n @Output() spiYearLocal = new EventEmitter();\r\n @Output() PriceKind = new EventEmitter();\r\n @Output() waiting = new EventEmitter();\r\n\r\n @ViewChild('editorModal', {static: false})\r\n editorModal: ModalDirective;\r\n\r\n @ViewChild('editorModalgoods', {static: false})\r\n editorModalgoods: ModalDirective;\r\n\r\n @ViewChild('editorModalprice', {static: false})\r\n editorModalprice: ModalDirective;\r\n\r\n @ViewChild('editorModalcheck', {static: false})\r\n editorModalcheck: ModalDirective;\r\n\r\n @ViewChild('editorModalghest', {static: false})\r\n editorModalghest: ModalDirective;\r\n\r\n editingCName: { name: string };\r\n editingCUser: { name: string };\r\n public rows: SaleCustomer[] = [];\r\n public rowsDepoCode: DepoCode[] = [];\r\n public rowsDepoCodeCash: DepoCode[] = [];\r\n\r\n public Barcode: View_BarcodeInDepo = new View_BarcodeInDepo();\r\n //columns: any[] = [];\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n @ViewChild('f', {static: false})\r\n public form;\r\n\r\n @ViewChild('cName', {static: false})\r\n public cName;\r\n\r\n @ViewChild('cTel', {static: false})\r\n public cTel;\r\n\r\n @ViewChild('cAddress', {static: false})\r\n public cAddress;\r\n\r\n @ViewChild('cOstan', {static: false})\r\n public cOstan;\r\n\r\n @ViewChild('cCity', {static: false})\r\n public cCity;\r\n\r\n @ViewChild('rolesSelector', {static: false})\r\n public rolesSelector;\r\n\r\n @ViewChild('myGroup', {static: false})\r\n public myGroup;\r\n\r\n @ViewChild('CustomerEditor', {static: false})\r\n CustomerEditor: customerInfoComponent;\r\n\r\n @ViewChild('goodsEditor', {static: false})\r\n goodsEditor: goodsInfoComponent;\r\n\r\n @ViewChild('priceEditor', {static: false})\r\n priceEditor: invpricecomponent;\r\n\r\n @ViewChild('checkEditor', {static: false})\r\n checkEditor: invcheckcomponent;\r\n\r\n @ViewChild('ghestEditor', {static: false})\r\n ghestEditor: invInstallmentcomponent;\r\n\r\n @Input() newMode: boolean;\r\n\r\n @ViewChild('selectionlog', {static: false}) selectionlog: ElementRef;\r\n @ViewChild('myGrid', {static: false}) myGrid: jqxGridComponent;\r\n\r\n\r\n @ViewChild('showdetailsEditor', {static: false})\r\n showdetailsEditor: GoodsInfoDetailsComponent;\r\n\r\n @ViewChild('editorModalshowdetails', {static: true})\r\n editorModalshowdetails: ModalDirective;\r\n\r\n @ViewChild('inputNational')\r\n inputNational: ElementRef;\r\n\r\n @ViewChild('selectCustomer', {static: false}) selectCustomer: ElementRef;\r\n\r\n\r\n @ViewChild(\"txtserial\") searchElement: ElementRef;\r\n\r\n\r\n selectStore(event: number) {\r\n this.myArrId.splice(0, 1);\r\n this.myArrId.push(event.toString());\r\n }\r\n\r\n OwnerBoolan: boolean = false;\r\n\r\n select(event: number) {\r\n this.Depocode = event.toString();\r\n this.allDepos.forEach((user, index) => {\r\n if (this.Depocode == user.value) {\r\n this.OwnerBoolan = user.depowner;\r\n }\r\n });\r\n if ((this.Depocode === '35') || (this.Depocode === '38')) { // انبار حمل مستقیم و مخصوص\r\n this.EnabaleSerialNumber = true;\r\n } else {\r\n this.EnabaleSerialNumber = false;\r\n }\r\n }\r\n\r\n @ViewChild('NameSelector', {static: false})\r\n public NameSelector;\r\n\r\n @ViewChild('indexTemplate', {static: true})\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('editTemplate', {static: true})\r\n editTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', {static: true})\r\n actionsTemplate: TemplateRef;\r\n\r\n //درصد سود اقساط\r\n percentInstallmentInterest: number = 0;\r\n creditInstitutionPlansForCustomersId: number = 0;\r\n\r\n indexpreinvoice: number;\r\n lenghNUmber: number;\r\n\r\n getWidth(): any {\r\n if (document.body.offsetWidth < 850) {\r\n return '90%';\r\n }\r\n return 1100;\r\n }\r\n\r\n constructor(private alertService: AlertService,\r\n private accountService: AccountService,\r\n private authService: AuthService,\r\n private SaleCustomerService: SaleCustomerService,\r\n private translationService: AppTranslationService,\r\n private myaccountService: MyAccountService,\r\n private sharedService: SharedService,\r\n private fBuilder: FormBuilder,\r\n private creditInstitutiomService: CreditInstitutiomService\r\n ) {\r\n this.serverDate = this.accountService.getServerDateTime();\r\n }\r\n\r\n ngOnInit() {\r\n // this.getActivePercent();\r\n this.filteredCustomers = this.customerControl.valueChanges.pipe(\r\n startWith(''),\r\n map(value => {\r\n return this.rows.filter(item => item[\"cName\"].includes(value ?? ''));\r\n })\r\n );\r\n this.loadData();\r\n\r\n\r\n this.CheckChangeForm();\r\n this.installmentForm = this.fBuilder.group({\r\n selectcreditInstitutionPlans: new FormControl(0),\r\n prepayment: new FormControl(),\r\n installmentNumber: new FormControl({value: null, disabled: true}),\r\n installmentInterest: new FormControl({value: null, disabled: true}),\r\n finalPayment: new FormControl({value: null, disabled: true})\r\n });\r\n\r\n this.paymentType2.enable();\r\n this.selectGroup1.enable();\r\n this.selectGroup2.enable();\r\n this.paymentType2.setValue(this.TypePrice);\r\n this.selectGroup1.setValue(3);\r\n this.selectGroup2.setValue(3);\r\n this.factorrasmi = true;\r\n }\r\n\r\n LoadCustomerData(result: CustomerClub): void {\r\n if (result != null) {\r\n this.CustomerClubObj.customerAddress = result.customerAddress;\r\n this.CustomerClubObj.customerID = result.customerID;\r\n this.CustomerClubObj.customerNationalCode = result.customerNationalCode;\r\n this.CustomerClubObj.customerMobile = result.customerMobile;\r\n this.CustomerClubObj.customerName = result.customerName;\r\n this.existcustomer = true;\r\n } else {\r\n this.CustomerClubObj.customerAddress = null!;\r\n this.CustomerClubObj.customerID = null!;\r\n this.CustomerClubObj.customerNationalCode = null!;\r\n this.CustomerClubObj.customerName = null!;\r\n this.existcustomer = false;\r\n window.document.getElementById('national-code')?.focus();\r\n }\r\n\r\n }\r\n\r\n onKeydownSerial() {\r\n if (this.Depocode == null || this.Depocode === \"\") {\r\n this.WaringSearch('لطفا انبار مورد نظر را انتخاب نمایید.');\r\n } else {\r\n if (this.paymentType !== \"\" && this.saleGroup > 0) {\r\n if ((this.SerialNumber == null || this.SerialNumber === \"\" || this.SerialNumber == undefined)) {\r\n this.WaringSearch('بارکد / کد کالا را وارد نمایید.');\r\n return;\r\n }\r\n this.IsSearchBarcode = false;\r\n if (!this.MoveGroupDepo) {\r\n this.WaringSearch('لطفا اطلاعات انبار را کامل انتخاب کنید.');\r\n return;\r\n }\r\n let isCan = true;\r\n\r\n this.SerialCode.forEach((scode) => {\r\n if (scode === this.SerialNumber) {\r\n isCan = false;\r\n }\r\n });\r\n if (isCan) {\r\n this.IsSearchBarcode = true;\r\n this.IsMoveSelecteds = false;\r\n this.accountService.GetProductCodeWithBarcode(this.Depocode, this.SerialNumber)\r\n .subscribe(\r\n vb => vb != null && vb.barCode != null ?\r\n this.accountService.getDepoTarazwithcomDetailSearchScan(Number(this.authService.currentUser.phoneNumber), this.Depocode, 0, 0, 1, false, this.goodsEditor.IdGroup, this.Cmain, vb.productCode)\r\n .subscribe(result => result != null && result.depCode != null ?\r\n this.loadDepo(result, this.SerialNumber, this.IsSearchBarcode) : this.ErrorSearch('بار کد کالای ' + this.SerialNumber + ' کمیسیون تعیین نشده/ ثبت نشده است.'),\r\n error => this.FailedSearch(error)) : this.ErrorSearch('بارکد کالای ' + this.SerialNumber + ' حواله شده/ ثبت نشده است.')\r\n );\r\n } else {\r\n this.WaringSearch('کد کالا / بارکد ' + this.SerialNumber + ' قبلا وارد شده');\r\n }\r\n\r\n } else {\r\n this.SerialNumber = '';\r\n this.alertService.showMessage('هشدار', 'گروه قیمتی و نوع پرداخت را انتخاب کنید.', MessageSeverity.warn);\r\n }\r\n }\r\n }\r\n\r\n addProductSerial() {\r\n this.onKeydownSerial();\r\n }\r\n\r\n WaringSearch(msg: string) {\r\n this.alertService.showMessage('Waring', msg, MessageSeverity.warn);\r\n this.EmptySearch();\r\n }\r\n\r\n ErrorSearch(msg: string) {\r\n this.alertService.showMessage('Error', msg, MessageSeverity.error);\r\n this.EmptySearch();\r\n }\r\n\r\n FailedSearch(error: any) {\r\n this.alertService.showMessage('Error', `Failed.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`, MessageSeverity.error);\r\n this.EmptySearch();\r\n }\r\n\r\n EmptySearch() {\r\n this.SerialNumber = \"\";\r\n this.EnabaleSerialNumber = false;\r\n }\r\n\r\n addDepo(result: DepoCode, depBarCode_Serial: string, IsBarcode: boolean, qty: number) {\r\n if (result) {\r\n this.alertService.startLoadingMessage('در حال ثبت کالا...');\r\n\r\n let TisExist = false;\r\n this.rowsDepoCode.forEach((row, index) => {\r\n if (row.depCode == result.depCode) {\r\n TisExist = true;\r\n if (IsBarcode) {\r\n let scanserial = new SerialProduct();\r\n scanserial.productCode = result.depCode;\r\n scanserial.serialCode = depBarCode_Serial;\r\n row.scanSerial.push(scanserial);\r\n row.scanSerial = [...row.scanSerial];\r\n }\r\n }\r\n row.count = row.scanSerial != null && row.scanSerial.length > 0 ? row.scanSerial.length : row.count;\r\n\r\n });\r\n if (!TisExist) {\r\n let depo = new DepoCode();\r\n depo = result;\r\n depo.count = result.count; // 1\r\n depo.scanSerial = [];\r\n if (IsBarcode) {\r\n const scanserial = new SerialProduct();\r\n scanserial.productCode = depo.depCode;\r\n scanserial.serialCode = depBarCode_Serial;\r\n depo.scanSerial.push(scanserial);\r\n depo.scanSerial = [...depo.scanSerial];\r\n }\r\n if ((this.Depocode !== '35') && (this.Depocode !== '38')) { // انبار حمل مستقیم و مخصوص\r\n depo.count = depo.scanSerial != null && depo.scanSerial.length > 0 ? depo.scanSerial.length : 1;\r\n }\r\n this.rowsDepoCode.push(depo);\r\n this.rowsDepoCode = [...this.rowsDepoCode];\r\n this.rowsDepoCodeCash.push(depo);\r\n this.rowsDepoCodeCash = [...this.rowsDepoCodeCash];\r\n\r\n }\r\n\r\n this.alertService.showStickyMessage('Success', 'کالا به لیست اضافه شد.', MessageSeverity.success);\r\n this.EmptySearch();\r\n this.onIndexingRows(this.rowsDepoCode);\r\n\r\n this.alertService.stopLoadingMessage();\r\n } else {\r\n this.ErrorSearch('کد کالا / بارکد ' + this.SerialNumber + ' ثبت نشده است');\r\n }\r\n this.CheckChangeForm();\r\n }\r\n\r\n onIndexingRows(DepoCodeObj: DepoCode[]) {\r\n\r\n DepoCodeObj.forEach((user, index, SaleCustomer) => {\r\n (user as any).index = index + 1;\r\n let currencyFormatter = require('currency-formatter');\r\n user.priceStore = currencyFormatter.format(user.pPrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n });\r\n\r\n this.rowsDepoCodeCash = [...DepoCodeObj];\r\n this.rowsDepoCode = DepoCodeObj;\r\n }\r\n\r\n onCheckingRemanidRows(result: DepoCode, productcode: string, DepoCodeObj: DepoCode[], isAdd: boolean, IsBarcode: boolean): boolean {\r\n let isremain = true;\r\n if (IsBarcode) {\r\n if (result.remanid < 1) {\r\n isremain = false;\r\n }\r\n } else {\r\n\r\n }\r\n return isremain;\r\n }\r\n\r\n IsMoveSelecteds: boolean = false;\r\n IsSearchBarcode: boolean = false;\r\n isExist: Boolean = false;\r\n\r\n loadDepo(result: DepoCode, depBarCode_Serial: string, IsBarcode: boolean) {\r\n this.installmentForm.reset();\r\n this.acceptInstallment = false;\r\n this.acceptInstallmentText = 'تایید نشده';\r\n this.installments2 = [];\r\n if (result != null && result.depCode != null) {\r\n if ((IsBarcode && result.remanid > 0) || (!IsBarcode)) {//\r\n if (this.onCheckingRemanidRows(result, result.depCode, this.rowsDepoCode, true, IsBarcode)) {\r\n if (this.rowsDepoCode.length > 0) {\r\n this.isExist = false;\r\n let rowindex = 0;\r\n this.rowsDepoCode.forEach((row, index) => {\r\n\r\n if (IsBarcode && row.depCode == result.depCode && (row.scanSerial == null || row.scanSerial.length == 0)) {\r\n this.isExist = true;\r\n rowindex = index;\r\n this.ErrorSearch('کد کالای ' + row.depCode + '، بارکد ' + this.SerialNumber + ' در لیست موجود هست.');\r\n return index;\r\n }\r\n\r\n row.scanSerial.forEach((rowB, indexB) => {\r\n\r\n if (IsBarcode && rowB.productCode == result.depCode && rowB.serialCode == depBarCode_Serial) {\r\n this.isExist = true;\r\n rowindex = index;\r\n this.ErrorSearch('بارکد ' + this.SerialNumber + ' در لیست موجود هست، هر بارکد یک واحد می باشد');\r\n return index;\r\n } else if (rowB.productCode == result.depCode &&\r\n (((rowB.serialCode == null || rowB.serialCode == \"\" || rowB.serialCode == \"-\") && depBarCode_Serial !== null && depBarCode_Serial !== \"\" && depBarCode_Serial !== \"-\") ||\r\n ((rowB.serialCode !== null && rowB.serialCode !== \"\" && rowB.serialCode !== \"-\") && depBarCode_Serial == null || depBarCode_Serial == \"\" || depBarCode_Serial == \"-\"))) {\r\n\r\n this.isExist = true;\r\n rowindex = index;\r\n\r\n if (depBarCode_Serial !== null && depBarCode_Serial !== \"\" && depBarCode_Serial !== \"-\") {\r\n this.ErrorSearch('کد کالا ' + result.depCode + '، برای بارکد' + depBarCode_Serial + ' در لیست موجود هست.');\r\n\r\n } else {\r\n this.ErrorSearch('کد کالا ' + result.depCode + ' در لیست موجود هست.');\r\n\r\n }\r\n return index;\r\n } else if (!IsBarcode && !this.IsMoveSelecteds && rowB.productCode == result.depCode && (rowB.serialCode == null || rowB.serialCode == \"\" || rowB.serialCode == \"-\")) {\r\n rowB.serialCode = \"-\";\r\n this.rowsDepoCode[index].count++;\r\n\r\n this.update_Value(this.rowsDepoCode[index].count, index);\r\n this.isExist = true;\r\n rowindex = index;\r\n\r\n this.WaringSearch('کد کالا ' + this.SerialNumber + ' در لیست موجود هست، یک واحد به تعداد آن اضافه شد');\r\n\r\n return index;\r\n } else {\r\n\r\n }\r\n });\r\n\r\n });\r\n\r\n\r\n if (!this.isExist) {\r\n this.GetSalePriceProduct(true, result, depBarCode_Serial, IsBarcode, 1, this.rowsDepoCode.length);\r\n } else {\r\n this.GetSalePriceProduct(false, result, depBarCode_Serial, IsBarcode, this.rowsDepoCode[rowindex].count, rowindex);//just update exist product\r\n\r\n }\r\n\r\n } else {\r\n this.GetSalePriceProduct(true, result, depBarCode_Serial, IsBarcode, 1, 0);//just first product\r\n\r\n }\r\n } else {\r\n this.ErrorSearch(' موجودی کالای ' + depBarCode_Serial + ' صفر می باشد.');\r\n\r\n }\r\n } else {\r\n this.ErrorSearch(' موجودی کالای ' + depBarCode_Serial + ' صفر می باشد.');\r\n\r\n }\r\n } else {\r\n this.ErrorSearch('کد ' + depBarCode_Serial + ' ثبت نشده است');\r\n }\r\n\r\n this.CheckChangeForm();\r\n }\r\n\r\n CheckChangeForm() {\r\n if (this.rowsDepoCode.length > 0) {\r\n this.EnabaleChange = true;\r\n this.EnabaleChangeTasvieh = true;\r\n this.paymentType2.disable();\r\n this.selectGroup1.disable();\r\n this.selectGroup2.disable();\r\n } else {\r\n this.EnabaleChange = false;\r\n this.EnabaleChangeTasvieh = false;\r\n this.paymentType2.enable();\r\n this.selectGroup1.enable();\r\n this.selectGroup2.enable();\r\n }\r\n }\r\n\r\n GetSalePriceProduct(isAdd: boolean, result: DepoCode, depBarCode_Serial: string, IsBarcode: boolean, value: number, indexrow: number, isDisCount?: boolean, isDisCountPercen?: boolean) {\r\n let qty = 0;\r\n this.rowsDepoCode.forEach((row, index) => {\r\n if (row.depCode === result.depCode) {\r\n qty = row.scanSerial != null && row.scanSerial.length > 0 ? row.scanSerial.length : 1;\r\n }\r\n });\r\n\r\n qty = isAdd ? qty + 1 : qty;\r\n\r\n let currencyFormatter = require('currency-formatter');\r\n result[\"priceDiscount\"] = Number(currencyFormatter.unformat(result[\"priceDiscount\"], {code: 'USD'}));\r\n result[\"percentDiscount\"] = Number(currencyFormatter.unformat(result[\"percentDiscount\"], {code: 'USD'}));\r\n\r\n let Year = Number(this.authService.currentUser.phoneNumber);\r\n let CmainCode = this.Cmain;\r\n let CsubCode = this.Csub;\r\n let Pkind = this.goodsEditor.IdGroup;\r\n let ProductCode = result.depCode;\r\n let ProductCount = IsBarcode ? qty === NaN! || qty === undefined || qty == 0 ? 1 : qty : value;\r\n let DiscountValuePrice = result.priceDiscount;\r\n let DiscountValuePercent = result.percentDiscount;\r\n\r\n let temp = new VMSalePriceProductInfoForSalePerInvoice();\r\n temp.discountApplyId = \"-\";\r\n result.vmSalePriceProductInfoForSalePerInvoice = temp;\r\n\r\n this.myaccountService.getSalePriceProductInfoForSalePerInvoice(Year, CmainCode, Pkind, ProductCode, ProductCount, DiscountValuePrice, DiscountValuePercent)\r\n .subscribe(\r\n res => this.calculatNewCommission_Discount(isAdd, result, depBarCode_Serial, IsBarcode, qty, indexrow, res, isDisCount, isDisCountPercen),\r\n error => this.FailedSearch(error)\r\n );\r\n\r\n }\r\n\r\n calculatNewCommission_Discount(isAdd: boolean, result: DepoCode, depBarCode_Serial: string, IsBarcode: boolean, value: number, indexrow: number, res: VMSalePriceProductInfoForSalePerInvoice, isDisCount?: boolean, isDisCountPercen?: boolean) {\r\n if (result != null && res != null) {\r\n result.vmSalePriceProductInfoForSalePerInvoice = res;\r\n if (isAdd) {\r\n this.addDepo(result, depBarCode_Serial, IsBarcode, value);\r\n }\r\n this.rowsDepoCode.forEach((row, index) => {\r\n if (row.depCode === res.productCode) {\r\n if (isDisCount) {\r\n if (isDisCountPercen) {\r\n if (row.percentDiscount <= res.discountValue) {\r\n res.approvedDiscountValuePrice = row.priceDiscount = Number(this.sharedService.getPercentageToPrice(row.percentDiscount, res.salePrice).toFixed(3));\r\n res.approvedDiscountValuePercent = Number(row.percentDiscount.toFixed(3));\r\n } else {\r\n this.ErrorSearch('در صد تخفیف وارد شده(' + row.percentDiscount + ') برای کد کالای ' + row.depCode + ' بیشتر از حداکثر درصد تخفیف (' + res.discountValue + ') می باشد.');\r\n res.approvedDiscountValuePrice = row.priceDiscount = Number(res.discountPriceFromMaximumUnitSalePriceAfterDiscount?.toFixed(3));\r\n res.approvedDiscountValuePercent = row.percentDiscount = Number(res.discountValue.toFixed(3));\r\n }\r\n } else {\r\n if (row.priceDiscount <= res.discountPriceFromMaximumUnitSalePriceAfterDiscount!) {\r\n res.approvedDiscountValuePrice = Number(row.priceDiscount.toFixed(3));\r\n res.approvedDiscountValuePercent = row.percentDiscount = Number(this.sharedService.getPriceToPercentage(row.priceDiscount, res.salePrice).toFixed(3));\r\n } else {\r\n this.ErrorSearch('مبلغ تخفیف وارد شده(' + row.priceDiscount + ') برای کد کالای ' + this.rowsDepoCode[index].depCode + ' بیشتر از حداکثر مبلغ تخفیف (' + res.discountPriceFromMaximumUnitSalePriceAfterDiscount + ') می باشد.');\r\n res.approvedDiscountValuePrice = row.priceDiscount = Number(res.discountPriceFromMaximumUnitSalePriceAfterDiscount?.toFixed(3));//res.discountPriceFromMaximumUnitSalePriceAfterDiscount\r\n res.approvedDiscountValuePercent = row.percentDiscount = Number(this.sharedService.getPriceToPercentage(res.discountPriceFromMaximumUnitSalePriceAfterDiscount!, res.salePrice).toFixed(3));\r\n }\r\n }\r\n } else {\r\n if (res.discountAmountId == \"Percentage\") {\r\n res.approvedDiscountValuePrice = row.priceDiscount = Number(res.discountPriceFromMaximumUnitSalePriceAfterDiscount?.toFixed(3));\r\n res.approvedDiscountValuePercent = row.percentDiscount = Number(res.discountValue.toFixed(3));\r\n } else if (res.discountAmountId == \"Amount\") {\r\n res.approvedDiscountValuePrice = row.priceDiscount = Number(res.discountPriceFromMaximumUnitSalePriceAfterDiscount?.toFixed(3));// = Math.round(res.discountPriceFromMaximumUnitSalePriceAfterDiscount(;\r\n res.approvedDiscountValuePercent = row.percentDiscount = Number(this.sharedService.getPriceToPercentage(row.priceDiscount, res.salePrice).toFixed(3));\r\n } else {//Not Discount\r\n res.approvedDiscountValuePrice = row.priceDiscount = 0;// = Math.round(res.discountPriceFromMaximumUnitSalePriceAfterDiscount(;\r\n res.approvedDiscountValuePercent = row.percentDiscount = 0;\r\n }\r\n }\r\n row.vmSalePriceProductInfoForSalePerInvoice = res;\r\n }\r\n });\r\n this.rowsDepoCode = [...this.rowsDepoCode];\r\n this.update_Value_ALL();\r\n } else {\r\n this.FailedSearch(\"بارکد وارد شده امکان پیش فاکتور ندارد.\");\r\n }\r\n }\r\n\r\n loadData() {\r\n this.isNewCus = false;\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res));\r\n this.loadCurrentOstanData();\r\n this.loadBank();\r\n this.loadHesabKind();\r\n this.loadSaleBankAccount();\r\n }\r\n\r\n save(isPayment: boolean) {\r\n let isCan = true;\r\n if (this.completed == true && this.customerCode == 1) {\r\n isCan = false;\r\n this.alertService.showMessage('هشدار', 'لطفا مشتری مورد نظر را انتخاب کنید', MessageSeverity.error);\r\n }\r\n if (this.paymentType2.value <= 0 || null || \"\") {\r\n isCan = false;\r\n this.alertService.showMessage('هشدار', 'لطفا نوع پرداخت را انتخاب کنید.', MessageSeverity.error);\r\n }\r\n if (this.customerCode == null || 0 || \"\" || this.Csub === 0) {\r\n isCan = false;\r\n this.alertService.showMessage('هشدار', 'لطفا نام مشتری را وارد کنید.', MessageSeverity.error);\r\n }\r\n if (this.rowsDepoCode.length == 0) {\r\n isCan = false;\r\n this.alertService.showMessage('هشدار', 'شما هیچ کالایی را انتخاب نکرده اید', MessageSeverity.warn);\r\n }\r\n this.rowsDepoCode.forEach((user, index) => {\r\n if (user.count > user.remanid) {\r\n this.alertService.showMessage('Warning', 'مقدار پیش فاکتور از مانده کالا بیشتر است...' + \" \" + \"کالای ردیف\" + \" \" + (index + 1).toString(), MessageSeverity.warn);\r\n }\r\n });\r\n\r\n if (isCan) {\r\n this.isSaving = true;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.startLoadingMessage('ذخیره تغییرات...');\r\n this.rowsSalePreInvoiceForContractProduct_BarCode = [];\r\n this.SalePreInvoice.SPIYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoice.SPIPartCode = 0;\r\n this.SalePreInvoice.SPICode = this.indexpreinvoice = 0;\r\n this.SalePreInvoice.SPIKindCode = 4;\r\n this.SalePreInvoice.SPICustomerCode = this.Cmain;\r\n this.SalePreInvoice.SPISubCustomerCode = this.Csub;\r\n let yourDate = this.serverDate;\r\n this.SalePreInvoice.SPIToDeliveryDate = new Date(yourDate.setDate(yourDate.getDate() + 2)).toLocaleDateString('en-US');\r\n this.SalePreInvoice.SPIIsVoid = false;\r\n this.SalePreInvoice.SPIIsAccepted = false;\r\n this.SalePreInvoice.SPIRegistUserCode = 73;\r\n this.SalePreInvoice.SPIAcceptedUserCode = 0;\r\n this.SalePreInvoice.SPIPrivateConditions = \"\";\r\n this.SalePreInvoice.PriceKind = this.goodsEditor.IdGroup;\r\n this.SalePreInvoice.AssigneSalerCode = this.CAssignSaler;\r\n this.SalePreInvoice.DepoCode = Number(this.Depocode.toString());\r\n this.SalePreInvoice.TypePrice = this.TypePrice;\r\n\r\n let currencyFormatter = require('currency-formatter');\r\n this.lenghNUmber = 0;\r\n this.rowsDepoCode.forEach(async (user, index) => {\r\n this.lenghNUmber++;\r\n\r\n if (user.scanSerial != null && user.scanSerial.length > 0) {\r\n isPayment = true;\r\n user.scanSerial.forEach(async (rowB, indexB) => {\r\n if (user.depCode == rowB.productCode) {\r\n let selectSalePreInvoiceForContractProduct_BarCode = new VMSalePreInvoiceForContractProduct_BarCode();\r\n selectSalePreInvoiceForContractProduct_BarCode.spipYear = Number(this.authService.currentUser.phoneNumber);\r\n selectSalePreInvoiceForContractProduct_BarCode.spipPartCode = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipCode = this.indexpreinvoice;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipRevesion = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipProductCode = user.depCode;\r\n selectSalePreInvoiceForContractProduct_BarCode.barCode = rowB.serialCode != null || rowB.serialCode != 'undefined' ? rowB.serialCode : '-';\r\n selectSalePreInvoiceForContractProduct_BarCode.moneyCode = user.moneyCode != null ? user.moneyCode : 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipAmount = user.count;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipFromDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n selectSalePreInvoiceForContractProduct_BarCode.spipToDeliveryDate = this.SalePreInvoice.SPIToDeliveryDate;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipPrice = currencyFormatter.unformat(user.priceStore, {code: 'USD'});\r\n selectSalePreInvoiceForContractProduct_BarCode.spipDiscountPercent = currencyFormatter.unformat(this.rowsDepoCode[index].percentDiscount, {code: 'USD'});\r\n selectSalePreInvoiceForContractProduct_BarCode.spipComissionStore = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n selectSalePreInvoiceForContractProduct_BarCode.spipTaxStore = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipBasePrice = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipOverHead = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipPriceArsam = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n this.rowsSalePreInvoiceForContractProduct_BarCode.push(selectSalePreInvoiceForContractProduct_BarCode);\r\n this.rowsSalePreInvoiceForContractProduct_BarCode = [...this.rowsSalePreInvoiceForContractProduct_BarCode];\r\n }\r\n });\r\n } else {\r\n let selectSalePreInvoiceForContractProduct_BarCode = new VMSalePreInvoiceForContractProduct_BarCode();\r\n selectSalePreInvoiceForContractProduct_BarCode.spipYear = Number(this.authService.currentUser.phoneNumber);\r\n selectSalePreInvoiceForContractProduct_BarCode.spipPartCode = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipCode = this.indexpreinvoice;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipRevesion = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipProductCode = user.depCode;\r\n selectSalePreInvoiceForContractProduct_BarCode.barCode = '-';\r\n selectSalePreInvoiceForContractProduct_BarCode.moneyCode = user.moneyCode != null ? user.moneyCode : 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipAmount = user.count;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipFromDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n selectSalePreInvoiceForContractProduct_BarCode.spipToDeliveryDate = this.SalePreInvoice.SPIToDeliveryDate;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipPrice = currencyFormatter.unformat(user.priceStore, {code: 'USD'});\r\n selectSalePreInvoiceForContractProduct_BarCode.spipDiscountPercent = currencyFormatter.unformat(this.rowsDepoCode[index].percentDiscount, {code: 'USD'});\r\n selectSalePreInvoiceForContractProduct_BarCode.spipComissionStore = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n selectSalePreInvoiceForContractProduct_BarCode.spipTaxStore = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipBasePrice = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipOverHead = 0;\r\n selectSalePreInvoiceForContractProduct_BarCode.spipPriceArsam = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n this.rowsSalePreInvoiceForContractProduct_BarCode.push(selectSalePreInvoiceForContractProduct_BarCode);\r\n this.rowsSalePreInvoiceForContractProduct_BarCode = [...this.rowsSalePreInvoiceForContractProduct_BarCode];\r\n }\r\n });\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.salePreInvoiceForContracts = this.SalePreInvoice;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.rowsNewProduct = [...this.rowsSalePreInvoiceForContractProduct_BarCode];\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.code = 0;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.csubName = this.csubName;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.vmSalePriceProductInfoForSalePerInvoice = [];\r\n // مشخصات اقساط\r\n if (this.TypePrice == 2) {\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments = new IInstallments();\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.spiYear = Number(this.authService.currentUser.phoneNumber);\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.spiPartCode = 0;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.spiCode = this.indexpreinvoice;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.prePayment = this.installmentForm.get('prepayment')?.value;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.numberInstallments = +this.installmentForm.get('installmentNumber')?.value;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.installmentInterest = this.installmentForm.get('installmentInterest')?.value;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.remainingPayment = this.remainingPayment;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.finalAmount = this.installmentForm.get('finalPayment')?.value;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.tbl_InstallmentsDetails = this.installments2;\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.iInstallments.creditInstitutionPlansForCustomersId = this.creditInstitutionPlansForCustomersId;\r\n }\r\n this.rowsDepoCode.forEach(async (user, index) => {\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.vmSalePriceProductInfoForSalePerInvoice.push(user.vmSalePriceProductInfoForSalePerInvoice);\r\n this.VMSelectSalePreInvoiceForContractProduct_BarCode.vmSalePriceProductInfoForSalePerInvoice = [...this.VMSelectSalePreInvoiceForContractProduct_BarCode.vmSalePriceProductInfoForSalePerInvoice];\r\n });\r\n this.accountService.InsertNewPreInvoice(this.VMSelectSalePreInvoiceForContractProduct_BarCode)\r\n .subscribe(result => {\r\n if (result.resultAction == 0) {\r\n this.alertService.showMessage('Success', ' پیش فاکتور با شماره ' + result.code + ' صادر شد. ', MessageSeverity.success);\r\n this.cancel();\r\n this.successfulSave.emit(this.sourcePreInvoiceInfo);\r\n } else if (result.resultAction == 2) {\r\n this.alertService.showMessage('Success', 'درصد تخفیف وارد شده مورد قبول نمی باشد', MessageSeverity.error);\r\n } else if (result.resultAction == 3) {\r\n this.alertService.showMessage('Success', 'مشتری به طرح انتخاب شده دسترسی ندارد لطفا داده های مورد نظر را مجددا بررسی نمایید ', MessageSeverity.error);\r\n } else if (result.resultAction == 4) {\r\n this.alertService.showMessage('Success', 'خطا در سیستم رخ داده است لطفا از صحت اطلاعات یا ارتباط با سرور اطمینان حاصل فرمایید ', MessageSeverity.error);\r\n }\r\n }\r\n , error => this.saveerror(error)\r\n );\r\n }\r\n }\r\n\r\n cancel() {\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n //this.resetForm();\r\n // this.alertService.showMessage('لغو شد', 'عملیات توسط کاربر لغو شد', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n this.showInstallmentFields === false;\r\n this.TypePrice = null;\r\n }\r\n }\r\n\r\n\r\n SumMoney(cells: number[]): number {\r\n var currencyFormatter = require('currency-formatter');\r\n const filteredCells = cells.filter(cell => !!cell);\r\n return currencyFormatter.format(filteredCells.reduce((sum, cell) => (sum += currencyFormatter.unformat(cell, {code: 'USD'})), 0), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n }\r\n\r\n MethodReload(Cmain?: number) {\r\n if (this.isreal) {\r\n this.accountService.getDepos(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n } else {\r\n this.accountService.getDeposOwner(this.authService.currentUser.id).subscribe(res => this.methodLoaddepos(res));\r\n }\r\n }\r\n\r\n MethodTest1(joker: number) {\r\n this.Cmain = joker;\r\n this.loadCurrentGroupData(joker);\r\n this.SaleCustomerService.getSaleCustomer(joker).subscribe(results => this.onDataLoadSuccessful(results[0]), error => this.onDataLoadFailed(error));\r\n this.goodsEditor.CMainCode = joker;\r\n this.accountService.GetAssigneSaler(this.Cmain).subscribe(res => this.methodAssignSaler(res), error => this.ErrorFiled(error));\r\n }\r\n\r\n methodAssignSaler(res: number): void {\r\n this.CAssignSaler = res;\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.goodsEditor.SaveCus) {\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodTest1(res));\r\n }\r\n\r\n this.goodsEditor.changesCancelledCallback = () => {\r\n this.editorModalgoods.hide();\r\n\r\n this.goodsEditor.selected.forEach((row, index) => {\r\n this.IsMoveSelecteds = true;\r\n let isexist = false;\r\n\r\n this.rowsDepoCode.forEach((user, index2) => {\r\n\r\n if (user.depCode === row.depCode) {\r\n\r\n isexist = true;\r\n if (user.scanSerial != null && user.scanSerial.length > 0) {\r\n this.ErrorSearch('کد کالا ' + user.depCode + '، برای بارکدی در لیست موجود می باشد.');\r\n\r\n } else {\r\n //this.ErrorSearch('کد کالا ' + user.depCode + ' در لیست موجود هست.');\r\n\r\n }\r\n }\r\n });\r\n\r\n if (!isexist) {\r\n this.loadDepo(row, row.depCode, false);\r\n }\r\n });\r\n this.CheckChangeForm();\r\n };\r\n\r\n this.update_Value_ALL();\r\n this.EmptySearch();\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.EmptySearch();\r\n }\r\n\r\n methodLoaddepos(Depos: Depos1[]) {\r\n this.allDepos = Depos;\r\n this.allDepos.forEach((user, index) => {\r\n if (index == 0) {\r\n this.Depocode = user.value;\r\n }\r\n });\r\n\r\n if (this.allDepos != null && this.allDepos.length > 0) {\r\n this.select(Number(this.allDepos[0].value));\r\n }\r\n }\r\n\r\n\r\n async MethodloadNewCode(loadNewCode: number, isPayment: boolean) {\r\n this.SalePreInvoice!.SPIYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoice!.SPIPartCode = 0;\r\n this.SalePreInvoice!.SPICode = this.indexpreinvoice = loadNewCode;\r\n this.SalePreInvoice!.SPIKindCode = 4;//نوع سفارش\r\n this.SalePreInvoice!.SPICustomerCode = this.Cmain;\r\n this.SalePreInvoice!.SPISubCustomerCode = this.Csub;\r\n let yourDate = this.serverDate;\r\n this.SalePreInvoice!.SPIToDeliveryDate = new Date(yourDate.setDate(yourDate.getDate() + 4)).toLocaleDateString('en-US');\r\n this.SalePreInvoice!.SPIIsVoid = false;\r\n this.SalePreInvoice!.SPIIsAccepted = false;\r\n this.SalePreInvoice!.SPIRegistUserCode = 73;\r\n this.SalePreInvoice!.SPIAcceptedUserCode = 0;\r\n this.SalePreInvoice!.SPIPrivateConditions = \"\";\r\n this.SalePreInvoice!.PriceKind = this.goodsEditor.IdGroup;\r\n this.SalePreInvoice!.AssigneSalerCode = this.CAssignSaler;\r\n this.SalePreInvoice!.DepoCode = Number(this.Depocode.toString());\r\n this.SalePreInvoice!.TypePrice = this.TypePrice;\r\n await this.accountService.newPreInvoice(this.SalePreInvoice!).subscribe(s => {\r\n this.savePreInvoiceSuccessHelpernotmessage(isPayment);\r\n }\r\n , error => this.saveerror(error));\r\n }\r\n\r\n savePreInvoiceSuccessHelpernotmessage(isPayment: boolean) {\r\n let currencyFormatter = require('currency-formatter');\r\n this.lenghNUmber = 0;\r\n this.rowsDepoCode.forEach(async (user, index) => {\r\n this.lenghNUmber++;\r\n\r\n if (user.scanSerial != null && user.scanSerial.length > 0) {\r\n user.scanSerial.forEach(async (rowB, indexB) => {\r\n\r\n if (user.depCode == rowB.productCode) {\r\n\r\n this.SalePreInvoiceProduct.spipYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoiceProduct.spipPartCode = 0;\r\n this.SalePreInvoiceProduct.spipCode = this.indexpreinvoice;\r\n this.SalePreInvoiceProduct.spipRevesion = 0;\r\n this.SalePreInvoiceProduct.spipProductCode = user.depCode;\r\n this.SalePreInvoiceProduct.barCode = rowB.serialCode != null || rowB.serialCode != 'undefined' ? rowB.serialCode : '-';\r\n this.SalePreInvoiceProduct.moneyCode = user.moneyCode != null ? user.moneyCode : 0;\r\n\r\n this.SalePreInvoiceProduct.spipAmount = user.count;\r\n this.SalePreInvoiceProduct.spipFromDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoiceProduct.spipToDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoiceProduct.spipPrice = currencyFormatter.unformat(user.priceStore, {code: 'USD'});\r\n this.SalePreInvoiceProduct.spipDiscountPercent = currencyFormatter.unformat(this.rowsDepoCode[index].percentDiscount, {code: 'USD'});\r\n this.SalePreInvoiceProduct.spipComissionStore = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n this.SalePreInvoiceProduct.spipTaxStore = 0;\r\n this.SalePreInvoiceProduct.spipBasePrice = 0;\r\n this.SalePreInvoiceProduct.spipOverHead = 0;\r\n this.SalePreInvoiceProduct.spipPriceArsam = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n await this.accountService.newPreInvoiceProduct(this.SalePreInvoiceProduct).subscribe(s => this.SaveFinish(), error => this.saveerror(error));\r\n }\r\n\r\n });\r\n } else {\r\n\r\n this.SalePreInvoiceProduct.spipYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoiceProduct.spipPartCode = 0;\r\n this.SalePreInvoiceProduct.spipCode = this.indexpreinvoice;\r\n this.SalePreInvoiceProduct.spipRevesion = 0;\r\n this.SalePreInvoiceProduct.spipProductCode = user.depCode;\r\n this.SalePreInvoiceProduct.barCode = '-';\r\n this.SalePreInvoiceProduct.moneyCode = user.moneyCode != null ? user.moneyCode : 0;\r\n\r\n this.SalePreInvoiceProduct.spipAmount = user.count;\r\n this.SalePreInvoiceProduct.spipFromDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoiceProduct.spipToDeliveryDate = this.serverDate.toLocaleDateString('en-US');\r\n this.SalePreInvoiceProduct.spipPrice = currencyFormatter.unformat(user.priceStore, {code: 'USD'});\r\n this.SalePreInvoiceProduct.spipDiscountPercent = currencyFormatter.unformat(this.rowsDepoCode[index].percentDiscount, {code: 'USD'});\r\n this.SalePreInvoiceProduct.spipComissionStore = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n this.SalePreInvoiceProduct.spipTaxStore = 0;\r\n this.SalePreInvoiceProduct.spipBasePrice = 0;\r\n this.SalePreInvoiceProduct.spipOverHead = 0;\r\n this.SalePreInvoiceProduct.spipPriceArsam = currencyFormatter.unformat(this.rowsDepoCode[index][\"totalComision\"], {code: 'USD'});\r\n await this.accountService.newPreInvoiceProduct(this.SalePreInvoiceProduct).subscribe(s => this.SaveFinish(), error => this.saveerror(error));\r\n }\r\n });\r\n\r\n this.savePreInvoiceSuccessHelpernotmessageProduct(isPayment, this.indexpreinvoice);\r\n }\r\n\r\n savePreInvoiceSuccessHelpernotmessageProduct(isPayment: boolean, InvNo: number) {\r\n if (InvNo > 0) {\r\n this.indexpreinvoice = InvNo;\r\n this.savePreInvoiceSuccessHelper(InvNo);\r\n if (this.lenghNUmber == this.rowsDepoCode.length) {\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n if (this.isGeneralEditor) {\r\n if (this.isNewCustomer) {\r\n this.alertService.showMessage('Success', ' پیش فاکتور با شماره ' + InvNo + ' صادر شد. ', MessageSeverity.success);\r\n //this.resetInvosale();\r\n // if (this.TypePrice == 2) {\r\n // this.postInstallmentData(InvNo);\r\n // }\r\n } else if (!this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات پیش فاکتور شماره ' + InvNo + 'با موفقیت انجام شد. ', MessageSeverity.success);\r\n }\r\n }\r\n if (this.isEditSelf) {\r\n this.alertService.showMessage('Success', 'تغییرات مربوط به پیش فاکتور شماره ' + InvNo + ' با موفقیت ثبت شد. ', MessageSeverity.success);\r\n }\r\n\r\n if (isPayment) {\r\n if (this.SalePreInvoice!.TypePrice != 2) {\r\n this.ShowPayInvNo(InvNo);\r\n }\r\n\r\n } else {\r\n this.isSaving = false;\r\n this.isEditMode = false;\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n } else {\r\n this.isSaving = false;\r\n this.alertService.showMessage('Error!', 'متاسفانه اقلام پیش فاکتور کامل ثبت نشد، بعد از بررسی مجددا اقدام نمایید.', MessageSeverity.error);\r\n //del inv\r\n }\r\n } else {\r\n this.alertService.showMessage('Error!', 'متاسفانه پیش فاکتور ثبت نشد، بعد از بررسی مجددا اقدام نمایید.', MessageSeverity.error);\r\n }\r\n\r\n }\r\n\r\n LoadNewCustomerCode(res: number): void {\r\n this.CustomerClubObj.customerID = res;\r\n this.accountService.CustomerClubsInsert(this.CustomerClubObj).subscribe(s => this.saveCustomerClub(), error => this.saveerror(error));\r\n }\r\n\r\n saveCustomerClub(): void {\r\n this.alertService.showStickyMessage('Success', 'مشتری به لیست باشگاه مشتریان اضافه گردید.', MessageSeverity.success);\r\n this.CustomerSalePreInvoiceObj.customerID = this.CustomerClubObj.customerID;\r\n this.CustomerSalePreInvoiceObj.spiCode = this.indexpreinvoice;\r\n this.CustomerSalePreInvoiceObj.spiPartCode = 0;\r\n this.CustomerSalePreInvoiceObj.spiYear = Number(this.authService.currentUser.phoneNumber);\r\n this.accountService.InsertCustomerSalePreInvoices(this.CustomerSalePreInvoiceObj).subscribe(\r\n s => {\r\n this.SaveFinish(),\r\n this.resetInvosale();\r\n },\r\n error => this.saveerror(error));\r\n }\r\n\r\n SaveFinish(): void {\r\n this.alertService.showStickyMessage('Success', 'پیش فاکتور برای مشتری ثبت شد..', MessageSeverity.success);\r\n this.CustomerClubObj!.customerNationalCode = null;\r\n // this.inveSaleForm.reset();\r\n //this.resetInvosale();\r\n }\r\n\r\n MethodBackCmainCSub(Cmain: number, Csub: number) {\r\n this.Cmain = Cmain;\r\n this.Csub = Csub;\r\n //this.accountService.getGroupsCustomers(Cmain, Csub).subscribe(res => this.onLoadGroup(res));\r\n //this.accountService.getgroupswithcMainCode(Cmain).subscribe(results => this.onLoadGroup(results), error => this.onCurrentUserDataLoadFailed(error));\r\n //this.accountService.getgroupswithSaleCustomerItemPriceKind(Cmain).subscribe(results => this.onLoadGroup(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private loadHesabKind() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getHesabKind().subscribe(\r\n results => {\r\n this.alertService.stopLoadingMessage();\r\n this.allhesabkindbank = results;\r\n },\r\n error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private loadSaleBankAccount() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getBankAccount(1).subscribe(\r\n results => {\r\n this.alertService.stopLoadingMessage();\r\n this.allsalebankaccounts = results;\r\n },\r\n error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private loadBank() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getBankAccount(2).subscribe(\r\n results => {\r\n this.alertService.stopLoadingMessage();\r\n this.allbank = results;\r\n },\r\n error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n updateValue(event, rowIndex, isDisCount?: boolean, isDisCountPercen?: boolean) {\r\n let currencyFormatter = require('currency-formatter');\r\n this.installmentForm.reset();\r\n this.acceptInstallment = false;\r\n this.installments2 = [];\r\n let ev = event.target === undefined ? event : event.target.value != \"\" ? event.target.value : \"\";\r\n\r\n if (ev != \"\") {\r\n let newcount = ev;\r\n\r\n if (isDisCount) {\r\n if (isDisCountPercen) {\r\n this.rowsDepoCode[rowIndex].percentDiscount = Number(Number(newcount).toFixed(3));\r\n } else {\r\n this.rowsDepoCode[rowIndex].priceDiscount = Number(Number(newcount).toFixed(3));\r\n }\r\n } else {\r\n this.rowsDepoCode[rowIndex].count = newcount;\r\n }\r\n\r\n let tocam3 = Number(this.rowsDepoCode[rowIndex][\"count\"]);\r\n\r\n let tocam = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"priceStore\"], {code: 'USD'}));\r\n let tocam2 = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"priceArsam\"], {code: 'USD'}));\r\n let pprice = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"pPrice\"], {code: 'USD'}));\r\n let percentageoCom = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"percentageoCom\"], {code: 'USD'}));\r\n let comdStore = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"comdStore\"], {code: 'USD'}));\r\n let overhead = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"overhead\"], {code: 'USD'}));\r\n let priceDiscount = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"priceDiscount\"], {code: 'USD'}));\r\n let percentDiscount = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"percentDiscount\"], {code: 'USD'}));\r\n\r\n let bar = this.rowsDepoCode[rowIndex][\"depBarCode\"] != null && this.rowsDepoCode[rowIndex][\"depBarCode\"] != 'undefined' && this.rowsDepoCode[rowIndex][\"depBarCode\"] != '-' ? this.rowsDepoCode[rowIndex][\"depBarCode\"] : '';\r\n if (bar !== '') {\r\n if (tocam3 > 1) {\r\n this.rowsDepoCode[rowIndex].count = 1;\r\n newcount = tocam3 = 1;\r\n this.ErrorSearch('بارکد ' + bar + ' در لیست موجود هست، بارکد فقط یک واحد می باشد');\r\n }\r\n }\r\n\r\n this.GetSalePriceProduct(false, this.rowsDepoCode[rowIndex], bar, false, tocam3, rowIndex, isDisCount, isDisCountPercen);\r\n\r\n let cam = ((((pprice * percentageoCom) / 100) * (comdStore)) / 100);\r\n this.rowsDepoCode[rowIndex][\"priceArsamAll\"] = tocam2 * tocam3;\r\n this.rowsDepoCode[rowIndex][\"pPriceAll\"] = pprice * tocam3;\r\n this.rowsDepoCode[rowIndex][\"overheadAll\"] = overhead * tocam3;\r\n this.rowsDepoCode[rowIndex][\"totalDiscount\"] = currencyFormatter.format(Number(priceDiscount * tocam3), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totalComision\"] = currencyFormatter.format(Number(cam * tocam3), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totalAmount\"] = currencyFormatter.format((Math.round((tocam - priceDiscount) * tocam3)), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totaltax\"] = currencyFormatter.format(Math.round((0.09 * currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totalAmount\"], {code: 'USD'}))), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totalSum\"] = currencyFormatter.format(Math.round(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totalAmount\"], {code: 'USD'}) + currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totaltax\"], {code: 'USD'})), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.totallAllRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallSumRows = 0;\r\n this.totallComissionRows = 0;\r\n this.totallDiscountRows = 0;\r\n this.rowsDepoCode.forEach((user, index) => {\r\n let totalAll = this.rowsDepoCode[index][\"totalAmount\"];\r\n let totalta = this.rowsDepoCode[index][\"totaltax\"];\r\n let totalsu = this.rowsDepoCode[index][\"totalSum\"];\r\n let totalco = this.rowsDepoCode[index][\"totalComision\"];\r\n let totaldic = this.rowsDepoCode[index][\"totalDiscount\"];\r\n this.totallAllRows = this.totallAllRows + Number(currencyFormatter.unformat(totalAll, {code: 'USD'}));\r\n this.totallTaxRows = this.totallTaxRows + Number(currencyFormatter.unformat(totalta, {code: 'USD'}));\r\n this.totallSumRows = this.totallSumRows + Number(currencyFormatter.unformat(totalsu, {code: 'USD'}));\r\n this.totallComissionRows = this.totallComissionRows + Number(currencyFormatter.unformat(totalco, {code: 'USD'}));\r\n this.totallDiscountRows = this.totallDiscountRows + Number(currencyFormatter.unformat(totaldic, {code: 'USD'}));\r\n\r\n });\r\n } else {\r\n this.rowsDepoCode[rowIndex][\"count\"] = 0;\r\n }\r\n\r\n this.rowsDepoCode = [...this.rowsDepoCode];\r\n }\r\n\r\n\r\n update_Value(value, rowIndex) {\r\n\r\n let currencyFormatter = require('currency-formatter');\r\n let pcode = this.rowsDepoCode[rowIndex][\"depCode\"];\r\n let bar = this.rowsDepoCode[rowIndex][\"depBarCode\"] != null && this.rowsDepoCode[rowIndex][\"depBarCode\"] != 'undefined' && this.rowsDepoCode[rowIndex][\"depBarCode\"] != '-' ? this.rowsDepoCode[rowIndex][\"depBarCode\"] : '';\r\n if (value != \"\") {\r\n if (this.rowsDepoCode.length == 1 || this.onCheckingRemanidRows(this.rowsDepoCode[rowIndex], pcode, this.rowsDepoCode, false, bar != '' ? true : false)) {\r\n let tocam3 = Number(value);\r\n if (bar !== '') {\r\n if (tocam3 > 1) {\r\n this.rowsDepoCode[rowIndex][\"count\"] = 1;\r\n value = tocam3 = 1;\r\n this.ErrorSearch('بارکد ' + bar + ' در لیست موجود هست، بارکد فقط یک واحد می باشد');\r\n }\r\n }\r\n\r\n let tocam = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"priceStore\"], {code: 'USD'}));\r\n let tocam2 = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"priceArsam\"], {code: 'USD'}));\r\n let pprice = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"pPrice\"], {code: 'USD'}));\r\n let percentageoCom = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"percentageoCom\"], {code: 'USD'}));\r\n let comdStore = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"comdStore\"], {code: 'USD'}));\r\n // let overhead = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"overhead\"], { code: 'USD' }));\r\n let priceDiscount = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"priceDiscount\"], {code: 'USD'}));\r\n // let percentDiscount = Number(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"percentDiscount\"], { code: 'USD' }));\r\n\r\n let cam = ((((pprice * percentageoCom) / 100) * (comdStore)) / 100);\r\n this.rowsDepoCode[rowIndex][\"priceArsamAll\"] = tocam2 * tocam3;\r\n this.rowsDepoCode[rowIndex][\"pPriceAll\"] = Number(this.rowsDepoCode[rowIndex][\"pPrice\"]) * tocam3;\r\n this.rowsDepoCode[rowIndex][\"overheadAll\"] = Number(this.rowsDepoCode[rowIndex][\"overhead\"]) * tocam3;\r\n this.rowsDepoCode[rowIndex][\"totalDiscount\"] = currencyFormatter.format(Number(priceDiscount * tocam3), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totalComision\"] = currencyFormatter.format(Number(cam * tocam3), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"count\"] = tocam3;\r\n this.rowsDepoCode[rowIndex][\"totalAmount\"] = currencyFormatter.format((Math.round((tocam - priceDiscount) * tocam3)), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totaltax\"] = currencyFormatter.format(Math.round((0.09 * currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totalAmount\"], {code: 'USD'}))), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.rowsDepoCode[rowIndex][\"totalSum\"] = currencyFormatter.format(Math.round(currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totalAmount\"], {code: 'USD'}) + currencyFormatter.unformat(this.rowsDepoCode[rowIndex][\"totaltax\"], {code: 'USD'})), {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.totallAllRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallSumRows = 0;\r\n this.totallComissionRows = 0;\r\n this.totallDiscountRows = 0;\r\n this.rowsDepoCode.forEach((user, index) => {\r\n let totalAll = this.rowsDepoCode[index][\"totalAmount\"];\r\n let totalta = this.rowsDepoCode[index][\"totaltax\"];\r\n let totalsu = this.rowsDepoCode[index][\"totalSum\"];\r\n let totalco = this.rowsDepoCode[index][\"totalComision\"];\r\n let totaldic = this.rowsDepoCode[index][\"totalDiscount\"];\r\n this.totallAllRows = this.totallAllRows + Number(currencyFormatter.unformat(totalAll, {code: 'USD'}));\r\n this.totallTaxRows = this.totallTaxRows + Number(currencyFormatter.unformat(totalta, {code: 'USD'}));\r\n this.totallSumRows = this.totallSumRows + Number(currencyFormatter.unformat(totalsu, {code: 'USD'}));\r\n this.totallComissionRows = this.totallComissionRows + Number(currencyFormatter.unformat(totalco, {code: 'USD'}));\r\n this.totallDiscountRows = this.totallDiscountRows + Number(currencyFormatter.unformat(totaldic, {code: 'USD'}));\r\n\r\n });\r\n } else {\r\n this.ErrorSearch(' مجموع تعداد وارد شده کد کالای ' + pcode + ' در لیست بیشتر از موجودی می باشد.');\r\n\r\n }\r\n\r\n } else {\r\n this.rowsDepoCode[rowIndex][\"count\"] = 0;\r\n }\r\n\r\n this.rowsDepoCode = [...this.rowsDepoCode];\r\n }\r\n\r\n update_Value_ALL() {\r\n if (this.rowsDepoCode.length > 0) {\r\n this.rowsDepoCode.forEach((row, rowIndex) => {\r\n this.update_Value(row.count, rowIndex);\r\n });\r\n }\r\n }\r\n\r\n InputGoods() {\r\n if (this.paymentType !== \"\" && this.saleGroup > 0) {\r\n if (this.MoveGroupDepo) {\r\n\r\n if (!this.isreal) {\r\n this.goodsEditor.Year = Number(this.authService.currentUser.phoneNumber);\r\n this.goodsEditor.usercode = 0;\r\n this.goodsEditor.DCMainUnit = 0;\r\n this.goodsEditor.TarazAll = 1;\r\n this.goodsEditor.IsPrice = false;\r\n this.goodsEditor.DepCode = this.Depocode;\r\n this.goodsEditor.OwnerBoolan = this.OwnerBoolan;\r\n this.goodsEditor.isreal = false;\r\n } else {\r\n this.goodsEditor.Year = Number(this.authService.currentUser.phoneNumber);\r\n this.goodsEditor.usercode = 0;\r\n this.goodsEditor.DCMainUnit = 0;\r\n this.goodsEditor.TarazAll = 1;\r\n this.goodsEditor.IsPrice = false;\r\n this.goodsEditor.DepCode = this.Depocode;\r\n this.goodsEditor.OwnerBoolan = this.OwnerBoolan;\r\n this.goodsEditor.isreal = true;\r\n }\r\n\r\n this.goodsEditor.rows = [];\r\n this.goodsEditor.rowsCache = [];\r\n this.goodsEditor.resetForm();\r\n this.goodsEditor.LoadDepoCode();\r\n\r\n this.rowsDepoCode.forEach((user, index1) => {\r\n let ex = false;\r\n this.goodsEditor.selected.forEach((row, index) => {\r\n if (user.depCode === row.depCode) {\r\n user.selected = 'checked';\r\n ex = true;\r\n }\r\n });\r\n if (!ex) {\r\n this.goodsEditor.selected.push(user);\r\n }\r\n });\r\n\r\n this.editorModalgoods.show();\r\n } else {\r\n this.alertService.showMessage('Warning', 'لطفا اطلاعات را کامل وارد کنید انبار', MessageSeverity.warn);\r\n }\r\n } else {\r\n this.alertService.showMessage('هشدار', 'لطفا گروه قیمتی و همچنین نوع پرداخت را انتخاب نمایید.', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n onChange(event: any) {\r\n let value = event.option.value;\r\n this.customerCode = value;\r\n this.accountService.getCMainCode(this.authService.currentUser.id).subscribe(res => this.MethodBackCmainCSub(res, value));\r\n this.isSelect = !this.isSelect;\r\n this.getCreditInstitutionPlansForCustomers();\r\n }\r\n\r\n onChangegroup(idGroup) {\r\n this.rowsDepoCode = [];\r\n this.goodsEditor.IdGroup = idGroup;\r\n // this.isMoveGroup = true;\r\n this.idGroup = idGroup;\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.showdetailsEditor.resetData();\r\n\r\n }\r\n\r\n changeTypeStore(ObjNumber: number) {\r\n this.MoveGroupDepo = true;\r\n if (ObjNumber === 1) {\r\n this.isreal = true;\r\n this.MethodReload(this.Cmain);\r\n } else {\r\n this.isreal = false;\r\n this.MethodReload(this.Cmain);\r\n }\r\n }\r\n\r\n changeTypeTasviyeh(paymentType: number) {\r\n if (+paymentType === 1) {\r\n this.TypePrice = 1;\r\n this.installments2.length = 0;\r\n this.installmentForm.reset();\r\n this.showInstallmentFields = false;\r\n this.ddlGroup = this.allgroup;\r\n } else {\r\n this.TypePrice = 2;\r\n this.showInstallmentFields = true;\r\n this.factorrasmi = true;\r\n this.completed = true;\r\n this.ddlGroup = this.allgroup_PK_3;\r\n this.selectGroup1.setValue(16);\r\n this.selectGroup2.setValue(16);\r\n this.saleGroup = 16;\r\n }\r\n }\r\n\r\n getCreditInstitutionPlansForCustomers() {\r\n this.creditInstitutiomService.getCreditInstitutionPlansForCustomers(this.Cmain, this.customerCode).subscribe(result => {\r\n if (result.length === 0) {\r\n this.creditInstitutionPlans = [];\r\n this.alertService.showMessage('هشدار', 'طرح اقساط برای این مشتری یافت نگردید', MessageSeverity.warn);\r\n } else {\r\n this.creditInstitutionPlans = result;\r\n }\r\n }, error => {\r\n });\r\n }\r\n\r\n ShowPayInvNo(InvNo: number) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.startLoadingMessage('تایید و ثبت قرارداد ...');\r\n this.accountService.CreateContractForPerInvoiceProducts(Number(this.authService.currentUser.phoneNumber), 5, InvNo, Number(this.authService.currentUser.phoneNumber), false)\r\n .subscribe(res => res != null && res.contractCode != null && res.contractCode != 0 ?\r\n this.accountService.getPreInvoice(Number(this.authService.currentUser.phoneNumber), 5, InvNo)\r\n .subscribe(res => this.ShowPay(res), error => this.ErrorFiled(error)) : this.DeletePreInvoice(InvNo), error => this.ErrorFiled(error));\r\n }\r\n\r\n DeletePreInvoice(InvNo: number) {\r\n this.alertService.stopLoadingMessage();\r\n //this.alertService.showStickyMessage('Error!', 'پیش فاکتور شماره ' + InvNo + ' ثبت نشد.', MessageSeverity.error);\r\n this.accountService.DeletePreInvoice(Number(this.authService.currentUser.phoneNumber), 5, InvNo)\r\n .subscribe(\r\n res => {\r\n this.alertService.showStickyMessage('', 'پیش فاکتور با شماره ' + InvNo + ' ثبت شد.', MessageSeverity.success)\r\n , error => this.ErrorFiled(error);\r\n });\r\n }\r\n\r\n ShowPay(row: PreInvoice) {\r\n if (row != null && row.contractCode != null) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', 'پیش فاکتور تایید و قرارداد با شماره ' + row.contractCode + ' ثبت شد.', MessageSeverity.success);\r\n this.alertService.startLoadingMessage('پرداخت قرارداد ...');\r\n\r\n this.accountService.GetNewCodeRecipt(Number(this.authService.currentUser.phoneNumber), 5, 1).subscribe(\r\n res => {\r\n this.preInvoiceSale.emit(row);\r\n },\r\n error => this.ErrorFiled(error));\r\n\r\n } else {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Success', 'پیش فاکتور تایید و قرارداد ثبت شد.', MessageSeverity.success);\r\n\r\n }\r\n }\r\n\r\n csubName = \"\";\r\n\r\n onDataLoadSuccessful(saleCustomerItem: SaleCustomer[]) {\r\n saleCustomerItem.forEach((user, index, saleCustomerItem) => {\r\n (user as any).index = index + 1;\r\n if (index === 0) {\r\n this.csubName = user.cName;\r\n }\r\n });\r\n this.rows = [...saleCustomerItem];\r\n }\r\n\r\n setAll(completed: boolean) {\r\n this.completed = completed;\r\n this.paymentType2.enable();\r\n this.selectGroup1.enable();\r\n this.selectGroup2.enable();\r\n this.paymentType2.setValue(this.TypePrice);\r\n this.selectGroup1.setValue(3);\r\n this.selectGroup2.setValue(3);\r\n this.saleGroup = 3;\r\n if (this.TypePrice == 2) {\r\n this.completed = true;\r\n } else if (completed) {\r\n this.factorrasmi = true;\r\n } else {\r\n this.factorrasmi = false;\r\n this.idGroup = 3;\r\n this.goodsEditor.IdGroup = 3;\r\n this.EnabaleChange = false;\r\n this.rowsDepoCode = [];\r\n this.goodsEditor.selected = [];\r\n }\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n ErrorFiled(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `AssignerSaler.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n private saveerror(error: any) {\r\n this.alertService.showMessage('خطا', error, MessageSeverity.error);\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا', 'خطاهای زیر هنگام ذخیره تغییرات شما رخ داده است ', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, \"\", MessageSeverity.error);\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n private loadCurrentGroupData(Cmain) {\r\n //ili\r\n this.alertService.startLoadingMessage();\r\n if (this.canAssignGroups) {\r\n //this.accountService.getgroups().subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n //this.accountService.getgroupswithcMainCode(Cmain).subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n this.accountService.getgroupswithSaleCustomerItemPriceKind(Cmain).subscribe(results => this.onCurrentUserDataLoadSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n\r\n }\r\n }\r\n\r\n private loadCurrentOstanData() {\r\n this.alertService.startLoadingMessage();\r\n this.accountService.getostans().subscribe(results => this.onCurrentUserDataLoadOstanSuccessful(results), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n\r\n private onCurrentUserDataLoadSuccessful(groups: SalePriceKind[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allgroup = groups;\r\n this.allgroup_PK_3 = groups.filter(a => a.pkcode == 16);\r\n\r\n groups.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.goodsEditor.IdGroup = user.pkcode;\r\n // this.isMoveGroup = true;\r\n }\r\n });\r\n if (this.isNewCus) {\r\n this.editorModal.show();\r\n }\r\n }\r\n\r\n private onCurrentUserDataLoadOstanSuccessful(ostans: Ostan[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.allostan = ostans;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('خطا در بارگذاری', `بارگذاری اطلاعات گروه از سرور امکان پذیر نیست.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n this.gr = new group();\r\n }\r\n\r\n newCustomer(allgroup: group[], allostan: Ostan[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewCustomer = true;\r\n this.sale = new SaleCustomer();\r\n //this.allgroup = [...allgroup];\r\n //this.allostan = [...allostan];\r\n this.edit();\r\n return this.sale;\r\n }\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.sale = new SaleCustomer();\r\n Object.assign(this.sale, this.sale);\r\n } else {\r\n if (!this.sale) {\r\n this.sale = new SaleCustomer();\r\n }\r\n }\r\n this.isEditMode = true;\r\n }\r\n\r\n get canacceptpreinvoice() {\r\n return this.accountService.userHasPermission(Permission.taeedpreInvoice);\r\n }\r\n\r\n AcceptPreInvoiced() {\r\n }\r\n\r\n get CanManageCustomer() {\r\n return this.accountService.userHasPermission(Permission.manageCustomerPermission);\r\n }\r\n\r\n onLoadGroup(groups: SalePriceKind[]) {\r\n groups.forEach((user, index) => {\r\n (user as any).index = index + 1;\r\n if (index == 0) {\r\n this.goodsEditor.IdGroup = user.pkcode;\r\n // this.isMoveGroup = true;\r\n }\r\n });\r\n\r\n this.allgroup = groups;\r\n this.allgroup_PK_3 = groups.filter(a => a.pkcode == 3);\r\n\r\n //this.myGroup.refresh();\r\n\r\n }\r\n\r\n // private savePreInvoiceSuccessHelperAccept(SalePreInvoice?: string) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.showValidationErrors = false;\r\n // if (this.isGeneralEditor) {\r\n\r\n // if (this.TypePrice == 1) {\r\n // this.accountService.GetNewCodeContract(Number(this.authService.currentUser.phoneNumber), 5).subscribe(res => this.MethodloadNewCodeContract(res));\r\n // } else if (this.TypePrice == 2) {\r\n\r\n // this.editorModalcheck.show();\r\n // } else if (this.TypePrice == 3) {\r\n // this.editorModalghest.show();\r\n // }\r\n // }\r\n // }\r\n\r\n // MethodloadNewCodeContract(loadNewCode: number) {\r\n\r\n // this.SaleNewContractObj.ncyear = Number(this.authService.currentUser.phoneNumber);\r\n // this.SaleNewContractObj.ncpartCode = 0;\r\n // this.SaleNewContractObj.nccode = this.Ncpcodeobject = loadNewCode;\r\n // this.SaleNewContractObj.nckindCode = 1;\r\n // //this.SaleNewContractObj.ncdate = new Date().toLocaleDateString('en-US');\r\n // //this.SaleNewContractObj.ncfromCreditDate = new Date().toLocaleDateString('en-US');\r\n // //this.SaleNewContractObj.nctoCreditDate = new Date().toLocaleDateString('en-US');\r\n // this.SaleNewContractObj.ncdate = this.serverDate.toLocaleDateString('en-US');\r\n // this.SaleNewContractObj.ncfromCreditDate = this.serverDate.toLocaleDateString('en-US');\r\n // this.SaleNewContractObj.nctoCreditDate = this.serverDate.toLocaleDateString('en-US');\r\n // this.SaleNewContractObj.nccustomerCode = this.Cmain;\r\n // this.SaleNewContractObj.ncsubCustomerCode = this.SPISubCustomerCode;\r\n // this.SaleNewContractObj.ncsaleFactor = \"\";\r\n // this.SaleNewContractObj.ncbuyFactor = \"\";\r\n // this.SaleNewContractObj.ncregistUserCode = 43;\r\n // this.SaleNewContractObj.ncPrivateConditions = \"\";\r\n // this.SaleNewContractObj.PriceKind = 3;\r\n // this.SaleNewContractObj.ncStatusNumber = 0;\r\n // this.SaleNewContractObj.ncStatusString = \"قرارداد\";\r\n // this.SaleNewContractObj.ncStatusAccept = false;\r\n // this.accountService.newSaleNewContracts(this.SaleNewContractObj).subscribe(s => this.saveContractSuccessHelper(), error => this.saveerror(error));\r\n // }\r\n\r\n // private saveContractSuccessHelper(SalePreInvoice?: string) {\r\n // this.accountService.getPreInvoiceProduct(Number(this.authService.currentUser.phoneNumber), 5, this.spiCode).subscribe(res => this.MethodTestContract(res));\r\n // }\r\n\r\n MethodTestContract(con: SalePreInvoiceForContractProduct[]) {\r\n\r\n con.forEach(async (ObjSale) => {\r\n\r\n this.lenght = con.length;\r\n this.SaleNewContractProductObj.nCPYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SaleNewContractProductObj.nCPPartCode = 0;\r\n this.SaleNewContractProductObj.nCPCode = this.Ncpcodeobject;\r\n this.SaleNewContractProductObj.nCPRevesion = 0;\r\n this.SaleNewContractProductObj.ncpProductCode = ObjSale.spipProductCode;\r\n this.SaleNewContractProductObj.barCode = ObjSale.barCode == null || ObjSale.barCode == 'undefined' ? '-' : ObjSale.barCode;\r\n this.SaleNewContractProductObj.ncpAmount = ObjSale.spipAmount;\r\n this.SaleNewContractProductObj.nCPFromDeliveryDate = ObjSale.spipFromDeliveryDate;\r\n this.SaleNewContractProductObj.nCPToDeliveryDate = ObjSale.spipToDeliveryDate;\r\n this.SaleNewContractProductObj.nCPTolerancePercent = 0;\r\n this.SaleNewContractProductObj.nCPPrice = ObjSale.spipPrice;\r\n this.SaleNewContractProductObj.nCPDiscountPercent = ObjSale.spipDiscountPercent;\r\n this.SaleNewContractProductObj.nCPPerPay = 0;\r\n this.SaleNewContractProductObj.nCPDelayDeliveryPay = 0;\r\n this.SaleNewContractProductObj.nCPMiddleMaturity = 0;\r\n\r\n\r\n this.SalePreInvoiceSaleNewContract.Amount = ObjSale.spipAmount;\r\n this.SalePreInvoiceSaleNewContract.NCCode = this.Ncpcodeobject;\r\n this.SalePreInvoiceSaleNewContract.NCYear = Number(this.authService.currentUser.phoneNumber);\r\n this.SalePreInvoiceSaleNewContract.SPICode = this.sourcePreInvoiceInfo.spiCode;\r\n this.SalePreInvoiceSaleNewContract.SPIPartCode = this.sourcePreInvoiceInfo.spiPartCode;\r\n this.SalePreInvoiceSaleNewContract.SPIProductCode = ObjSale.spipProductCode;\r\n this.SalePreInvoiceSaleNewContract.barCode = ObjSale.barCode == null || ObjSale.barCode == 'undefined' ? '-' : ObjSale.barCode;\r\n this.SalePreInvoiceSaleNewContract.SPIRevesion = 0;\r\n this.SalePreInvoiceSaleNewContract.SPIYear = Number(this.authService.currentUser.phoneNumber);\r\n\r\n\r\n await this.accountService.newContractProduct(this.SaleNewContractProductObj, this.SalePreInvoiceSaleNewContract).subscribe(s => this.saveContractProductSuccessHelper(this.SaleNewContractProductObj), error => this.saveerror(error));\r\n\r\n });\r\n }\r\n\r\n private saveContractProductSuccessHelper(SalePreInvoice?: ContractProduct) {\r\n let i: number = 1;\r\n if (i == this.lenght) {\r\n i++;\r\n this.alertService.showDialog('پیش فاکتور تایید و تبدیل به قرارداد شده است آیا می خواهید عملیات پرداخت را انجام دهید؟', DialogType.confirm, () => this.SabtareshHelper());\r\n }\r\n\r\n\r\n }\r\n\r\n SabtareshHelper() {\r\n this.priceEditor.Cmain = this.Cmain;\r\n this.priceEditor.Csub = this.SPISubCustomerCode;\r\n this.priceEditor.spiCode = this.spiCode;\r\n this.priceEditor.sPIYear = this.sPIYear;\r\n this.priceEditor.sPIPartCode = this.sPIPartCode;\r\n this.priceEditor.CuntractNumber = this.Ncpcodeobject;\r\n this.priceEditor.newprice(this.allbank, this.allsalebankaccounts, this.allhesabkindbank);\r\n this.editorModalprice.show();\r\n }\r\n\r\n // private savePreInvoiceSuccessHelperVoid(SalePreInvoice?: string) {\r\n // this.alertService.stopLoadingMessage();\r\n // this.showValidationErrors = false;\r\n // if (this.isGeneralEditor) {\r\n // if (this.isNewCustomer) {\r\n // this.alertService.showMessage('Success', ' پیش فاکتور با موفقیت ابطال شد', MessageSeverity.success);\r\n // } else if (!this.isEditSelf) {\r\n // this.alertService.showMessage('Success', 'تغییرات پیش فاکتور با موفقیت انجام شد', MessageSeverity.success);\r\n // }\r\n // }\r\n // if (this.isEditSelf) {\r\n // this.alertService.showMessage('Success', 'تغییرات مربوط به پیش فاکتور با موفقیت ثبت شد', MessageSeverity.success);\r\n // }\r\n // this.isEditMode = false;\r\n // if (this.changesSavedCallback) {\r\n // this.changesSavedCallback();\r\n // }\r\n // }\r\n\r\n private savePreInvoiceSuccessHelper(InvNo?: number) {\r\n this.indexpreinvoice = InvNo!;\r\n if (InvNo > 0 && this.existcustomer && this.CustomerClubObj.customerMobile) {\r\n this.CustomerSalePreInvoiceObj.customerID = this.CustomerClubObj.customerID;\r\n this.CustomerSalePreInvoiceObj.spiCode = this.indexpreinvoice;\r\n this.CustomerSalePreInvoiceObj.spiPartCode = 0;\r\n this.CustomerSalePreInvoiceObj.spiYear = Number(this.authService.currentUser.phoneNumber);\r\n let isCan = false;\r\n if (!this.factorrasmi) {\r\n for (let row of this.rowsDepoCode) {\r\n if (row.dcIntegratedSerial !== null) {\r\n isCan = true;\r\n break;\r\n }\r\n }\r\n }\r\n if (isCan) {\r\n this.accountService.UpdateNational(this.CustomerClubObj.customerMobile, this.CustomerClubObj.customerNationalCode).subscribe(s => this.UpdateFinish(), error => this.UpdateError());\r\n } else {\r\n this.accountService.InsertCustomerSalePreInvoices(this.CustomerSalePreInvoiceObj).subscribe(s => this.SaveFinish(), error => this.saveerror(error));\r\n }\r\n } else {\r\n if (this.CustomerClubObj.customerMobile) {\r\n this.accountService.GetNewCodeCustomerClub().subscribe(\r\n res => {\r\n this.CustomerClubObj.customerID = res;\r\n this.accountService.CustomerClubsInsert(this.CustomerClubObj).subscribe(s => this.saveCustomerClub(), error => this.saveerror(error));\r\n }\r\n , error => this.saveerror(error)\r\n );\r\n }\r\n }\r\n }\r\n\r\n UpdateError(): void {\r\n throw new Error('Method not implemented.');\r\n }\r\n\r\n UpdateFinish(): void {\r\n this.accountService.InsertCustomerSalePreInvoices(this.CustomerSalePreInvoiceObj).subscribe(s => this.SaveFinish(), error => this.saveerror(error));\r\n }\r\n\r\n DeleteMethod(SelectRow: DepoCode) {\r\n let currencyFormatter = require('currency-formatter');\r\n this.installmentForm.reset();\r\n this.acceptInstallment = false;\r\n this.installments2 = [];\r\n this.rowsDepoCodeCash = this.rowsDepoCode;\r\n this.rowsDepoCode.forEach(async (user, index) => {\r\n if (user.depCode == SelectRow.depCode && user.count == SelectRow.count) {\r\n this.rowsDepoCodeCash.splice(index, 1);\r\n }\r\n });\r\n this.goodsEditor.selected.forEach((user, index) => {\r\n if (user.depCode == SelectRow.depCode && user.count == SelectRow.count) {\r\n this.goodsEditor.selected.splice(index, 1);\r\n }\r\n });\r\n this.rowsDepoCode = [...this.rowsDepoCodeCash];\r\n this.onIndexingRows(this.rowsDepoCode);\r\n\r\n this.totallAllRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallSumRows = 0;\r\n this.totallComissionRows = 0;\r\n this.totallDiscountRows = 0;\r\n this.rowsDepoCode.forEach((user, index) => {\r\n let totalAll = this.rowsDepoCode[index][\"totalAmount\"];\r\n let totalta = this.rowsDepoCode[index][\"totaltax\"];\r\n let totalsu = this.rowsDepoCode[index][\"totalSum\"];\r\n let totalco = this.rowsDepoCode[index][\"totalComision\"];\r\n let totaldic = this.rowsDepoCode[index][\"totalDiscount\"];\r\n this.totallAllRows = this.totallAllRows + Number(currencyFormatter.unformat(totalAll, {code: 'USD'}));\r\n this.totallTaxRows = this.totallTaxRows + Number(currencyFormatter.unformat(totalta, {code: 'USD'}));\r\n this.totallSumRows = this.totallSumRows + Number(currencyFormatter.unformat(totalsu, {code: 'USD'}));\r\n this.totallComissionRows = this.totallComissionRows + Number(currencyFormatter.unformat(totalco, {code: 'USD'}));\r\n this.totallDiscountRows = this.totallDiscountRows + Number(currencyFormatter.unformat(totaldic, {code: 'USD'}));\r\n\r\n });\r\n this.rowsDepoCodeCash = this.rowsDepoCode;\r\n\r\n this.CheckChangeForm();\r\n }\r\n\r\n DeleteMethodBarcode(SelectRow: SerialProduct) {\r\n let currencyFormatter = require('currency-formatter');\r\n this.rowsDepoCodeCash = this.rowsDepoCode;\r\n this.rowsDepoCode.forEach(async (user, index) => {\r\n\r\n if (user.depCode == SelectRow.productCode) {\r\n\r\n user.scanSerial.forEach((rowB, indexB) => {\r\n if (rowB.productCode == SelectRow.productCode && rowB.serialCode == SelectRow.serialCode) {\r\n user.scanSerial.splice(indexB, 1);\r\n\r\n if (user.scanSerial !== null && user.scanSerial.length > 0) {\r\n user.count = user.scanSerial.length;\r\n this.updateValue(user.count, index);\r\n } else {\r\n this.DeleteMethod(user);\r\n }\r\n }\r\n });\r\n\r\n }\r\n });\r\n this.rowsDepoCode = [...this.rowsDepoCodeCash];\r\n this.onIndexingRows(this.rowsDepoCode);\r\n\r\n this.totallAllRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallSumRows = 0;\r\n this.totallComissionRows = 0;\r\n this.totallDiscountRows = 0;\r\n this.rowsDepoCode.forEach((user, index) => {\r\n let totalAll = this.rowsDepoCode[index][\"totalAmount\"];\r\n let totalta = this.rowsDepoCode[index][\"totaltax\"];\r\n let totalsu = this.rowsDepoCode[index][\"totalSum\"];\r\n let totalco = this.rowsDepoCode[index][\"totalComision\"];\r\n let totaldic = this.rowsDepoCode[index][\"totalDiscount\"];\r\n this.totallAllRows = this.totallAllRows + Number(currencyFormatter.unformat(totalAll, {code: 'USD'}));\r\n this.totallTaxRows = this.totallTaxRows + Number(currencyFormatter.unformat(totalta, {code: 'USD'}));\r\n this.totallSumRows = this.totallSumRows + Number(currencyFormatter.unformat(totalsu, {code: 'USD'}));\r\n this.totallComissionRows = this.totallComissionRows + Number(currencyFormatter.unformat(totalco, {code: 'USD'}));\r\n this.totallDiscountRows = this.totallDiscountRows + Number(currencyFormatter.unformat(totaldic, {code: 'USD'}));\r\n\r\n });\r\n this.rowsDepoCodeCash = this.rowsDepoCode;\r\n\r\n this.CheckChangeForm();\r\n }\r\n\r\n get canAssignGroups() {\r\n return this.accountService.userHasPermission(Permission.assognGroupsPermisson);\r\n }\r\n\r\n newCus() {\r\n this.isEditingSelf = false;\r\n this.isNewCus = true;\r\n this.loadCurrentGroupData(this.Cmain);\r\n }\r\n\r\n reset() {\r\n this.rowsDepoCode = [];\r\n this.rowsDepoCodeCash = [];\r\n this.goodsEditor.selected = [];\r\n this.goodsEditor.rows = [];\r\n this.goodsEditor.rowsCache = [];\r\n this.goodsEditor.rowsSelect = [];\r\n this.rows = [];\r\n this.Depocode = \"\";\r\n this.totallSumRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallAllRows = 0;\r\n this.totallTax = \"\";\r\n this.totallAllRows = 0;\r\n this.totallTaxRows = 0;\r\n this.totallSumRows = 0;\r\n this.totallComissionRows = 0;\r\n this.totallDiscountRows = 0;\r\n this.isEditMode = false;\r\n this.isshownew = true;\r\n this.CAssignSaler = 0;\r\n this.isSelect = false;\r\n this.isNewCustomer = false;\r\n this.isEditingSelf = false;\r\n this.isEditing = false;\r\n this.isCan = true;\r\n this.isNewCus = false;\r\n this.Ncpcodeobject = 0;\r\n this.allhesabkindbank = [];\r\n this.allsalebankaccounts = [];\r\n this.allbank = [];\r\n this.isSaving = false;\r\n this.isEditSelf = false;\r\n this.showValidationErrors = false;\r\n this.changeTypeStore(1);\r\n this.uniqueId = Utilities.uniqueId();\r\n this.sale = new SaleCustomer();\r\n this.SaleNewContractObj = new SaleNewContract();\r\n this.SaleNewContractProductObj = new ContractProduct();\r\n this.SalePreInvoice = new SalePreInvoiceForContracts();\r\n this.SalePreInvoiceSaleNewContract = new PreInvoiceContract();\r\n this.SalePreInvoiceProduct = new SalePreInvoiceForContractProduct();\r\n this.isreal = true;\r\n this.Cmain = 0;\r\n this.Csub = 0;\r\n this.sourcePreInvoiceInfo = new PreInvoice();\r\n this.spiCode = 0;\r\n this.CuntractNumber = 0;\r\n this.TypePrice = 1;\r\n this.sPIPartCode = 0;\r\n this.SPISubCustomerCode = 0;\r\n this.NewNumber = 0;\r\n this.myArrId = new Array();\r\n this.Depocode = \"\";\r\n this.rowsSelectInv = [];\r\n this.preinvoicenew = false;\r\n this.EnabaleChange = false;\r\n this.DeleteMethod(new DepoCode());\r\n this.installmentForm.reset();\r\n this.finalPayment2 = ''; // مبلغ نهایی پرداخت\r\n this.installments2 = [];\r\n this.factorrasmi == false;\r\n this.completed = false;\r\n }\r\n\r\n resetForm() {\r\n this.reset();\r\n this.loadData();\r\n }\r\n\r\n firstloadGroup() {\r\n this.changeTypeStore(1);\r\n }\r\n\r\n ShowDetails(row: DepoCode) {\r\n if (row != null) {\r\n let currencyFormatter = require('currency-formatter');\r\n\r\n this.showdetailsEditor.rowProduct = row;\r\n this.showdetailsEditor.csubName = this.csubName;\r\n this.showdetailsEditor.cName = this.cName;\r\n\r\n this.showdetailsEditor.productcode = row.depCode;\r\n this.showdetailsEditor.productname = row.dcDesc;\r\n this.showdetailsEditor.barcode = '-';\r\n this.showdetailsEditor.SalePrice = currencyFormatter.format(row.priceStore, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n\r\n\r\n let totalAmount = Number(currencyFormatter.unformat(row.totalAmount, {code: 'USD'}));\r\n let totaltax = Number(currencyFormatter.unformat(row.totaltax, {code: 'USD'}));\r\n\r\n this.showdetailsEditor.totalPrice = currencyFormatter.format(totalAmount + totaltax, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.showdetailsEditor.totaltax = currencyFormatter.format(row.totaltax, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n if (row.vmSalePriceProductInfoForSalePerInvoice != null) {\r\n this.showdetailsEditor.comment = row.vmSalePriceProductInfoForSalePerInvoice.comment;\r\n this.showdetailsEditor.productCount = currencyFormatter.format(row.vmSalePriceProductInfoForSalePerInvoice.productCount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.showdetailsEditor.discountValuePercent = String(this.sharedService.getPriceToPercentage(row.vmSalePriceProductInfoForSalePerInvoice.discountPriceFromMaximumUnitSalePriceAfterDiscount!, row.vmSalePriceProductInfoForSalePerInvoice.salePrice).toFixed(3));\r\n this.showdetailsEditor.discountValuePrice = currencyFormatter.format(row.vmSalePriceProductInfoForSalePerInvoice.discountPriceFromMaximumUnitSalePriceAfterDiscount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.showdetailsEditor.approvedDiscountValuePercent = String(row.vmSalePriceProductInfoForSalePerInvoice.approvedDiscountValuePercent);\r\n this.showdetailsEditor.approvedDiscountValuePrice = currencyFormatter.format(row.vmSalePriceProductInfoForSalePerInvoice.approvedDiscountValuePrice, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.showdetailsEditor.discountPriceFromMaximumUnitSalePriceAfterDiscount = currencyFormatter.format(row.vmSalePriceProductInfoForSalePerInvoice.discountPriceFromMaximumUnitSalePriceAfterDiscount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n this.showdetailsEditor.maximumUnitSalePriceAfterDiscount = currencyFormatter.format(row.vmSalePriceProductInfoForSalePerInvoice.maximumUnitSalePriceAfterDiscount, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n let count = Number(currencyFormatter.unformat(row.count, {code: 'USD'}));\r\n let pprice = Number(currencyFormatter.unformat(row.pPrice, {code: 'USD'}));\r\n let percentageoCom = Number(currencyFormatter.unformat(row.percentageoCom, {code: 'USD'}));\r\n let comdStore = Number(currencyFormatter.unformat(row.comdStore, {code: 'USD'}));\r\n let cam = ((((pprice * percentageoCom) / 100) * (comdStore)) / 100) * count;\r\n this.showdetailsEditor.storeBaseCommissionAfterDiscount = currencyFormatter.format(cam, {\r\n symbol: '',\r\n thousandsSeparator: ',',\r\n precision: 0\r\n });\r\n let fromdate = row.vmSalePriceProductInfoForSalePerInvoice.fromDateTime != null ? moment(row.vmSalePriceProductInfoForSalePerInvoice.fromDateTime).locale('fa').format('YYYY/MM/DD') : '-';\r\n let todate = row.vmSalePriceProductInfoForSalePerInvoice.toDateTime != null ? moment(row.vmSalePriceProductInfoForSalePerInvoice.toDateTime).locale('fa').format('YYYY/MM/DD') : '-';\r\n this.showdetailsEditor.fromDateTime = fromdate.toString();\r\n this.showdetailsEditor.toDateTime = todate.toString();\r\n this.showdetailsEditor.DiscountKind = row.vmSalePriceProductInfoForSalePerInvoice.discountKindId === \"0\" ? 'ندارد' : row.vmSalePriceProductInfoForSalePerInvoice.discountKindId === \"Quantity\" ? 'تعدادی' : 'مبلغی';\r\n this.showdetailsEditor.DiscountApplication = row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === \"0\" ? 'ندارد' : row.vmSalePriceProductInfoForSalePerInvoice.discountApplyId === \"Systemic\" ? 'سیستمی' : 'دستی';\r\n this.showdetailsEditor.DiscountAmount = row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === \"0\" ? 'ندارد' : row.vmSalePriceProductInfoForSalePerInvoice.discountAmountId === \"Percentage\" ? 'درصدی' : 'مبلغی';\r\n }\r\n this.showdetailsEditor.depocode = this.Depocode;\r\n this.showdetailsEditor.loadingIndicator = true;\r\n this.showdetailsEditor.isGeneralEditor = true;\r\n this.editorModalshowdetails.show();\r\n }\r\n\r\n }\r\n\r\n @ViewChild('myTable')\r\n table: DatatableComponent;\r\n\r\n toggleExpandRow(row) {\r\n if (row.scanSerial != null && row.scanSerial.length > 0) {\r\n this.table.rowDetail.toggleExpandRow(row);\r\n this.rowsDepoCode = [...this.rowsDepoCode];\r\n }\r\n }\r\n\r\n postInstallmentData(InvNo: number) {\r\n this.installmentData.spiYear = Number(this.authService.currentUser.phoneNumber);\r\n this.installmentData.spiPartCode = 0;\r\n this.installmentData.spiCode = InvNo;\r\n this.installmentData.prePayment = this.installmentForm.get('prepayment')?.value;\r\n this.installmentData.numberInstallments = +this.installmentForm.get('installmentNumber')?.value;\r\n this.installmentData.installmentInterest = this.installmentForm.get('installmentInterest')?.value;\r\n this.installmentData.remainingPayment = this.remainingPayment;\r\n this.installmentData.finalAmount = this.installmentForm.get('finalPayment')?.value;\r\n this.installmentData.tbl_InstallmentsDetails = this.installments2;\r\n this.accountService.installmentsService(this.installmentData).subscribe(\r\n data => {\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n if (this.TypePrice !== null || 0 || \"\") {\r\n this.TypePrice == null;\r\n }\r\n this.paymentType2.setValue(\"\");\r\n //this.alertService.showMessage('موفق', 'اقساط شما به شماره' + data + '', MessageSeverity.success)\r\n }\r\n );\r\n }\r\n\r\n public prePayment: number = 0;\r\n public prePayment2: string = '';\r\n public remainingPayment: number = 0; //مانده پرداختی\r\n public precentageInstallments: number = 0; // درصد اقساط\r\n public paymentInstallments: number = 0; //پرداختی اولیه هر قسط\r\n public installmentInterest2: string = ''; //سود هر قسط\r\n public paymentPerInstallment: number = 0; // پرداختی نهایی هر قسط\r\n public finalPayment2: string = ''; // مبلغ نهایی پرداخت\r\n public installments2: IInstallmentsDetaile[] = [];\r\n public installmentDate = new Date();\r\n\r\n changePayment(event: any) {\r\n const value = event.target.value;\r\n this.installments2 = [];\r\n let currencyFormatter = require('currency-formatter');\r\n this.prePayment = Number(currencyFormatter.unformat(value, {code: 'USD'}));\r\n if (this.rowsDepoCode.length !== 0) {\r\n if (this.prePayment >= (this.totallSumRows * (this.selectedCredit.prePayment / 100))) {\r\n if (this.prePayment < this.totallSumRows) {\r\n this.calculateInstallmentFees(this.selectedCredit);\r\n // this.remainingPayment = this.totallSumRows - this.prePayment;\r\n // this.prePayment2 = this.remainingPayment.toString();\r\n } else {\r\n this.installmentForm.get('installmentInterest')?.reset();\r\n this.installmentForm.get('finalPayment')?.reset();\r\n this.alertService.showMessage('اخطار', 'مبلغ پیش پرداخت بیشتر از مبلغ کل می باشد.', MessageSeverity.warn);\r\n window.document.getElementById('prepayment')?.focus();\r\n }\r\n } else {\r\n this.installmentForm.get('installmentInterest')?.reset();\r\n this.installmentForm.get('finalPayment')?.reset();\r\n this.alertService.showMessage('اخطار', `پیش پرداخت نباید کمتر از ${this.selectedCredit.prePayment}% مبلغ کل باشد.`, MessageSeverity.warn);\r\n window.document.getElementById('prepayment')?.focus();\r\n }\r\n } else {\r\n this.alertService.showMessage('اخطار', 'شما هیچ کالایی را انتخاب نکرده اید', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n calculateInstallmentFees(selectedCredit: CreditInstitutionPlansModel) {\r\n let numberCheck: number = selectedCredit.installmentsNumber;\r\n if (numberCheck <= 0) {\r\n this.alertService.showMessage('اخطار', 'تعداد اقساط صفر مورد قبول نمی باشد', MessageSeverity.warn);\r\n return;\r\n }\r\n this.remainingPayment = this.totallSumRows - this.installmentForm.get('prepayment')?.value;\r\n this.precentageInstallments = (numberCheck * ((selectedCredit.wageArsam + selectedCredit.wageBank) / 100) / 100); // درصد اقساط\r\n let installmentInterest = Math.ceil(this.remainingPayment * this.precentageInstallments); //سود اقساط\r\n this.installmentForm.get('installmentInterest')?.patchValue(installmentInterest);\r\n let installmentInterest2 = Math.ceil(this.remainingPayment * this.precentageInstallments); //سود اقساط\r\n this.paymentPerInstallment = (this.remainingPayment + installmentInterest) / numberCheck; // پرداخت نهایی هر قسط بدون درصد خالصی\r\n const aroundPayment = this.aroundPaymentCheck((this.remainingPayment + installmentInterest), numberCheck);\r\n let paymentPerInstallment2 = ((this.remainingPayment + installmentInterest) - aroundPayment) / numberCheck; // پرداخت نهایی هر قسط\r\n\r\n let finalPayment = this.paymentPerInstallment * numberCheck;\r\n this.installmentForm.get('finalPayment')?.patchValue(finalPayment);// مبلغ نهایی پرداخت\r\n\r\n this.paymentInstallments = finalPayment / numberCheck; //پرداختی اولیه هر قسط\r\n this.installments2 = [];\r\n this.installmentDate = new Date();\r\n let sumCheckPriceCustomer = 0;\r\n for (let i = 1; i <= numberCheck; i++) {\r\n let installmentsDetail = new IInstallmentsDetaile();\r\n this.installmentDate.setMonth(this.installmentDate.getMonth() + 1);\r\n installmentsDetail.dateInstallments = this.installmentDate.toLocaleDateString();\r\n if (i == numberCheck) {\r\n sumCheckPriceCustomer += paymentPerInstallment2 + aroundPayment;\r\n //جمع کل قابل پرداخت\r\n const sumCheckPriceAll = (installmentInterest2 + this.totallSumRows);\r\n const checkPrice = (sumCheckPriceAll - (sumCheckPriceCustomer + (+this.installmentForm.get('prepayment')?.value)));\r\n installmentsDetail.amountInstallments = paymentPerInstallment2 + aroundPayment + checkPrice;\r\n } else {\r\n installmentsDetail.amountInstallments = paymentPerInstallment2;\r\n sumCheckPriceCustomer += paymentPerInstallment2;\r\n }\r\n\r\n this.installments2.push(installmentsDetail);\r\n }\r\n }\r\n\r\n\r\n aroundPaymentCheck(finalpayment: number, checkCount: number): number {\r\n let unPurePayment = 0;\r\n for (let i = 1; i < finalpayment; i++) {\r\n let count = finalpayment - i;\r\n if (count % checkCount == 0) {\r\n unPurePayment = i;\r\n return unPurePayment;\r\n }\r\n }\r\n }\r\n\r\n getFormatDateShamsi(date: string) {\r\n return new Date(date).toLocaleDateString(\"fa-IR\");\r\n }\r\n\r\n resetInvosale() {\r\n this.CustomerClubObj.customerNationalCode = null;\r\n // this.inveSaleForm.reset();\r\n this.paymentType2.setValue(\"\");\r\n this.showInstallmentFields = false;\r\n this.factorrasmi = false;\r\n this.completed = false;\r\n }\r\n\r\n public selectedCredit: CreditInstitutionPlansModel;\r\n\r\n onChangeCreditInstitutionPlans(event: any) {\r\n if (this.rowsDepoCode.length !== 0) {\r\n const value = event.value;\r\n //P2\r\n this.creditInstitutionPlansForCustomersId = +value;\r\n this.selectedCredit = this.creditInstitutionPlans.find(x => x.id == +value);\r\n if (this.selectedCredit) {\r\n let defaultPrePayment = Math.ceil(this.totallSumRows * (this.selectedCredit.prePayment / 100));\r\n let totalPrice = this.totallSumRows - defaultPrePayment;\r\n this.installmentForm.get(\"prepayment\")?.patchValue(defaultPrePayment);\r\n this.installmentForm.get(\"finalPayment\")?.patchValue(totalPrice);\r\n this.installmentForm.get(\"installmentNumber\")?.patchValue(this.selectedCredit.installmentsNumber);\r\n this.calculateInstallmentFees(this.selectedCredit);\r\n }\r\n } else {\r\n this.alertService.showMessage('اخطار', 'شما هیچ کالایی را انتخاب نکرده اید', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n}\r\n","import { Component, OnInit, OnDestroy, ViewChild } from '@angular/core';\n\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { AppTranslationService } from '../../services/app-translation.service';\nimport { BootstrapSelectDirective } from '../../directives/bootstrap-select.directive';\nimport { AccountService } from '../../services/account.service';\nimport { ThemeManager } from '../../services/theme-manager';\nimport { Utilities } from '../../services/utilities';\nimport { Permission } from '../../models/permission.model';\n\n\n@Component({\n selector: 'user-preferences',\n templateUrl: './user-preferences.component.html',\n styleUrls: ['./user-preferences.component.scss']\n})\nexport class UserPreferencesComponent implements OnInit, OnDestroy {\n\n themeSelectorToggle = true;\n\n languageChangedSubscription: any;\n\n @ViewChild('languageSelector', { static: true })\n languageSelector: BootstrapSelectDirective;\n\n @ViewChild('homePageSelector', { static: true })\n homePageSelector: BootstrapSelectDirective;\n\n constructor(\n private alertService: AlertService,\n private translationService: AppTranslationService,\n private accountService: AccountService,\n public themeManager: ThemeManager,\n public configurations: ConfigurationService) {\n }\n\n ngOnInit() {\n this.languageChangedSubscription = this.translationService.languageChanged$.subscribe(data => {\n this.themeSelectorToggle = false;\n\n setTimeout(() => {\n this.languageSelector.refresh();\n this.homePageSelector.refresh();\n this.themeSelectorToggle = true;\n });\n });\n }\n\n ngOnDestroy() {\n this.languageChangedSubscription.unsubscribe();\n }\n\n\n\n reloadFromServer() {\n this.alertService.startLoadingMessage();\n\n this.accountService.getUserPreferences()\n .subscribe(results => {\n this.alertService.stopLoadingMessage();\n\n this.configurations.import(results);\n\n this.alertService.showMessage('Defaults loaded!', '', MessageSeverity.info);\n\n },\n error => {\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve user preferences from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n });\n }\n\n setAsDefault() {\n this.alertService.showDialog('Are you sure you want to set the current configuration as your new defaults?', DialogType.confirm,\n () => this.setAsDefaultHelper(),\n () => this.alertService.showMessage('Operation Cancelled!', '', MessageSeverity.default));\n }\n\n setAsDefaultHelper() {\n this.alertService.startLoadingMessage('', 'Saving new defaults');\n\n this.accountService.updateUserPreferences(this.configurations.export())\n .subscribe(response => {\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('New Defaults', 'Account defaults updated successfully', MessageSeverity.success);\n\n },\n error => {\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', `An error occured whilst saving configuration defaults.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n });\n }\n\n\n\n resetDefault() {\n this.alertService.showDialog('Are you sure you want to reset your defaults?', DialogType.confirm,\n () => this.resetDefaultHelper(),\n () => this.alertService.showMessage('Operation Cancelled!', '', MessageSeverity.default));\n }\n\n resetDefaultHelper() {\n this.alertService.startLoadingMessage('', 'Resetting defaults');\n\n this.accountService.updateUserPreferences(null)\n .subscribe(response => {\n this.alertService.stopLoadingMessage();\n this.configurations.import(null);\n this.alertService.showMessage('Defaults Reset', 'Account defaults reset completed successfully', MessageSeverity.success);\n\n },\n error => {\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', `An error occured whilst resetting configuration defaults.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n });\n }\n\n\n get canViewCustomers() {\n return this.accountService.userHasPermission(Permission.viewUsersPermission); // eg. viewCustomersPermission\n }\n\n get canViewProducts() {\n return this.accountService.userHasPermission(Permission.viewUsersPermission); // eg. viewProductsPermission\n }\n\n get canViewOrders() {\n return true; // eg. viewOrdersPermission\n }\n}\n","
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n

{{'preferences.ReloadPreferencesHint' | 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

{{'preferences.LanguageHint' | 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

{{'preferences.HomePageHint' | 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

{{'preferences.ThemeHint' | 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

{{'preferences.DashboardStatisticsHint' | 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

{{'preferences.DashboardNotificationsHint' | 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

{{'preferences.DashboardTodoHint' | 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

{{'preferences.DashboardBannerHint' | 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","import { Component } from '@angular/core';\nimport { fadeInOut } from '../../services/animations';\n\n@Component({\n selector: 'orders',\n templateUrl: './orders.component.html',\n animations: [fadeInOut]\n})\nexport class OrdersComponent {\n}\n","
\r\n

\r\n \r\n تراز مشتریان\r\n

\r\n
\r\n \r\n
\r\n
\r\n","import { Component } from \"@angular/core\";\r\nimport { fadeInOut } from '../../services/animations';\r\nimport { AuthService } from \"../../services/auth.service\";\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class SidebarComponent {\r\n\r\n constructor(private authService: AuthService,\r\n private accountService: AccountService) { }\r\n\r\n logout() {\r\n this.authService.logout();\r\n this.authService.redirectLogoutUser();\r\n }\r\n\r\n getYear() {\r\n return new Date().getUTCFullYear();\r\n }\r\n\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n\r\n get fullName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.fullName : '';\r\n }\r\n\r\n get canViewCustomers() {\r\n return this.accountService.userHasPermission(Permission.ViewCustomerPermission); // eg. viewCustomersPermission\r\n }\r\n\r\n get canViewInvoiceSale() {\r\n return this.accountService.userHasPermission(Permission.ViewInvoiceSalePermisson); // eg. viewCustomersPermission\r\n }\r\n\r\n get canViewProducts() {\r\n return this.accountService.userHasPermission(Permission.viewUsersPermission); // eg. viewProductsPermission\r\n }\r\n\r\n get canViewContract() {\r\n return this.accountService.userHasPermission(Permission.ContractManage); // eg. viewProductsPermission\r\n }\r\n\r\n get canViewReport() {\r\n return this.accountService.userHasPermission(Permission.ViewReportPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewDepo() {\r\n return this.accountService.userHasPermission(Permission.ViewDepoPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewDepoAdmin() {\r\n return (this.accountService.userHasPermission(Permission.ViewDepoPermission) && false); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewResid() {\r\n return this.accountService.userHasPermission(Permission.ManageResidPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewTasviyeh() {\r\n return this.accountService.userHasPermission(Permission.ManageTasviyehPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewMarjo() {\r\n return this.accountService.userHasPermission(Permission.ManageMarjoPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewCar() {\r\n return this.accountService.userHasPermission(Permission.ViewCarPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewDriver() {\r\n return this.accountService.userHasPermission(Permission.ViewDriverPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canViewTadarokat() {\r\n return this.accountService.userHasPermission(Permission.ManageTadarokatPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canDepoAssignment() {\r\n return this.accountService.userHasPermission(Permission.DepoAssignmentPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canDefineStore() {\r\n return this.accountService.userHasPermission(Permission.tadarokatProductPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canCommission() {\r\n return this.accountService.userHasPermission(Permission.ManageCommissionPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get canmoneydealeraccept() {\r\n return this.accountService.userHasPermission(Permission.acceptmoneydealerPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get SalereportPermission() {\r\n return this.accountService.userHasPermission(Permission.SalereportPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get SalereportgroupPermission() {\r\n return this.accountService.userHasPermission(Permission.SalegroupreportPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get RequestInvoicePermission() {\r\n return this.accountService.userHasPermission(Permission.RequestInvoicePermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get RialReceiptPermission() {\r\n return this.accountService.userHasPermission(Permission.RialReceiptPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get CashDeskPermission() {\r\n return this.accountService.userHasPermission(Permission.CashDeskPermission); // eg. viewOrdersPermission\r\n }\r\n\r\n get CanAccessSaleStore() {\r\n return this.accountService.userHasPermission(Permission.SaleManageAccess);\r\n }\r\n\r\n\r\n get CanInstallmentsCartabelCustomer() {\r\n return this.accountService.userHasPermission(Permission.InstallmentCustomerAccess); \r\n }\r\n\r\n get CanInstallmentsCartabelCheck() {\r\n return this.accountService.userHasPermission(Permission.InstallmentCheckAccess);\r\n }\r\n\r\n get CanAccessNtswReport() {\r\n /*return this.accountService.userHasPermission(Permission.ViewNtswShow);*/\r\n let test = this.accountService.userHasPermission(Permission.ViewNtswShow);\r\n return test;\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","\r\n","import { Component, ViewChild } from '@angular/core';\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\nimport { AccountService } from '../../services/account.service';\nimport { Role } from '../../models/role.model';\nimport { Permission } from '../../models/permission.model';\n\n@Component({\n selector: 'role-editor',\n templateUrl: './role-editor.component.html',\n styleUrls: ['./role-editor.component.scss']\n})\nexport class RoleEditorComponent {\n\n private isNewRole = false;\n public isSaving: boolean;\n public showValidationErrors = true;\n public roleEdit: Role = new Role();\n public allPermissions: Permission[] = [];\n public selectedValues: { [key: string]: boolean; } = {};\n private editingRoleName: string;\n\n public formResetToggle = true;\n\n public changesSavedCallback: () => void;\n public changesFailedCallback: () => void;\n public changesCancelledCallback: () => void;\n\n\n @ViewChild('f', { static: false })\n private form;\n\n\n\n constructor(private alertService: AlertService, private accountService: AccountService) {\n }\n\n\n\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n\n\n save() {\n this.isSaving = true;\n this.alertService.startLoadingMessage('ذخیره کردن تغییرات...');\n\n this.roleEdit.permissions = this.getSelectedPermissions();\n\n if (this.isNewRole) {\n this.accountService.newRole(this.roleEdit).subscribe(role => this.saveSuccessHelper(role), error => this.saveFailedHelper(error));\n } else {\n this.accountService.updateRole(this.roleEdit).subscribe(response => this.saveSuccessHelper(), error => this.saveFailedHelper(error));\n }\n }\n\n\n\n\n private saveSuccessHelper(role?: Role) {\n if (role) {\n Object.assign(this.roleEdit, role);\n }\n\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.showValidationErrors = false;\n\n if (this.isNewRole) {\n this.alertService.showMessage('Success', `Role \\\"${this.roleEdit.name}\\\" was created successfully`, MessageSeverity.success);\n } else {\n this.alertService.showMessage('Success', `Changes to role \\\"${this.roleEdit.name}\\\" was saved successfully`, MessageSeverity.success);\n }\n\n\n this.roleEdit = new Role();\n this.resetForm();\n\n\n if (!this.isNewRole && this.accountService.currentUser.roles.some(r => r == this.editingRoleName)) {\n //this.refreshLoggedInUser();\n }\n\n if (this.changesSavedCallback) {\n this.changesSavedCallback();\n }\n }\n\n\n //private refreshLoggedInUser() {\n // this.accountService.refreshLoggedInUser()\n // .subscribe(user => { },\n // error => {\n // this.alertService.resetStickyMessage();\n // this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\n // });\n //}\n\n\n\n private saveFailedHelper(error: any) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('ذخیره خطا', 'خطاهای زیر هنگام ذخیره تغییرات شما رخ داده است:', MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n\n if (this.changesFailedCallback) {\n this.changesFailedCallback();\n }\n }\n\n\n cancel() {\n this.roleEdit = new Role();\n\n this.showValidationErrors = false;\n this.resetForm();\n\n this.alertService.showMessage('Cancelled', 'Operation cancelled by user', MessageSeverity.default);\n this.alertService.resetStickyMessage();\n\n if (this.changesCancelledCallback) {\n this.changesCancelledCallback();\n }\n }\n\n\n\n selectAll() {\n this.allPermissions.forEach(p => this.selectedValues[p.value] = true);\n }\n\n\n selectNone() {\n this.allPermissions.forEach(p => this.selectedValues[p.value] = false);\n }\n\n\n toggleGroup(groupName: string) {\n let firstMemberValue: boolean;\n\n this.allPermissions.forEach(p => {\n if (p.groupName != groupName) {\n return;\n }\n\n if (firstMemberValue == null) {\n firstMemberValue = this.selectedValues[p.value] == true;\n }\n\n this.selectedValues[p.value] = !firstMemberValue;\n });\n }\n\n\n private getSelectedPermissions() {\n return this.allPermissions.filter(p => this.selectedValues[p.value] == true);\n }\n\n\n resetForm(replace = false) {\n\n if (!replace) {\n this.form.reset();\n } else {\n this.formResetToggle = false;\n\n setTimeout(() => {\n this.formResetToggle = true;\n });\n }\n }\n\n\n newRole(allPermissions: Permission[]) {\n this.isNewRole = true;\n this.showValidationErrors = true;\n\n this.editingRoleName = null;\n this.allPermissions = allPermissions;\n this.selectedValues = {};\n this.roleEdit = new Role();\n\n return this.roleEdit;\n }\n\n editRole(role: Role, allPermissions: Permission[]) {\n if (role) {\n this.isNewRole = false;\n this.showValidationErrors = true;\n\n this.editingRoleName = role.name;\n this.allPermissions = allPermissions;\n this.selectedValues = {};\n role.permissions.forEach(p => this.selectedValues[p.value] = true);\n this.roleEdit = new Role();\n Object.assign(this.roleEdit, role);\n\n return this.roleEdit;\n } else {\n return this.newRole(allPermissions);\n }\n }\n\n\n\n get canManageRoles() {\n return this.accountService.userHasPermission(Permission.manageRolesPermission);\n }\n}\n","
\n
\n\n
\n
\n
\n \n
\n \n \n
\n
\n
\n\n
\n
\n \n
\n \n
\n
\n
\n
\n\n
\n
\n \n {{'roles.editor.RoleNameRequired' | translate}}\n \n
\n
\n\n
\n
\n
\n
\n
\n\n
\n
\n
\n\n \n
\n \n
\n
\n \n \n
\n
\n
\n
\n
\n\n
\n
\n \n\n
\n\n\n
\n
\n
\n
\n
\n\n\n
\n \n\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n","\n\nimport { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nexport function getBaseUrl() {\n return document.getElementsByTagName('base')[0].href;\n}\n\nconst providers = [\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\n];\n\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\n .catch(err => console.error(err));\n","\n\nimport { Pipe, PipeTransform } from '@angular/core';\n\n\n\n@Pipe({ name: 'groupBy' })\nexport class GroupByPipe implements PipeTransform {\n\n transform(value: Array, field: string): Array {\n\n if (!value) {\n return value;\n }\n\n const groupedObj = value.reduce((prev, cur) => {\n if (!prev[cur[field]]) {\n prev[cur[field]] = [cur];\n } else {\n prev[cur[field]].push(cur);\n }\n\n return prev;\n }, {});\n\n return Object.keys(groupedObj).map(key => ({ key, value: groupedObj[key] }));\n }\n}\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { CustomerClubList } from '../../models/CustomerClubList.model';\r\nimport { VMReportCustomerResult } from '../../models/VMReportCustomerResult.model';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { MyAccountService } from '../../services/MyAccount.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'customer-club-list-info',\r\n templateUrl: './customer-club-list-info.component.html',\r\n styleUrls: ['./customer-club-list-info.component.scss']\r\n})\r\nexport class CustomerClubListInfoComponent implements OnInit {\r\n\r\n public customerClubList: CustomerClubList[] = [];\r\n public searchCustomerClubList: CustomerClubList[] = [];\r\n public reportCustomerSale: VMReportCustomerResult[] = [];\r\n public columns: any[] = [];\r\n public loadingIndicator: boolean = true;\r\n public customerName: string = '';\r\n public customerAddress: string = '';\r\n public customerMobile: string = '';\r\n public customerNationalCode: string = '';\r\n public sumDebt: number = 0;\r\n public sumCredit: number = 0;\r\n public remindMoney: number = 0;\r\n\r\n @ViewChild('editorModalReportCustomer', { static: true }) editorModalReportCustomer: ModalDirective;\r\n\r\n constructor(private accountService: AccountService,\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n private myaccountService: MyAccountService) { }\r\n\r\n ngOnInit() {\r\n this.getAllCustomerClub();\r\n }\r\n\r\n getAllCustomerClub() {\r\n this.accountService.getCustomerClubList().subscribe(\r\n (res) => {\r\n this.customerClubList = res\r\n this.searchCustomerClubList = [...res]\r\n this.loadingIndicator = false;\r\n },\r\n (err) => {\r\n this.loadingIndicator = false;\r\n this.alertService.showMessage('خطا', \"ارتباط با سرور با مشکل مواجه شده است لطفا اتصال شبکه خود را چک کنید.\", MessageSeverity.warn);\r\n })\r\n }\r\n\r\n ShowReportCustomer(row: CustomerClubList) {\r\n this.loadingIndicator = true;\r\n //this.reportCustomerSale = [];\r\n if (row !== null || row !== undefined) {\r\n this.customerName = row.customerName;\r\n this.customerAddress = row.customerAddress;\r\n this.customerMobile = row.customerMobile;\r\n this.customerNationalCode = row.customerNationalCode;\r\n this.myaccountService.GetReportCustomerSelect(Number(this.authService.currentUser.phoneNumber), 5, '56', 789, 3, 0, 966, null, null).subscribe(\r\n (res) => {\r\n this.reportCustomerSale = res;\r\n this.reportCustomerSale.forEach((val) => {\r\n this.sumDebt = this.sumDebt + Number(val.sumPriceContracted);\r\n this.sumCredit = this.sumCredit + Number(val.sumPayment);\r\n })\r\n this.remindMoney = this.sumDebt - this.sumCredit;\r\n this.editorModalReportCustomer.show();\r\n this.loadingIndicator = false;\r\n },\r\n (err) => {\r\n this.loadingIndicator = false;\r\n this.alertService.showMessage('خطا', \"ارتباط با سرور با مشکل مواجه شده است لطفا اتصال شبکه خود را چک کنید.\", MessageSeverity.warn);\r\n });\r\n }\r\n else {\r\n this.reportCustomerSale = [];\r\n this.alertService.showMessage('هشدار', \"برای مشتری مورد نظر اطلاعاتی یافت نشد.\", MessageSeverity.warn)\r\n }\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.customerClubList = this.searchCustomerClubList.filter(r => Utilities.searchArray(value, false, r.customerAddress, r.customerCMainCode, r.customerMobile, r.customerName, r.customerNationalCode));\r\n }\r\n\r\n closeEditorModalReportCustomer() {\r\n this.editorModalReportCustomer.hide();\r\n this.reportCustomerSale = [];\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n >\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

گزارش تراز مشتری

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

نام مشتری: ({{customerName}})

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

آدرس مشتری: {{customerAddress}}

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

شماره تلفن مشتری: {{customerMobile}}

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

کد ملی: {{customerNationalCode}}

\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n {{ rowIndex+1 }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n جمع بدهکاری:\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n جمع کل بستانکاری:\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n مانده:\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n"]}