{"version":3,"sources":["./src/app/services/loading-spinner.service.ts","./src/app/models/DepoRevertToDepoCustomer.model.ts","./src/app/components/about/about.component.ts","./src/app/components/about/about.component.html","./src/app/components/controls/pre-contract-modal.component.ts","./src/app/components/controls/pre-contract-modal.component.html","./src/app/components/controls/inv-price.component.ts","./src/app/components/controls/inv-price.component.html","./src/app/models/SaleInvoice.model.ts","./src/app/models/DepoRevertToDepo.model.ts","./src/app/services/sale-customer-service/grade.service.ts","./src/app/services/api-services/sale-preinvoice-for-contract-check-info-service.ts","./src/app/pipes/persian-date.pipe.ts","./src/app/components/controls/goods-info.component.ts","./src/app/components/controls/goods-info.component.html","./src/app/models/RequestInvoiceProductBarCode.model.ts","./src/app/models/permission.model.ts","./src/app/components/controls/reference-reports-info.component.ts","./src/app/components/controls/reference-reports-info.component.html","./src/app/components/client/client-product/single-product/single-product.component.ts","./src/app/components/client/client-product/single-product/single-product.component.html","./src/app/assets/images/demo/banner4.png","fs (ignored)","./src/app/services/app-title.service.ts","./src/app/services/sale-customer-service/sale-customer-image-infos.service.ts","./src/app/components/controls/record-customer-checks-info.component.ts","./src/app/components/controls/record-customer-checks-info.component.html","./src/app/components/controls/customer-info.component.ts","./src/app/components/controls/customer-info.component.html","./src/app/components/customer-club-list/customer-club-list.component.ts","./src/app/components/customer-club-list/customer-club-list.component.html","crypto (ignored)","./src/app/components/controls/price-payment-form-info.component.ts","./src/app/components/controls/price-payment-form-info.component.html","./src/app/directives/bootstrap-datepicker.directive.ts","./src/app/components/header/header.component.ts","./src/app/components/header/header.component.html","./src/app/services/MyAccount-Endpoint.service.ts","./src/app/components/cash-desk/report-recipt-cash-desk/report-recipt-cash-desk.component.ts","./src/app/components/cash-desk/report-recipt-cash-desk/report-recipt-cash-desk.component.html","./src/app/components/record-personal-information/record-personal-information.component.ts","./src/app/components/record-personal-information/record-personal-information.component.html","./src/app/models/VMSelectSaleSubOrder_BarCode.model.ts","stream (ignored)","./src/app/components/client/client-franchise/delegacy-add-edit/delegacy-add-edit.component.ts","./src/app/components/client/client-franchise/delegacy-add-edit/delegacy-add-edit.component.html","./src/app/components/record-customer-checks/record-customer-checks.component.ts","./src/app/components/record-customer-checks/record-customer-checks.component.html","./src/app/components/controls/bill-info.component.ts","./src/app/components/controls/bill-info.component.html","./src/app/services/alert.service.ts","./src/app/components/controls/request-invoice-info.component.ts","./src/app/components/controls/request-invoice-info.component.html","./src/app/components/controls/settlement-info.component.ts","./src/app/components/controls/settlement-info.component.html","./src/app/components/settlement/settlement.component.ts","./src/app/components/settlement/settlement.component.html","./src/app/assets/images/demo/banner3.png","./src/app/components/controls/notifications-viewer.component.ts","./src/app/components/controls/notifications-viewer.component.html","./src/app/components/website-guide/website-guide.component.ts","./src/app/components/website-guide/website-guide.component.html","./src/app/components/controls/depotaraz-info.component.ts","./src/app/components/controls/depotaraz-info.component.html","./src/app/models/user-edit.model.ts","./src/app/models/ContractProduct.model.ts","./src/app/components/resid/resid.component.ts","./src/app/components/resid/resid.component.html","./src/app/services/loader-interceptor.ts","./src/app/components/sale-receipt-customer/sale-recipt-cash/sale-recipt-cash.component.ts","./src/app/components/sale-receipt-customer/sale-recipt-cash/sale-recipt-cash.component.html","./src/app/components/controls/SettlementSave-info.component.ts","./src/app/components/controls/SettlementSave-info.component.html","./src/app/models/utilities/address.model.ts","./src/app/models/VMSelectSalePreInvoiceForContractProduct_BarCode.model.ts","./src/app/components/controls/inv-check.component.ts","./src/app/components/controls/inv-check.component.html","./src/app/components/controls/banner-demo.component.ts","./src/app/components/controls/banner-demo.component.html","./node_modules/jalali-moment/node_modules/moment/locale sync ^\\.\\/.*$","./src/app/models/View_BarcodeInDepo.model.ts","./src/app/models/SaleLoadingCommandBarCode.model.ts","./src/app/models/SalePreInvoiceForContractProduct.model.ts","./src/app/services/app-translation.service.ts","./src/app/models/VMSelectSubOrder_Order.model.ts","./src/app/enums/confirm-message.enum.ts","./src/app/components/app.component.ts","./src/app/components/app.component.html","./src/app/components/controls/upload-documents-info.component.ts","./src/app/components/controls/upload-documents-info.component.html","./src/app/assets/scripts/alertify.js","./src/app/directives/equal-validator.directive.ts","./src/app/models/SalePreInvoiceForContractCheckInfo.model.ts","./src/environments/environment.ts","./src/app/components/bill/bill.component.ts","./src/app/components/bill/bill.component.html","./src/app/services/MyAccount.service.ts","./src/app/models/WareHouseResult.model.ts","./src/app/app-error.handler.ts","./src/app/components/home/home.component.ts","./src/app/components/home/home.component.html","./src/app/services/sale-customer-service/customer-grade.service.ts","./src/app/components/controls/check-information-info.component.html","./src/app/components/controls/check-information-info.component.ts","./src/app/models/DepoCode.model.ts","./src/app/models/SaleReceipts/SaleSubReceipt.model.ts","./src/app/models/utilities/confirm-message.model.ts","./src/app/models/SaleLoadingCommandBarCodeObject.ts","./src/app/services/SaleCustomer.service.ts","./src/app/components/controls/todo-demo.component.ts","./src/app/components/controls/todo-demo.component.html","./src/app/components/controls/show-contract.component.ts","./src/app/components/controls/show-contract.component.html","./src/app/services/base-services/base.service.ts","./src/app/models/CashDesk/report-sale-cash-desk.model.ts","./src/app/models/RequestInvoice.model.ts","./src/app/assets/images/logo.png","./src/app/components/not-found/not-found.component.ts","./src/app/components/not-found/not-found.component.html","./src/app/services/date-picker.service.ts","./src/app/services/MyCompany.service.ts","./src/app/components/controls/personal-information-info.component.html","./src/app/components/controls/personal-information-info.component.ts","./src/app/services/file-upload.service.ts","./src/app/components/controls/warehousestore-info-kardex-remaind-majazi.component.ts","./src/app/components/controls/warehousestore-info-kardex-remaind-majazi.component.html","./src/app/models/VMDepoRevertToDepoCustomers.model.ts","./src/app/models/SaleOrders.model.ts","./src/app/assets/images/demo/banner1.png","./src/app/assets/images/demo/banner2.png","./src/app/components/controls/search-box.component.ts","./src/app/components/controls/search-box.component.html","./src/app/models/VMSelectDepoAssignmentProductDetail_BarCode.model.ts","./src/app/components/controls/report-contract.component.ts","./src/app/components/controls/report-contract.component.html","./src/app/components/controls/report-salegroup-info.component.ts","./src/app/components/controls/report-salegroup-info.component.html","./src/app/models/notification.model.ts","./src/app/components/invoicesale/invoicesale.component.ts","./src/app/components/invoicesale/invoicesale.component.html","./src/app/models/DepoRecieptPermanent.model.ts","./src/app/components/upload-documents/upload-documentst.component.ts","./src/app/components/upload-documents/upload-documents.component.html","./src/app/components/controls/home-info.component.ts","./src/app/components/controls/home-info.component.html","./src/app/components/client/client-shop-banner/client-shop-banner.component.ts","./src/app/components/client/client-shop-banner/client-shop-banner.component.html","./src/app/components/sale-receipt-customer/sale-receipt-lc/sale-receipt-lc.component.ts","./src/app/components/sale-receipt-customer/sale-receipt-lc/sale-receipt-lc.component.html","./src/app/models/SaleSubSendProduct.model.ts","./src/app/services/endpoint-base.service.ts","./src/app/services/db-Keys.ts","./src/app/components/contract/contract.component.ts","./src/app/components/contract/contract.component.html","./src/app/directives/bootstrap-select.directive.ts","./src/app/components/client/client-franchise/client-franchise.component.ts","./src/app/components/client/client-franchise/client-franchise.component.html","./src/app/components/client/client-product/client-product.component.html","./src/app/components/client/client-product/client-product.component.ts","./src/app/components/depotaraz/depotaraz.component.ts","./src/app/components/depotaraz/depotaraz.component.html","./src/app/directives/bootstrap-toggle.directive.ts","./src/app/services/configuration.service.ts","./src/app/models/DepoAssignmentProductNumberLoading.model.ts","./src/app/components/inventory/inventory.component.ts","./src/app/components/inventory/inventory.component.html","./src/app/components/client/client-contact/client-contact.component.html","./src/app/components/client/client-contact/client-contact.component.ts","./src/app/models/VMSaleSubSendProduct_BarCode.model.ts","./src/app/components/controls/statistics-demo.component.ts","./src/app/components/controls/statistics-demo.component.html","./src/app/models/SaleSubOrders.model.ts","./src/app/models/CashDesk/report-cashier-by-date.model.ts","./src/app/services/auth-guard.service.ts","./src/app/models/DepoAssignmentProduct.model.ts","./src/app/models/VMUpdateSaleSubReceipt.model.ts","./src/app/enums/request-invoice.enum.ts","./src/app/services/Shared.service.ts","./src/app/models/SerialProduct.model.ts","./src/app/directives/number.directive.ts","./src/app/models/SupliesOrderRelationReciept.model.ts","./src/app/components/warehousestore/warehousestore.component.ts","./src/app/components/warehousestore/warehousestore.component.html","./src/app/components/controls/request-invoice-product.component.ts","./src/app/components/controls/request-invoice-product.component.html","./src/app/components/controls/inv-sale.component.ts","./src/app/components/controls/inv-sale.component.html","./src/app/components/controls/goods-info-details.component.ts","./src/app/components/controls/goods-info-details.component.html","./src/app/models/Address.ts","./src/app/components/cash-desk/report-sale-cash-desk/report-sale-cash-desk.component.ts","./src/app/components/cash-desk/report-sale-cash-desk/report-sale-cash-desk.component.html","./src/app/components/controls/roles-management.component.ts","./src/app/components/controls/roles-management.component.html","./src/app/services/notification.service.ts","./src/app/components/sale-receipt-customer/sale-receipt-customer.component.ts","./src/app/components/sale-receipt-customer/sale-receipt-customer.component.html","./src/app/services/utilities.ts","./src/app/directives/autofocus.directive.ts","./src/app/components/barcode-list-modal/barcode-list-modal.component.ts","./src/app/components/barcode-list-modal/barcode-list-modal.component.html","./src/app/models/PubDrivers.model.ts","./src/app/models/SaleLoadingCommand.model.ts","./src/app/services/local-store-manager.service.ts","./src/app/enums/customer-document-status.enum.ts","./src/app/components/car/car.component.ts","./src/app/components/car/car.component.html","./src/app/components/returned/returned.component.ts","./src/app/components/returned/returned.component.html","./src/app/components/previews-print/previews-print.component.ts","./src/app/components/previews-print/previews-print.component.html","./src/app/components/image-uploader/image-uploader.component.ts","./src/app/components/image-uploader/image-uploader.component.html","./src/app/models/SaleCustomer.model.ts","./src/app/services/account-endpoint.service.ts","./src/app/components/client/main-menu/main-menu.component.ts","./src/app/components/client/main-menu/main-menu.component.html","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/components/controls/report-sale-customer-info.component.ts","./src/app/components/controls/report-sale-customer-info.component.html","./src/app/components/controls/returned-info.component.ts","./src/app/components/controls/returned-info.component.html","./src/app/models/InputPricePaymentFormInvoiceSale.model.ts","./src/app/components/address/address.component.ts","./src/app/components/address/address.component.html","./src/app/components/controls/visits-list-info.component.ts","./src/app/components/controls/visits-list-info.component.html","./src/app/models/SalePreInvoiceForContracts.model.ts","./src/app/services/uploader.service .ts","./src/app/models/user.model.ts","./src/app/components/cash-desk/cash-desk-detail/cash-desk-detail.component.ts","./src/app/components/cash-desk/cash-desk-detail/cash-desk-detail.component.html","./src/app/components/sale-receipt-customer/sale-receipt-baratelectronic/sale-receipt-baratelectronic.component.ts","./src/app/components/sale-receipt-customer/sale-receipt-baratelectronic/sale-receipt-baratelectronic.component.html","./src/app/components/client/about-client/about-client.component.ts","./src/app/components/client/about-client/about-client.component.html","./src/app/components/controls/add-return-to-depo.component.ts","./src/app/components/controls/add-return-to-depo.component.html","./src/app/services/base-services/sale-closing-management.service.ts","./src/app/models/sale-pre-invoice/update-check.model.ts","./src/app/components/controls/users-management.component.ts","./src/app/components/controls/users-management.component.html","./src/app/models/VMSalePreInvoiceForContractProduct_BarCode.model.ts","./src/app/services/GlobalConstants.service.ts","./src/app/components/controls/record-personal-information-info.component.ts","./src/app/components/controls/record-personal-information-info.component.html","./src/app/components/login/login.component.ts","./src/app/components/login/login.component.html","./src/app/components/controls/print/print-depo.component.ts","./src/app/components/controls/print/print-depo.component.html","./src/app/services/credit-institution-service/credit-institution.service.ts","./src/app/models/PreInvoiceContract.model.ts","./src/app/models/VMSelectSaleSubSendProduct_BarCode.model.ts","./src/app/models/group.model.ts","./src/app/shared/utilities/custom-paginator.ts","./src/app/components/controls/sale-preinvoice-for-contract-check-info.component.ts","./src/app/components/controls/sale-preinvoice-for-contract-check-info.component.html","./src/app/services/salecustomer-endpoint.service.ts","./src/app/components/controls/inv-info.component.ts","./src/app/components/controls/inv-info.component.html","./src/app/components/client/client-shop-footer/client-shop-footer.component.ts","./src/app/components/client/client-shop-footer/client-shop-footer.component.html","./src/app/components/report/report.component.ts","./src/app/components/report/report.component.html","./src/app/enums/cash-desk-document-type.ts","./src/app/components/controls/inv-Installment.component.ts","./src/app/components/controls/inv-Installment.component.html","./src/app/app.module.ts","./src/app/components/controls/sale-preinvoice-check-detail-modal.component.ts","./src/app/components/controls/sale-preinvoice-check-detail-modal.component.html","./src/app/models/role.model.ts","./src/app/components/controls/goods-info-dealercode.component.ts","./src/app/components/controls/goods-info-dealercode.component.html","./src/app/models/CustomerSalePreInvoice.model.ts","./src/app/components/client/client-shopping-with/client-shopping-with.component.ts","./src/app/components/client/client-shopping-with/client-shopping-with.component.html","./src/app/components/controls/report-sale-info.component.ts","./src/app/components/controls/report-sale-info.component.html","./src/app/assets/images/logo-bill.png","./src/app/services/national-code.service.ts","./src/app/models/PubCar.model.ts","./src/app/components/download-registration/download-registration.component.ts","./src/app/components/download-registration/download-registration.component.html","./src/app/enums/customer-images-name.enum.ts","./src/app/components/lc-form/lc-form.component.ts","./src/app/components/lc-form/lc-form.component.html","./src/app/models/DepoAssignmentProductBarCode.model.ts","./src/app/models/VMSaleSubLoadingCommands_BarCode.model.ts","./src/app/components/controls/send-order-info.component.html","./src/app/components/controls/send-order-info.component.ts","./src/app/services/theme-manager.ts","./src/app/components/controls/driver-info.component.ts","./src/app/components/controls/driver-info.component.html","./src/app/models/VMSalePriceProductInfoForSalePerInvoice.model.ts","./src/app/models/CustomerClub.model.ts","./src/app/models/DepoAssignmentProductDetail.model.ts","./src/app/components/controls/warehousestore-info-barcodes.component.ts","./src/app/components/controls/warehousestore-info-barcodes.component.html","./src/app/services/account.service.ts","./src/app/services/jwt-helper.ts","./src/app/models/utilities/barcode-list.model.ts","./src/app/components/sale-preinvoice-for-contract-check/sale-preinvoice-for-contract-check.component.ts","./src/app/components/sale-preinvoice-for-contract-check/sale-preinvoice-for-contract-check.component.html","./src/app/services/excel.service.ts","./src/app/components/spinner-loading/spinner-loading.component.ts","./src/app/components/spinner-loading/spinner-loading.component.html","./src/app/components/controls/download-registration-info.component.ts","./src/app/components/controls/download-registration-info.component.html","./src/app/components/visits-list/visits-list.component.ts","./src/app/components/visits-list/visits-list.component.html","./src/app/components/client/client-home/client-home.component.ts","./src/app/components/client/client-home/client-home.component.html","./src/app/models/VMDepoAssignmentProductDetail_BarCode.model.ts","./src/app/components/controls/inventory-info/inventory-info.component.ts","./src/app/components/controls/inventory-info/inventory-info.component.html","./src/app/models/VMSaleSubOrders_BarCode.model.ts","./src/app/models/DepoRecieptPermanentDetail.model.ts","./src/app/components/controls/previews-print-info.component.ts","./src/app/components/controls/previews-print-info.component.html","./src/app/services/auth-storage.ts","./src/app/models/Warning.model.ts","./src/app/models/VMSaleNewContractProduct_PrintInvoice.model.ts","./src/app/models/installments.model.ts","./src/app/models/SaleInvoiceDetail.model.ts","./src/app/directives/back-button.directive.ts","./src/app/services/color-settings.ts","./src/app/components/confirm-message/confirm-message.component.ts","./src/app/components/confirm-message/confirm-message.component.html","./src/app/components/price-payment-form/price-payment-form.component.ts","./src/app/components/price-payment-form/price-payment-form.component.html","./src/app/components/reports-marketer/reports-marketer.component.ts","./src/app/components/reports-marketer/reports-marketer.component.html","./src/app/assets/images/logo-header.png","./src/app/directives/last-element.directive.ts","./src/app/models/VMSelectSaleSubLoadingCommand_BarCode.model.ts","./src/app/components/controls/car-info.component.ts","./src/app/components/controls/car-info.component.html","./src/app/services/auth.service.ts","./src/app/services/base-services/customer-club.service.ts","./src/app/components/sale-receipt-customer/sale-receipt-check/sale-receipt-check.component.ts","./src/app/components/sale-receipt-customer/sale-receipt-check/sale-receipt-check.component.html","./src/app/services/receipt-services/sale-sub-receipt.service.ts","./src/app/models/SaleNewContract.model.ts","./src/app/components/sale-closing-managment/sale-closing-managment.component.ts","./src/app/components/sale-closing-managment/sale-closing-managment.component.html","./src/app/components/forgot-password/forgot-password.component.ts","./src/app/components/forgot-password/forgot-password.component.html","./src/app/models/SDCodeClass.model.ts","./src/app/models/SaleSubLoadingCommands.model.ts","./src/app/models/DepoRevertToDepoCustomerDetail.model.ts","./src/app/models/HesabTafzili.model.ts","./src/app/components/controls/website-guide-info.component.ts","./src/app/components/controls/website-guide-info.component.html","./src/app/components/controls/user-info.component.ts","./src/app/components/controls/user-info.component.html","./src/app/components/reference-reports/reference-reports.component.ts","./src/app/components/reference-reports/reference-reports.component.html","./src/app/components/driver/driver.component.ts","./src/app/components/driver/driver.component.html","./src/app/models/VMSelectSubOrder.model.ts","./src/app/components/check-information/check-information.component.ts","./src/app/components/check-information/check-information.component.html","./src/app/components/personal-information/personal-information.component.ts","./src/app/components/personal-information/personal-information.component.html","./src/app/components/visitors-cartable/visitor-detail/visitor-detail.component.ts","./src/app/components/visitors-cartable/visitor-detail/visitor-detail.component.html","./src/app/services/notification-endpoint.service.ts","./src/app/components/client/client-footer/client-footer.component.ts","./src/app/components/client/client-footer/client-footer.component.html","./src/app/models/installment-detail.model.ts","./src/app/components/client/client.component.ts","./src/app/components/client/client.component.html","./src/app/components/client/client-shop-header/client-shop-header.component.ts","./src/app/components/client/client-shop-header/client-shop-header.component.html","./src/app/services/receipt-services/sale-receipt.service.ts","./src/app/models/Adjustments.model.ts","./src/app/directives/decimal-number.directive.ts","./src/app/assets/images/leaflet/visitor-marker-icon.png","./src/app/services/nts-end-point.service.ts","./src/app/models/RequestInvoiceProduct.model.ts","./src/app/models/SaleCustomerImage.model.ts","./src/app/components/barat-electronic-form/barat-electronic-form.component.ts","./src/app/components/barat-electronic-form/barat-electronic-form.component.html","./src/app/components/client/client-home/client-product-list/client-product-list.component.ts","./src/app/components/client/client-home/client-product-list/client-product-list.component.html","./src/app/services/animations.ts","./src/app/components/controls/reports-marketer-info.component.ts","./src/app/components/controls/reports-marketer-info.component.html","./src/app/models/customer-grade.model.ts","./src/app/models/SaleSendProduct.model.ts","./src/app/components/controls/sales-customer.component.ts","./src/app/components/controls/sales-customer.component.html","./src/app/components/client/client-store-finder/client-store-finder.component.ts","./src/app/components/client/client-store-finder/client-store-finder.component.html","./src/app/models/user-login.model.ts","./src/app/components/controls/warehousestore-info-kardex.component.ts","./src/app/components/controls/warehousestore-info-kardex.component.html","./src/app/components/cash-desk/cash-desk.component.ts","./src/app/components/cash-desk/cash-desk.component.html","./src/app/enums/update-sale-sub-receipt-result.ts","./src/app/components/controls/warehousestore-info.component.ts","./src/app/components/controls/warehousestore-info.component.html","./src/app/models/VMSaleNewContract.model.ts","./src/app/app-routing.module.ts","./src/app/directives/bootstrap-tab.directive.ts","./src/app/components/controls/resid-info.component.ts","./src/app/components/controls/resid-info.component.html","./src/app/services/cash-desk-service/cash-desk.service.ts","./src/app/models/DepoRecieptPermanentBarCode.model.ts","./src/app/components/new-password/new-password.component.ts","./src/app/components/new-password/new-password.component.html","./src/app/models/PreInvoice.model.ts","./src/app/models/SaleReceipts/SaleReceipt.model.ts","./src/app/components/send-order/send-order.component.ts","./src/app/components/send-order/send-order.component.html","./src/app/services/nts.service.ts","./src/app/enums/show-upload-page.enum.ts","./src/app/components/customers/customers.component.ts","./src/app/components/customers/customers.component.html","./src/app/models/returnProductDescription.ts","./src/app/components/controls/inv-info-c.component.ts","./src/app/components/controls/inv-info-c.component.html","./src/app/components/controls/user-preferences.component.ts","./src/app/components/controls/user-preferences.component.html","./src/app/components/orders/orders.component.ts","./src/app/components/orders/orders.component.html","./src/app/components/sidebar/sidebar.component.ts","./src/app/components/sidebar/sidebar.component.html","./src/app/components/controls/role-editor.component.ts","./src/app/components/controls/role-editor.component.html","./src/main.ts","./src/app/pipes/group-by.pipe.ts","./$_lazy_route_resource lazy namespace object","./src/app/components/controls/customer-club-list-info.component.ts","./src/app/components/controls/customer-club-list-info.component.html"],"names":[],"mappings":"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oFAAI;QAAA,4DAAK;QACb,sEACE;QAAA,sEAAK;QAAA,yEAA4B;QAAA,oFAAI;QAAA,4DAAI;QAAA,4DAAK;QAC9C,sEAAK;QAAA,yEAAqD;QAAA,oFAAI;QAAA,4DAAI;QAAA,4DAAK;QACvE,sEAAI;QAAA,yEAAkF;QAAA,oFAAI;QAAA,4DAAI;QAAC,4DAAK;QACtG,4DAAK;QACP,4DAAM;QACR,4DAAM;QACR,4DAAM;;QAjFO,0DAAe;QAAf,yIAAe;QAWf,0DAAe;QAAf,yIAAe;QAWf,0DAAe;QAAf,yIAAe;QAWf,0DAAe;QAAf,yIAAe;;;;;;;;;;;;;ACrC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2B;;;;;;;;;;;;ACjSA;AAAA;AAAO,MAAM,kBAAkB;IAC7B,0HAA0H;IAC1H,YAAY,WAAmB,EAAC,OAAe,EAAC,OAAe;QAC7D,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CAKF;;;;;;;;;;;;;ACXD;AAAA;AAAO,MAAM,yBAAyB;IACpC,0HAA0H;IAC1H,YAAY,OAAgB,EAAE,MAAe,EAAE,UAAmB,EAAE,cAAuB,EAAE,WAAoB;QAC/G,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CAQF;;;;;;;;;;;;;AClBD;AAAA;AAAA,gCAAgC;AAChC,6BAA6B;AAC7B,+BAA+B;AAC/B,gCAAgC;AAE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CA,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA,aAAa,OAAO;AACpB;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA,cAAc,SAAS;AACvB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,MAAM;AACrB,eAAe,SAAS;AACxB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,uCAAuC,SAAS;;AAEhD;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,4BAA4B,SAAS;AACrC,4BAA4B,IAAI,8BAA8B,QAAQ;AACtE;AACA;AACA,4BAA4B,SAAS;AACrC,4BAA4B,IAAI,8BAA8B,QAAQ;AACtE;AACA;AACA,4BAA4B,SAAS;AACrC,4BAA4B,IAAI;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,mBAAmB,EAAE;AACjD,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB,eAAe,SAAS;AACxB,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,gBAAgB,2FAA2F;AAC3G;;AAEA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA,uDAAuD,KAAK;AAC5D;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,sDAAsD,EAAE;AACnF;AACA,IAAI;;AAEJ;AACA;AACA;AACA,cAAc,OAAO;AACrB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,MAAM;AACrB,eAAe,SAAS;AACxB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA,+CAA+C,sDAAsD,aAAa,EAAE;AACpH,+CAA+C,wDAAwD,aAAa,EAAE;AACtH;AACA;AACA,6CAA6C,oCAAoC,aAAa,EAAE;AAChG,4DAA4D,gEAAgE,aAAa,EAAE;AAC3I,uCAAuC,yCAAyC,aAAa,EAAE;AAC/F,uCAAuC,uCAAuC,aAAa,EAAE;AAC7F,8BAA8B,qBA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ACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QACN,2EACE;QAAA,2EACE;QAAA,sEACE;QAAA,sEAAI;QAAA,sEAAkD;QAAA,sEAAU;QAAA,4DAAK;QACrE,sEAAI;QAAA,sEAAoD;QAAA,2EAAe;QAAA,4DAAK;QAC5E,0EAAoB;QAAA,sEAAiC;QAAA,0OAAkC;QAAA,4DAAK;QAC9F,4DAAK;QACP,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QAER,4DAAS;;QA1Ca,2DAA+B;QAA/B,oJAA+B;QAC9B,0DAAoB;QAApB,8IAAoB;QAErB,0DAA+B;QAA/B,oJAA+B;QAC9B,0DAA2B;QAA3B,8IAA2B;QAE5B,0DAA+B;QAA/B,oJAA+B;QAC9B,0DAA4B;QAA5B,8IAA4B;QAE7B,0DAA+B;QAA/B,oJAA+B;QAG/B,0DAA+B;QAA/B,oJAA+B;QAG/B,0DAA+B;QAA/B,oJAA+B;QAC9B,0DAAyB;QAAzB,8IAAyB;QAE1B,0DAA+B;QAA/B,oJAA+B;QAC9B,0DAA2B;QAA3B,8IAA2B;;;;;;;;;;;;;ACtClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2B;;;;;;;;;;;;AClRA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyF;AACpC;AAYM;AACsB;;;;;;;;;;;;;;;;;;ICZ3E,yEACE;IAAA,yEAA6B;IAAA,yEAAQ;IAAA,yHAAY;IAAA,4DAAS;IAAC,uDAAY;IAAA,4DAAK;IAC9E,4DAAM;;;IADuD,0DAAY;IAAZ,0FAAY;;;IAMvE,2EAA6C;IAAA,yEAAQ;IAAA,uIAAgB;IAAA,4DAAS;IAAC,uDAAU;IAAA,4DAAO;;;IAAjB,0DAAU;IAAV,wFAAU;;;IACzF,2EAAqD;IAAA,uDAAmB;IAAA,4DAAO;;;IAA1B,0DAAmB;IAAnB,iGA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ChB;AACA;AACmB;AACrB;AACgB;AACU;AACpB;AACU;AACE;AACG;AACL;AACO;AACM;AACA;AACQ;AACvC;AACkB;AAEZ;AACU;AACH;AACe;AACM;AACT;AACN;AACH;AACW;AACG;AACJ;AACY;AACU;AACpB;AACF;AACc;AACA;AACJ;AACF;AACV;AACG;AACH;AACI;AACM;AAClB;AACe;AACN;AACrB;AACsC;AACO;AACI;AACF;AACrB;AAC8B;AACf;AACvB;AACH;AACoB;AACI;AACT;AACI;AACQ;AACN;AACZ;AACA;AACP;AACmB;AACV;AACZ;AACM;AACI;AAC3B;AACK;AACH;AACE;AACU;AACZ;AACI;AACE;AACiB;AACA;AACY;AAChD;AAC6B;AACmB;AAC5B;AAES;AACK;AAEY;AAEF;AACJ;AACtB;AACjB;AAC8D;AACd;AACb;AACmB;AACF;AACG;AACiB;AACJ;AACjC;AACuB;AACG;AACD;AACd;AAE1B;AAEsC;AAEF;AACpC;AAC+B;AAC9B;AACS;AAEd;AACJ;AACM;AACS;AACf;AACE;AACF;AACY;AACK;AACb;AACkD;AACX;AAC3C;AACE;AACA;AACF;AAC4B;AACd;AAEH;AACc;AACuB;AAC7B;AACV;AACN;AACM;AACU;AAEqB;AACa;AAC+B;AACrE;AAClB;AACc;AACa;AAC8B;AACc;AACM;AACjB;AACH;AACN;AACA;AAC6B;AACV;AACL;AACL;AAEf;AACT;AACH;AACM;AACU;AACD;AACN;AACqB;AACJ;AACN;AACD;AAC5C;AAC4F;AACjB;AACV;AAC9B;AACE;AACQ;AACY;AAC5C;AACyC;AACA;AACO;AACH;AACuC;AAC9B;AACd;AACG;AACN;AACL;AACS;AACJ;AACA;AACX;AACA;AACH;AACN;AACrB;AAC0B;AACX;AAC2C;AACD;;;;;;;;;;AA2OrH,MAAM,SAAS;;wFAAT,SAAS,cAFV,uEAAY;4IAEX,SAAS,mBAhCX;QACT,EAAE,OAAO,EAAE,0DAAY,EAAE,QAAQ,EAAE,mEAAe,EAAE;QACpD,EAAE,OAAO,EAAE,gEAAY,EAAE,QAAQ,EAAE,mEA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","file":"main-es2015.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","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","\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n جستجو\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \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 { 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","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","
\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","\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","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","
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\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 { 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","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","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\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 { 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","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","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \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 { 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","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","
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n نوع پرداخت\r\n \r\n نوع پرداخت\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, 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"],"sourceRoot":"webpack:///"}