Đơn hàng công trình
Mục tiêu:
CRM sẽ tạo ra 1 khái niệm "Đơn hàng công trình" mới, phục vụ việc duyệt các đơn hàng đồng bộ từ hệ thống IWM.
Hệ thống CRM chỉ có quyền xem + thay đổi đại ý bán và thầu thợ + duyệt đơn.
Chú ý: Việc chọn tt dựa vào khu vực làm việc
Tên class: ConstructionSaleOrderSaleOrder
| Tên trường | Kiểu biến | Ý nghĩa |
| Id | long | Id đơn hàng |
| Code | string | Mã đơn hàng |
| AppUserCreatorId | long? | Id admin tạo đơn hàng |
| ConstructionId | long | Id công trình mà đơn hàng được tạo |
| ConstructionCustomerId | long | Id kiểu Kh (enum) |
| CustomerId | long? | Id khách hàng |
| CustomerName | string | tên kh |
| CustomerPhone | string | sdt kh |
| CustomerEmail | string | email kh |
| CustomerProvinceId | long? | |
| CustomerDistrictId | long? | |
| CustomerWardId | long? | |
| CustomerAddress | string | |
| BrokerWorkerId | long? | Id KH thầu thợ môi giới |
| WorkerId | long? | Id KH thầu thợ thực hiện đơn |
| CustomerSellId | long? | Id KH đại lý bán hàng |
| PaymentTypeId | long? | Phương thức thanh toán (enum) |
| InformationBonus | decimal? | Phí cung cấp thông tin |
| InstallationBonus | decimal? | Phí cài đặt |
| MaintainBonus | decimal? | Phí bảo hành |
| UseInformationBonus | bool | |
| UseInstallationBonus | bool | |
| UseMaintainBonus | bool | |
| SubTotal | decimal | Giá niêm yết |
| DiscountAmount | decimal? | Chiết khấu |
| Total | decimal | Tổng đơn |
| AssignmentStatusId | long | Trạng thái điều phối (enum) |
| ApprovalStateId | long | Trạng thái duyệt (enum) |
| CreatedAt | datetime | ngày tạo |
| UpdatedAt | datetime | ngày cập nhật cuối |
| DeletedAt | datetime? | ngày xoá |
Tên class: ConstructionSaleOrderContentSaleOrderContent
| Tên trường | Kiểu biến | Ý nghĩa |
| Id | long | |
| long | ||
| ItemId | long | Id sản phẩm |
| Quantity | decimal | Số lượng theo dvt đã chọn |
| UnitOfMeasureId | long | đvt đã chọn |
| RequestedQuantity | decimal | số lượng theo đvt cơ bản của sp |
| PrimaryUnitOfMeasureId | long | dvt cơ bản của sp |
| SalePrice | decimal? | Giá niêm yết |
| RetailPriceNotVAT | decimal | Giá bán chưa thuế |
| RetailPrice | decimal | Giá bán đã thuế |
| Amount | decimal | Tổng giá trị dòng |
| Factor | decimal? | hệ số quy đổi đơn vị tính |
| DiscountAmount | decimal | Chiết khấu dòng |
Các luồng logic chính:
- Đồng bộ đơn hàng từ IWM: Sau khi tạo, cập nhật đơn hàng trên IWM thì sẽ bắn Rabbit qua cho CRM với key SaleOrder.Sync
- Cập nhật thông tin đại lý + thầu thợ thực hiện trên CRM sẽ gọi api /update của thầu thợ để có thể lưu lại lịch sử ( nên viết controller riêng)
- Duyệt/từ chối đơn trên CRM cũng sẽ gọi api /send hoặc /reject của IWM