Rebuild order flow: settle after pricing, notifications, and invoice expiry.

Hide prices until admin sends the invoice, enforce status transitions, add customer/admin SMS+in-app notifications, schedule cash invoice reminders, and ship updated dist/prisma-client/deploy-bundle for git-pull deploys.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-09 12:00:13 +03:30
co-authored by Cursor
parent 06e5f48d07
commit d4aaa8e997
102 changed files with 2989 additions and 509 deletions
+6 -1
View File
@@ -22,13 +22,17 @@ export declare class SubmitOrderCheckDto {
}
export declare class SubmitOrderDto {
companyId: string;
settlementType: SettlementType;
settlementType?: SettlementType;
settlementMethod?: SettlementType;
checkMode?: CheckRegistrationMode;
notes?: string;
items: SubmitOrderItemDto[];
checks?: SubmitOrderCheckDto[];
}
export declare class ChooseSettlementDto {
settlementType: SettlementType;
checkMode?: CheckRegistrationMode;
}
export declare class AdminCreateOrderDto {
userId?: string;
customerPhone?: string;
@@ -57,6 +61,7 @@ export declare class UpdateOrderStatusDto {
status: OrderStatus;
note?: string;
reason?: string;
force?: boolean;
}
export declare class UpdateOrderChecksDto {
checks: SubmitOrderCheckDto[];
+23 -1
View File
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.UpdateOrderChecksDto = exports.UpdateOrderStatusDto = exports.UpdateOrderPricingDto = exports.OrderItemPricingDto = exports.AdminCreateOrderDto = exports.SubmitOrderDto = exports.SubmitOrderCheckDto = exports.SubmitOrderItemDto = void 0;
exports.UpdateOrderChecksDto = exports.UpdateOrderStatusDto = exports.UpdateOrderPricingDto = exports.OrderItemPricingDto = exports.AdminCreateOrderDto = exports.ChooseSettlementDto = exports.SubmitOrderDto = exports.SubmitOrderCheckDto = exports.SubmitOrderItemDto = void 0;
const class_validator_1 = require("class-validator");
const class_transformer_1 = require("class-transformer");
const client_1 = require("@prisma/client");
@@ -137,6 +137,7 @@ __decorate([
__metadata("design:type", String)
], SubmitOrderDto.prototype, "companyId", void 0);
__decorate([
(0, class_validator_1.IsOptional)(),
(0, class_validator_1.IsEnum)(client_1.SettlementType),
__metadata("design:type", String)
], SubmitOrderDto.prototype, "settlementType", void 0);
@@ -169,6 +170,20 @@ __decorate([
(0, class_transformer_1.Type)(() => SubmitOrderCheckDto),
__metadata("design:type", Array)
], SubmitOrderDto.prototype, "checks", void 0);
class ChooseSettlementDto {
settlementType;
checkMode;
}
exports.ChooseSettlementDto = ChooseSettlementDto;
__decorate([
(0, class_validator_1.IsEnum)(client_1.SettlementType),
__metadata("design:type", String)
], ChooseSettlementDto.prototype, "settlementType", void 0);
__decorate([
(0, class_validator_1.IsOptional)(),
(0, class_validator_1.IsEnum)(client_1.CheckRegistrationMode),
__metadata("design:type", String)
], ChooseSettlementDto.prototype, "checkMode", void 0);
class AdminCreateOrderDto {
userId;
customerPhone;
@@ -305,6 +320,7 @@ class UpdateOrderStatusDto {
status;
note;
reason;
force;
}
exports.UpdateOrderStatusDto = UpdateOrderStatusDto;
__decorate([
@@ -321,6 +337,12 @@ __decorate([
(0, class_validator_1.IsString)(),
__metadata("design:type", String)
], UpdateOrderStatusDto.prototype, "reason", void 0);
__decorate([
(0, class_validator_1.IsOptional)(),
(0, class_transformer_1.Type)(() => Boolean),
(0, class_validator_1.IsBoolean)(),
__metadata("design:type", Boolean)
], UpdateOrderStatusDto.prototype, "force", void 0);
class UpdateOrderChecksDto {
checks;
checkMode;
+1 -1
View File
File diff suppressed because one or more lines are too long