invoice number

This commit is contained in:
2026-04-04 15:24:29 +03:30
parent b29bf380ce
commit b5d555e9ab
15 changed files with 583 additions and 529 deletions
+9 -10
View File
@@ -8,30 +8,22 @@ import {
} from '../dto/create-order.dto';
import { UserService } from 'src/modules/user/providers/user.service';
import { OrderStatusEnum } from '../interface/order.interface';
import { ProductService } from 'src/modules/product/providers/product.service';
import { ProductRepository } from 'src/modules/product/repositories/product.repository';
import { ChattService } from 'src/modules/chat/providers/chat.service';
import { ChatRepository } from 'src/modules/chat/repositories/chat.repository';
import { AdminRepository } from 'src/modules/admin/repositories/admin.repository';
import { Order } from '../entities/order.entity';
import { PaymentRepository } from 'src/modules/payment/repositories/payment.repository';
import { AdminService } from 'src/modules/admin/providers/admin.service';
import { UpdateOrderAsAdminDto } from '../dto/update-order.dto';
import { FindOrderItemsDto } from '../dto/find-order-items.dto';
import { PermissionService } from 'src/modules/roles/providers/permissions.service';
import { PermissionEnum } from 'src/common/enums/permission.enum';
import { User } from 'src/modules/user/entities/user.entity';
import { Product } from 'src/modules/product/entities/product.entity';
import { Category } from 'src/modules/product/entities/category.entity';
import { InvoiceItem } from 'src/modules/invoice/entities/invoice-item.entity';
import { PaginatedResult } from 'src/common/interfaces/pagination.interface';
import { UpdateStatusAsDesignerDto } from '../dto/update-status-as-designer.dto';
import { UpdateStatusDto } from '../dto/update-status.dto';
import { CreateOrderPrintDto } from '../dto/create-order-print.dto';
import { OrderPrint } from '../entities/print.entity';
import { OrderPrintRepository } from '../repositories/order-print.repository';
import { Request } from 'src/modules/request/entities/request.entity';
import { Invoice } from 'src/modules/invoice/entities/invoice.entity';
import { OrderCreatedEvent } from '../events/order.events';
@Injectable()
export class OrderService {
@@ -43,7 +35,8 @@ export class OrderService {
private readonly userService: UserService,
private readonly adminService: AdminService,
private readonly orderPrintRepository: OrderPrintRepository,
) { }
private readonly eventEmitter: EventEmitter2,
) {}
async createOrderAsAdmin(adminId: string, dto: CreateOrderAsAdminDto): Promise<Order> {
let invoiceItem: null | InvoiceItem = null
@@ -104,6 +97,12 @@ export class OrderService {
});
await this.em.persistAndFlush(order);
this.eventEmitter.emit(
OrderCreatedEvent.name,
new OrderCreatedEvent(order.id, user.id, order.orderNumber),
);
return order;
}