diff --git a/.env.example b/.env.example index 3258c46..611e1d0 100644 --- a/.env.example +++ b/.env.example @@ -18,8 +18,21 @@ RUN_SEED=false JWT_SECRET=change-me-to-a-long-random-string JWT_EXPIRES_IN=7d -MOCK_OTP_CODE=123456 +MOCK_OTP_CODE=1234 OTP_TTL_MINUTES=5 +# پیامک OTP (مثل آبشده خانگی — rayegansms / createsms) +SMS_ENABLED=true +SMS_API_URL=http://185.231.112.101/api/createsms +SMS_SECRET_KEY=your-sms-secret-key +SMS_PLATFORM=rayegansms +SMS_HOST=پارچه +SMS_APP_NAME=پارچه + +# سقف حجم بدنه JSON (تصاویر چک و رسید base64 هستند) +BODY_LIMIT=25mb +TZ=Asia/Tehran +NODE_ENV=production + NPM_REGISTRY=https://registry.npmmirror.com COMPOSE_BAKE=false diff --git a/Dockerfile b/Dockerfile index a8c91d3..b45d216 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,6 +3,7 @@ FROM node:22-bookworm WORKDIR /app ENV NODE_ENV=production +ENV TZ=Asia/Tehran COPY deploy-bundle.tar.gz /tmp/deploy-bundle.tar.gz RUN tar -xzf /tmp/deploy-bundle.tar.gz -C /app \ diff --git a/Dockerfile.prebuilt b/Dockerfile.prebuilt index 9ad2c6d..e4309b6 100644 --- a/Dockerfile.prebuilt +++ b/Dockerfile.prebuilt @@ -5,6 +5,7 @@ FROM node:22-alpine WORKDIR /app ENV NODE_ENV=production +ENV TZ=Asia/Tehran COPY package.json package-lock.json ./ COPY node_modules ./node_modules diff --git a/README.md b/README.md index 2423dcf..eea03f7 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ RUN_SEED=true docker compose up -d | نقش | ورود | رمز / OTP | |------|------|-----------| | ادمین | `09121112222` | `admin123` | -| مشتری | `09121234567` | OTP: `123456` | +| مشتری | `09121234567` | OTP پیامکی (۴ رقم) — با `SMS_ENABLED=false` کد ثابت: `1234` | ## متغیرهای محیطی @@ -71,8 +71,14 @@ DATABASE_URL=postgresql://fabric:fabric123@localhost:5432/fabric_trade?schema=pu JWT_SECRET=fabric-trade-dev-secret-change-me JWT_EXPIRES_IN=7d PORT=3000 -MOCK_OTP_CODE=123456 +MOCK_OTP_CODE=1234 OTP_TTL_MINUTES=5 +SMS_ENABLED=true +SMS_API_URL=http://185.231.112.101/api/createsms +SMS_SECRET_KEY=... +SMS_PLATFORM=rayegansms +SMS_HOST=پارچه +SMS_APP_NAME=پارچه ``` ## اسکریپت‌ها diff --git a/dist/admin-users/admin-users.service.js b/dist/admin-users/admin-users.service.js index 37e3fc9..ab61892 100644 --- a/dist/admin-users/admin-users.service.js +++ b/dist/admin-users/admin-users.service.js @@ -86,7 +86,8 @@ let AdminUsersService = class AdminUsersService { return this.map(user); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('شماره یا ایمیل تکراری است'); } throw e; @@ -118,7 +119,8 @@ let AdminUsersService = class AdminUsersService { return this.map(user); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('شماره یا ایمیل تکراری است'); } throw e; diff --git a/dist/admin-users/admin-users.service.js.map b/dist/admin-users/admin-users.service.js.map index 8c9f99d..057a9b2 100644 --- a/dist/admin-users/admin-users.service.js.map +++ b/dist/admin-users/admin-users.service.js.map @@ -1 +1 @@ -{"version":3,"file":"admin-users.service.js","sourceRoot":"","sources":["../../src/admin-users/admin-users.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"admin-users.service.js","sourceRoot":"","sources":["../../src/admin-users/admin-users.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/auth/auth.controller.d.ts b/dist/auth/auth.controller.d.ts index 8e48e79..d82fe2d 100644 --- a/dist/auth/auth.controller.d.ts +++ b/dist/auth/auth.controller.d.ts @@ -9,10 +9,10 @@ export declare class AuthController { service: string; }; requestOtp(dto: RequestOtpDto): Promise<{ + debugCode?: string | undefined; success: boolean; message: string; expiresAt: Date; - debugCode: string; }>; verifyOtp(dto: VerifyOtpDto): Promise<{ accessToken: string; diff --git a/dist/auth/auth.module.js b/dist/auth/auth.module.js index 5eea5ed..4555594 100644 --- a/dist/auth/auth.module.js +++ b/dist/auth/auth.module.js @@ -12,17 +12,20 @@ const jwt_1 = require("@nestjs/jwt"); const config_1 = require("@nestjs/config"); const auth_service_1 = require("./auth.service"); const auth_controller_1 = require("./auth.controller"); +const sms_module_1 = require("../sms/sms.module"); +const jwt_secret_1 = require("../common/utils/jwt-secret"); let AuthModule = class AuthModule { }; exports.AuthModule = AuthModule; exports.AuthModule = AuthModule = __decorate([ (0, common_1.Module)({ imports: [ + sms_module_1.SmsModule, jwt_1.JwtModule.registerAsync({ imports: [config_1.ConfigModule], inject: [config_1.ConfigService], useFactory: (config) => ({ - secret: config.get('JWT_SECRET', 'fabric-trade-dev-secret'), + secret: (0, jwt_secret_1.resolveJwtSecret)(config), signOptions: { expiresIn: config.get('JWT_EXPIRES_IN', '7d'), }, diff --git a/dist/auth/auth.module.js.map b/dist/auth/auth.module.js.map index 7445f9b..637d8a2 100644 --- a/dist/auth/auth.module.js.map +++ b/dist/auth/auth.module.js.map @@ -1 +1 @@ -{"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../../src/auth/auth.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qCAAwC;AACxC,2CAA6D;AAC7D,iDAA6C;AAC7C,uDAAmD;AAmB5C,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,gCAAU;qBAAV,UAAU;IAjBtB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,eAAS,CAAC,aAAa,CAAC;gBACtB,OAAO,EAAE,CAAC,qBAAY,CAAC;gBACvB,MAAM,EAAE,CAAC,sBAAa,CAAC;gBACvB,UAAU,EAAE,CAAC,MAAqB,EAAE,EAAE,CAAC,CAAC;oBACtC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAS,YAAY,EAAE,yBAAyB,CAAC;oBACnE,WAAW,EAAE;wBACX,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAiB;qBAC9D;iBACF,CAAC;aACH,CAAC;SACH;QACD,WAAW,EAAE,CAAC,gCAAc,CAAC;QAC7B,SAAS,EAAE,CAAC,0BAAW,CAAC;QACxB,OAAO,EAAE,CAAC,0BAAW,EAAE,eAAS,CAAC;KAClC,CAAC;GACW,UAAU,CAAG"} \ No newline at end of file +{"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../../src/auth/auth.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qCAAwC;AACxC,2CAA6D;AAC7D,iDAA6C;AAC7C,uDAAmD;AACnD,kDAA8C;AAC9C,2DAA8D;AAoBvD,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,gCAAU;qBAAV,UAAU;IAlBtB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,sBAAS;YACT,eAAS,CAAC,aAAa,CAAC;gBACtB,OAAO,EAAE,CAAC,qBAAY,CAAC;gBACvB,MAAM,EAAE,CAAC,sBAAa,CAAC;gBACvB,UAAU,EAAE,CAAC,MAAqB,EAAE,EAAE,CAAC,CAAC;oBACtC,MAAM,EAAE,IAAA,6BAAgB,EAAC,MAAM,CAAC;oBAChC,WAAW,EAAE;wBACX,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC;qBAC9C;iBACF,CAAC;aACH,CAAC;SACH;QACD,WAAW,EAAE,CAAC,gCAAc,CAAC;QAC7B,SAAS,EAAE,CAAC,0BAAW,CAAC;QACxB,OAAO,EAAE,CAAC,0BAAW,EAAE,eAAS,CAAC;KAClC,CAAC;GACW,UAAU,CAAG"} \ No newline at end of file diff --git a/dist/auth/auth.service.d.ts b/dist/auth/auth.service.d.ts index ab1dbac..fa6b057 100644 --- a/dist/auth/auth.service.d.ts +++ b/dist/auth/auth.service.d.ts @@ -1,18 +1,21 @@ import { ConfigService } from '@nestjs/config'; import { JwtService } from '@nestjs/jwt'; import { PrismaService } from '../prisma/prisma.service'; +import { SmsService } from '../sms/sms.service'; import { AdminLoginDto, RequestOtpDto, UpdateProfileDto, VerifyOtpDto } from './dto/auth.dto'; export declare class AuthService { private readonly prisma; private readonly jwt; private readonly config; - constructor(prisma: PrismaService, jwt: JwtService, config: ConfigService); + private readonly sms; + constructor(prisma: PrismaService, jwt: JwtService, config: ConfigService, sms: SmsService); requestOtp(dto: RequestOtpDto): Promise<{ + debugCode?: string | undefined; success: boolean; message: string; expiresAt: Date; - debugCode: string; }>; + private exposesDebugCode; verifyOtp(dto: VerifyOtpDto): Promise<{ accessToken: string; user: { diff --git a/dist/auth/auth.service.js b/dist/auth/auth.service.js index 09ab890..4a2ae16 100644 --- a/dist/auth/auth.service.js +++ b/dist/auth/auth.service.js @@ -46,24 +46,31 @@ exports.AuthService = void 0; const common_1 = require("@nestjs/common"); const config_1 = require("@nestjs/config"); const jwt_1 = require("@nestjs/jwt"); +const node_crypto_1 = require("node:crypto"); const bcrypt = __importStar(require("bcryptjs")); const prisma_service_1 = require("../prisma/prisma.service"); +const sms_service_1 = require("../sms/sms.service"); const phone_1 = require("../common/utils/phone"); +const MAX_OTP_ATTEMPTS = 5; let AuthService = class AuthService { prisma; jwt; config; - constructor(prisma, jwt, config) { + sms; + constructor(prisma, jwt, config, sms) { this.prisma = prisma; this.jwt = jwt; this.config = config; + this.sms = sms; } async requestOtp(dto) { const phone = (0, phone_1.normalizePhone)((0, phone_1.toEnglishDigits)(dto.phone)); if (!(0, phone_1.isValidPhone)(phone)) { throw new common_1.BadRequestException('شماره موبایل نامعتبر است'); } - const existing = await this.prisma.customer.findUnique({ where: { phone } }); + const existing = await this.prisma.customer.findUnique({ + where: { phone }, + }); const isRegister = Boolean(dto.isRegister); if (isRegister) { if (!dto.firstName?.trim() || !dto.lastName?.trim()) { @@ -76,27 +83,49 @@ let AuthService = class AuthService { else if (!existing) { throw new common_1.BadRequestException('کاربری با این شماره یافت نشد'); } - const code = this.config.get('MOCK_OTP_CODE', '123456'); + else if (!existing.isActive) { + throw new common_1.UnauthorizedException('حساب کاربری شما غیرفعال است'); + } + const smsEnabled = this.sms.isEnabled(); + const code = smsEnabled + ? String((0, node_crypto_1.randomInt)(1000, 10000)) + : this.config.get('MOCK_OTP_CODE', '1234'); const ttl = Number(this.config.get('OTP_TTL_MINUTES', 5)); const expiresAt = new Date(Date.now() + ttl * 60_000); - await this.prisma.otpChallenge.deleteMany({ where: { phone } }); - await this.prisma.otpChallenge.create({ - data: { - phone, - code, - firstName: dto.firstName?.trim(), - lastName: dto.lastName?.trim(), - isRegister, - expiresAt, - }, + const challenge = await this.prisma.$transaction(async (tx) => { + await tx.otpChallenge.deleteMany({ where: { phone } }); + return tx.otpChallenge.create({ + data: { + phone, + code, + firstName: dto.firstName?.trim(), + lastName: dto.lastName?.trim(), + isRegister, + expiresAt, + }, + }); }); + if (smsEnabled) { + const sent = await this.sms.send(phone, this.sms.buildOtpMessage(code)); + if (!sent.success) { + await this.prisma.otpChallenge.deleteMany({ + where: { id: challenge.id }, + }); + throw new common_1.ServiceUnavailableException('ارسال پیامک با خطا مواجه شد؛ دوباره تلاش کنید'); + } + } return { success: true, message: 'کد تأیید ارسال شد', expiresAt, - debugCode: code, + ...(this.exposesDebugCode(smsEnabled) ? { debugCode: code } : {}), }; } + exposesDebugCode(smsEnabled) { + if (smsEnabled) + return false; + return this.config.get('NODE_ENV') !== 'production'; + } async verifyOtp(dto) { const phone = (0, phone_1.normalizePhone)((0, phone_1.toEnglishDigits)(dto.phone)); const code = (0, phone_1.toEnglishDigits)(dto.code).trim(); @@ -107,7 +136,15 @@ let AuthService = class AuthService { if (!challenge || challenge.expiresAt < new Date()) { throw new common_1.UnauthorizedException('کد منقضی شده است'); } + if (challenge.attempts >= MAX_OTP_ATTEMPTS) { + await this.prisma.otpChallenge.deleteMany({ where: { phone } }); + throw new common_1.UnauthorizedException('تعداد تلاش‌های نادرست زیاد است؛ کد جدید بگیرید'); + } if (challenge.code !== code) { + await this.prisma.otpChallenge.update({ + where: { id: challenge.id }, + data: { attempts: { increment: 1 } }, + }); throw new common_1.UnauthorizedException('کد تأیید نادرست است'); } let user = await this.prisma.customer.findUnique({ where: { phone } }); @@ -126,6 +163,9 @@ let AuthService = class AuthService { else if (!user) { throw new common_1.UnauthorizedException('کاربر یافت نشد'); } + else if (!user.isActive) { + throw new common_1.UnauthorizedException('حساب کاربری شما غیرفعال است'); + } await this.prisma.otpChallenge.deleteMany({ where: { phone } }); const accessToken = await this.signCustomerToken(user.id, user.phone); return { @@ -166,7 +206,9 @@ let AuthService = class AuthService { } async me(userId, type) { if (type === 'admin') { - const admin = await this.prisma.adminUser.findUnique({ where: { id: userId } }); + const admin = await this.prisma.adminUser.findUnique({ + where: { id: userId }, + }); if (!admin) throw new common_1.UnauthorizedException(); return { @@ -177,7 +219,9 @@ let AuthService = class AuthService { role: admin.role, }; } - const user = await this.prisma.customer.findUnique({ where: { id: userId } }); + const user = await this.prisma.customer.findUnique({ + where: { id: userId }, + }); if (!user) throw new common_1.UnauthorizedException(); return this.mapCustomer(user); @@ -216,6 +260,7 @@ exports.AuthService = AuthService = __decorate([ (0, common_1.Injectable)(), __metadata("design:paramtypes", [prisma_service_1.PrismaService, jwt_1.JwtService, - config_1.ConfigService]) + config_1.ConfigService, + sms_service_1.SmsService]) ], AuthService); //# sourceMappingURL=auth.service.js.map \ No newline at end of file diff --git a/dist/auth/auth.service.js.map b/dist/auth/auth.service.js.map index 23665b6..901434c 100644 --- a/dist/auth/auth.service.js.map +++ b/dist/auth/auth.service.js.map @@ -1 +1 @@ -{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../src/auth/auth.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAIwB;AACxB,2CAA+C;AAC/C,qCAAyC;AACzC,iDAAmC;AACnC,6DAAyD;AAOzD,iDAAsF;AAG/E,IAAM,WAAW,GAAjB,MAAM,WAAW;IAEH;IACA;IACA;IAHnB,YACmB,MAAqB,EACrB,GAAe,EACf,MAAqB;QAFrB,WAAM,GAAN,MAAM,CAAe;QACrB,QAAG,GAAH,GAAG,CAAY;QACf,WAAM,GAAN,MAAM,CAAe;IACrC,CAAC;IAEJ,KAAK,CAAC,UAAU,CAAC,GAAkB;QACjC,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;gBACpD,MAAM,IAAI,4BAAmB,CAAC,+BAA+B,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,4BAAmB,CAAC,6BAA6B,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,4BAAmB,CAAC,8BAA8B,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAS,eAAe,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC;QAEtD,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;YACpC,IAAI,EAAE;gBACJ,KAAK;gBACL,IAAI;gBACJ,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE;gBAChC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE;gBAC9B,UAAU;gBACV,SAAS;aACV;SACF,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,mBAAmB;YAC5B,SAAS;YAET,SAAS,EAAE,IAAI;SAChB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAiB;QAC/B,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,IAAA,uBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAE9C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;YACzD,KAAK,EAAE,EAAE,KAAK,EAAE;YAChB,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAC/B,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;YACnD,MAAM,IAAI,8BAAqB,CAAC,kBAAkB,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,8BAAqB,CAAC,qBAAqB,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACvE,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YACzB,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,IAAI,4BAAmB,CAAC,6BAA6B,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE;oBACJ,KAAK;oBACL,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,OAAO;oBACzC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,MAAM;iBACvC;aACF,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,8BAAqB,CAAC,gBAAgB,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAEhE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO;YACL,WAAW;YACX,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;SAC7B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAkB;QACjC,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,8BAAqB,CAAC,mCAAmC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,8BAAqB,CAAC,mCAAmC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YACjC,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;YACvB,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE;SAClC,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAC3C,GAAG,EAAE,KAAK,CAAC,EAAE;YACb,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QAEH,OAAO;YACL,WAAW;YACX,IAAI,EAAE;gBACJ,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,MAAc,EAAE,IAA0B;QACjD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,8BAAqB,EAAE,CAAC;YAC9C,OAAO;gBACL,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9E,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,8BAAqB,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,GAAqB;QACvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC7C,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACrB,IAAI,EAAE;gBACJ,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE;gBAChC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE;gBAC9B,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,IAAI;aAC3C;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,KAAa;QACvD,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YACxB,GAAG,EAAE,EAAE;YACP,IAAI,EAAE,UAAU;YAChB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,IAOnB;QACC,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;YACxC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;SACxC,CAAC;IACJ,CAAC;CACF,CAAA;AAxLY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAGgB,8BAAa;QAChB,gBAAU;QACP,sBAAa;GAJ7B,WAAW,CAwLvB"} \ No newline at end of file +{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../src/auth/auth.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAKwB;AACxB,2CAA+C;AAC/C,qCAAyC;AACzC,6CAAwC;AACxC,iDAAmC;AACnC,6DAAyD;AACzD,oDAAgD;AAOhD,iDAI+B;AAE/B,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAGpB,IAAM,WAAW,GAAjB,MAAM,WAAW;IAEH;IACA;IACA;IACA;IAJnB,YACmB,MAAqB,EACrB,GAAe,EACf,MAAqB,EACrB,GAAe;QAHf,WAAM,GAAN,MAAM,CAAe;QACrB,QAAG,GAAH,GAAG,CAAY;QACf,WAAM,GAAN,MAAM,CAAe;QACrB,QAAG,GAAH,GAAG,CAAY;IAC/B,CAAC;IAEJ,KAAK,CAAC,UAAU,CAAC,GAAkB;QACjC,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;YACrD,KAAK,EAAE,EAAE,KAAK,EAAE;SACjB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;gBACpD,MAAM,IAAI,4BAAmB,CAAC,+BAA+B,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,4BAAmB,CAAC,6BAA6B,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,4BAAmB,CAAC,8BAA8B,CAAC,CAAC;QAChE,CAAC;aAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,8BAAqB,CAAC,6BAA6B,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,UAAU;YACrB,CAAC,CAAC,MAAM,CAAC,IAAA,uBAAS,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAS,eAAe,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC;QAEtD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAC5D,MAAM,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACvD,OAAO,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;gBAC5B,IAAI,EAAE;oBACJ,KAAK;oBACL,IAAI;oBACJ,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE;oBAChC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE;oBAC9B,UAAU;oBACV,SAAS;iBACV;aACF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YACxE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAElB,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;oBACxC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE;iBAC5B,CAAC,CAAC;gBACH,MAAM,IAAI,oCAA2B,CACnC,+CAA+C,CAChD,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,mBAAmB;YAC5B,SAAS;YACT,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC;IACJ,CAAC;IAGO,gBAAgB,CAAC,UAAmB;QAC1C,IAAI,UAAU;YAAE,OAAO,KAAK,CAAC;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAS,UAAU,CAAC,KAAK,YAAY,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAiB;QAC/B,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,IAAA,uBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAE9C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;YACzD,KAAK,EAAE,EAAE,KAAK,EAAE;YAChB,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAC/B,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;YACnD,MAAM,IAAI,8BAAqB,CAAC,kBAAkB,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,IAAI,gBAAgB,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAChE,MAAM,IAAI,8BAAqB,CAC7B,gDAAgD,CACjD,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;gBACpC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE;gBAC3B,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;aACrC,CAAC,CAAC;YACH,MAAM,IAAI,8BAAqB,CAAC,qBAAqB,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACvE,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YACzB,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,IAAI,4BAAmB,CAAC,6BAA6B,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE;oBACJ,KAAK;oBACL,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,OAAO;oBACzC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,MAAM;iBACvC;aACF,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,8BAAqB,CAAC,gBAAgB,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,MAAM,IAAI,8BAAqB,CAAC,6BAA6B,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAEhE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO;YACL,WAAW;YACX,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;SAC7B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAkB;QACjC,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,8BAAqB,CAAC,mCAAmC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,8BAAqB,CAAC,mCAAmC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YACjC,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;YACvB,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE;SAClC,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAC3C,GAAG,EAAE,KAAK,CAAC,EAAE;YACb,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QAEH,OAAO;YACL,WAAW;YACX,IAAI,EAAE;gBACJ,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,MAAc,EAAE,IAA0B;QACjD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC;gBACnD,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;aACtB,CAAC,CAAC;YACH,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,8BAAqB,EAAE,CAAC;YAC9C,OAAO;gBACL,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,8BAAqB,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,GAAqB;QACvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC7C,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACrB,IAAI,EAAE;gBACJ,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE;gBAChC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE;gBAC9B,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,IAAI;aAC3C;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,KAAa;QACvD,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YACxB,GAAG,EAAE,EAAE;YACP,IAAI,EAAE,UAAU;YAChB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,IAOnB;QACC,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;YACxC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;SACxC,CAAC;IACJ,CAAC;CACF,CAAA;AApOY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAGgB,8BAAa;QAChB,gBAAU;QACP,sBAAa;QAChB,wBAAU;GALvB,WAAW,CAoOvB"} \ No newline at end of file diff --git a/dist/auth/dto/auth.dto.js b/dist/auth/dto/auth.dto.js index 2792379..a3a46b2 100644 --- a/dist/auth/dto/auth.dto.js +++ b/dist/auth/dto/auth.dto.js @@ -48,7 +48,7 @@ __decorate([ ], VerifyOtpDto.prototype, "phone", void 0); __decorate([ (0, class_validator_1.IsString)(), - (0, class_validator_1.MinLength)(4), + (0, class_validator_1.Length)(4, 4), __metadata("design:type", String) ], VerifyOtpDto.prototype, "code", void 0); class AdminLoginDto { diff --git a/dist/auth/dto/auth.dto.js.map b/dist/auth/dto/auth.dto.js.map index c5b34da..27be204 100644 --- a/dist/auth/dto/auth.dto.js.map +++ b/dist/auth/dto/auth.dto.js.map @@ -1 +1 @@ -{"version":3,"file":"auth.dto.js","sourceRoot":"","sources":["../../../src/auth/dto/auth.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA6E;AAE7E,MAAa,aAAa;IAExB,KAAK,CAAU;IAIf,SAAS,CAAU;IAInB,QAAQ,CAAU;IAIlB,UAAU,CAAW;CACtB;AAfD,sCAeC;AAbC;IADC,IAAA,0BAAQ,GAAE;;4CACI;AAIf;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gDACQ;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+CACO;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;iDACS;AAGvB,MAAa,YAAY;IAEvB,KAAK,CAAU;IAIf,IAAI,CAAU;CACf;AAPD,oCAOC;AALC;IADC,IAAA,0BAAQ,GAAE;;2CACI;AAIf;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,CAAC,CAAC;;0CACC;AAGhB,MAAa,aAAa;IAExB,KAAK,CAAU;IAIf,QAAQ,CAAU;CACnB;AAPD,sCAOC;AALC;IADC,IAAA,0BAAQ,GAAE;;4CACI;AAIf;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,CAAC,CAAC;;+CACK;AAGpB,MAAa,gBAAgB;IAG3B,SAAS,CAAU;IAInB,QAAQ,CAAU;IAIlB,UAAU,CAAU;CACrB;AAZD,4CAYC;AATC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mDACQ;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;kDACO;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oDACS"} \ No newline at end of file +{"version":3,"file":"auth.dto.js","sourceRoot":"","sources":["../../../src/auth/dto/auth.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAMyB;AAEzB,MAAa,aAAa;IAExB,KAAK,CAAU;IAIf,SAAS,CAAU;IAInB,QAAQ,CAAU;IAIlB,UAAU,CAAW;CACtB;AAfD,sCAeC;AAbC;IADC,IAAA,0BAAQ,GAAE;;4CACI;AAIf;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gDACQ;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+CACO;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;iDACS;AAGvB,MAAa,YAAY;IAEvB,KAAK,CAAU;IAIf,IAAI,CAAU;CACf;AAPD,oCAOC;AALC;IADC,IAAA,0BAAQ,GAAE;;2CACI;AAIf;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,wBAAM,EAAC,CAAC,EAAE,CAAC,CAAC;;0CACC;AAGhB,MAAa,aAAa;IAExB,KAAK,CAAU;IAIf,QAAQ,CAAU;CACnB;AAPD,sCAOC;AALC;IADC,IAAA,0BAAQ,GAAE;;4CACI;AAIf;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,CAAC,CAAC;;+CACK;AAGpB,MAAa,gBAAgB;IAG3B,SAAS,CAAU;IAInB,QAAQ,CAAU;IAIlB,UAAU,CAAU;CACrB;AAZD,4CAYC;AATC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mDACQ;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;kDACO;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oDACS"} \ No newline at end of file diff --git a/dist/carts/carts.controller.js.map b/dist/carts/carts.controller.js.map index da9c566..741380b 100644 --- a/dist/carts/carts.controller.js.map +++ b/dist/carts/carts.controller.js.map @@ -1 +1 @@ -{"version":3,"file":"carts.controller.js","sourceRoot":"","sources":["../../src/carts/carts.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAQwB;AACxB,mDAA+C;AAC/C,0EAAgE;AAChE,wFAA0E;AAE1E,6CAIwB;AAIjB,IAAM,eAAe,GAArB,MAAM,eAAe;IACG;IAA7B,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAG3D,OAAO,CAAgB,IAAmB;QACxC,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAGD,OAAO,CACU,IAAmB,EAC1B,GAAmB;QAE3B,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAGD,UAAU,CACO,IAAmB,EACjB,MAAc,EACvB,GAA8B;QAEtC,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IAGD,UAAU,CACO,IAAmB,EACjB,MAAc;QAE/B,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAGD,WAAW,CACM,IAAmB,EAC1B,GAAuB;QAE/B,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAGD,KAAK,CAAgB,IAAmB;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;CACF,CAAA;AA7CY,0CAAe;AAI1B;IADC,IAAA,YAAG,GAAE;IACG,WAAA,IAAA,oCAAW,GAAE,CAAA;;;;8CAErB;AAGD;IADC,IAAA,aAAI,EAAC,OAAO,CAAC;IAEX,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,yBAAc;;8CAG5B;AAGD;IADC,IAAA,cAAK,EAAC,eAAe,CAAC;IAEpB,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,aAAI,GAAE,CAAA;;qDAAM,oCAAyB;;iDAGvC;AAGD;IADC,IAAA,eAAM,EAAC,eAAe,CAAC;IAErB,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;iDAGjB;AAGD;IADC,IAAA,cAAK,EAAC,OAAO,CAAC;IAEZ,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,6BAAkB;;kDAGhC;AAGD;IADC,IAAA,eAAM,GAAE;IACF,WAAA,IAAA,oCAAW,GAAE,CAAA;;;;4CAEnB;0BA5CU,eAAe;IAF3B,IAAA,mBAAU,EAAC,OAAO,CAAC;IACnB,IAAA,0BAAQ,EAAC,UAAU,CAAC;qCAEwB,4BAAY;GAD5C,eAAe,CA6C3B"} \ No newline at end of file +{"version":3,"file":"carts.controller.js","sourceRoot":"","sources":["../../src/carts/carts.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAQwB;AACxB,mDAA+C;AAC/C,0EAAgE;AAChE,wFAA0E;AAE1E,6CAIwB;AAIjB,IAAM,eAAe,GAArB,MAAM,eAAe;IACG;IAA7B,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAG3D,OAAO,CAAgB,IAAmB;QACxC,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAGD,OAAO,CAAgB,IAAmB,EAAU,GAAmB;QACrE,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAGD,UAAU,CACO,IAAmB,EACjB,MAAc,EACvB,GAA8B;QAEtC,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IAGD,UAAU,CACO,IAAmB,EACjB,MAAc;QAE/B,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAGD,WAAW,CACM,IAAmB,EAC1B,GAAuB;QAE/B,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAGD,KAAK,CAAgB,IAAmB;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;CACF,CAAA;AA1CY,0CAAe;AAI1B;IADC,IAAA,YAAG,GAAE;IACG,WAAA,IAAA,oCAAW,GAAE,CAAA;;;;8CAErB;AAGD;IADC,IAAA,aAAI,EAAC,OAAO,CAAC;IACL,WAAA,IAAA,oCAAW,GAAE,CAAA;IAAuB,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,yBAAc;;8CAEtE;AAGD;IADC,IAAA,cAAK,EAAC,eAAe,CAAC;IAEpB,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,aAAI,GAAE,CAAA;;qDAAM,oCAAyB;;iDAGvC;AAGD;IADC,IAAA,eAAM,EAAC,eAAe,CAAC;IAErB,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;iDAGjB;AAGD;IADC,IAAA,cAAK,EAAC,OAAO,CAAC;IAEZ,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,6BAAkB;;kDAGhC;AAGD;IADC,IAAA,eAAM,GAAE;IACF,WAAA,IAAA,oCAAW,GAAE,CAAA;;;;4CAEnB;0BAzCU,eAAe;IAF3B,IAAA,mBAAU,EAAC,OAAO,CAAC;IACnB,IAAA,0BAAQ,EAAC,UAAU,CAAC;qCAEwB,4BAAY;GAD5C,eAAe,CA0C3B"} \ No newline at end of file diff --git a/dist/carts/carts.service.js.map b/dist/carts/carts.service.js.map index 6b8af69..0ba2995 100644 --- a/dist/carts/carts.service.js.map +++ b/dist/carts/carts.service.js.map @@ -1 +1 @@ -{"version":3,"file":"carts.service.js","sourceRoot":"","sources":["../../src/carts/carts.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"carts.service.js","sourceRoot":"","sources":["../../src/carts/carts.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAIwB;AACxB,6DAAyD;AAQlD,IAAM,YAAY,GAAlB,MAAM,YAAY;IACM;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,KAAK,CAAC,OAAO,CAAC,MAAc;QAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,GAAmB;QAC/C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE;YAC5B,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,IAAI;aACd;SACF,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;YACrD,KAAK,EAAE;gBACL,gBAAgB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;aAC7D;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;YACrD,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAC5C,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAChC,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE;gBAC1B,IAAI,EAAE;oBACJ,QAAQ,EAAE,WAAW;oBACrB,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC,KAAK;oBAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B;aACF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE;oBACJ,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;oBACjC,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;oBAChC,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;iBAClC;aACF,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,IAAI,EAAE;gBACJ,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,UAAU,CACd,MAAc,EACd,MAAc,EACd,GAA8B;QAE9B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;YAChD,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;YACtC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,0BAAiB,CAAC,mBAAmB,CAAC,CAAC;QAC5D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAChC,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACrB,IAAI,EAAE;gBACJ,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;aACvE;SACF,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE;SAChC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,MAAc;QAC7C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;YAChD,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,0BAAiB,CAAC,mBAAmB,CAAC,CAAC;QAE5D,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE;SAChC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,GAAuB;QACvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;SAC3C,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtE,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;SACvC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAEO,gBAAgB,CACtB,OAAuE,EACvE,QAAgB;QAEhB,IAAI,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;YACnC,MAAM,IAAI,4BAAmB,CAC3B,oBAAoB,OAAO,CAAC,IAAI,UAAU,OAAO,CAAC,WAAW,MAAM,CACpE,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3E,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3C,MAAM,IAAI,4BAAmB,CAC3B,mBAAmB,OAAO,CAAC,eAAe,OAAO,CAClD,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,MAAc;QACrC,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE;YACjB,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;gBACnC,IAAI,EAAE,EAAE,MAAM,EAAE;gBAChB,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;aACzB,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,OAAO,CAAC,IAoBf;QACC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC;QAC/C,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS;YACrD,WAAW,EAAE,WAAW,IAAI,EAAE;YAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;YAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/B,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;gBACtC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;gBAC9B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;YACH,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7D,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YAC5B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YACvC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;SACxC,CAAC;IACJ,CAAC;CACF,CAAA;AAjNY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAE0B,8BAAa;GADvC,YAAY,CAiNxB"} \ No newline at end of file diff --git a/dist/cash-payments/cash-payments.service.js b/dist/cash-payments/cash-payments.service.js index 81bfebf..6c96eee 100644 --- a/dist/cash-payments/cash-payments.service.js +++ b/dist/cash-payments/cash-payments.service.js @@ -14,6 +14,18 @@ const common_1 = require("@nestjs/common"); const client_1 = require("@prisma/client"); const prisma_service_1 = require("../prisma/prisma.service"); const name_1 = require("../common/utils/name"); +const RECEIPT_SUBMITTABLE_STATUSES = [ + client_1.OrderStatus.awaiting_review, + client_1.OrderStatus.pricing, + client_1.OrderStatus.needs_correction, + client_1.OrderStatus.awaiting_settlement, + client_1.OrderStatus.awaiting_settlement_fix, + client_1.OrderStatus.cash_in_progress, + client_1.OrderStatus.cash_invoice_issued, + client_1.OrderStatus.awaiting_cash_payment, + client_1.OrderStatus.cash_payment_submitted, + client_1.OrderStatus.awaiting_cash_confirmation, +]; let CashPaymentsService = class CashPaymentsService { prisma; constructor(prisma) { @@ -32,6 +44,9 @@ let CashPaymentsService = class CashPaymentsService { if (order.settlementType !== client_1.SettlementType.cash) { throw new common_1.BadRequestException('این سفارش تسویه نقدی نیست'); } + if (!RECEIPT_SUBMITTABLE_STATUSES.includes(order.status)) { + throw new common_1.BadRequestException('در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد'); + } if (order.cashInvoiceExpiresAt && order.cashInvoiceExpiresAt.getTime() < Date.now()) { throw new common_1.BadRequestException('مهلت پرداخت فاکتور نقدی به پایان رسیده است'); diff --git a/dist/cash-payments/cash-payments.service.js.map b/dist/cash-payments/cash-payments.service.js.map index ece4080..19ae643 100644 --- a/dist/cash-payments/cash-payments.service.js.map +++ b/dist/cash-payments/cash-payments.service.js.map @@ -1 +1 @@ -{"version":3,"file":"cash-payments.service.js","sourceRoot":"","sources":["../../src/cash-payments/cash-payments.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"cash-payments.service.js","sourceRoot":"","sources":["../../src/cash-payments/cash-payments.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/catalogs/catalogs.service.js b/dist/catalogs/catalogs.service.js index bffb672..dd949cc 100644 --- a/dist/catalogs/catalogs.service.js +++ b/dist/catalogs/catalogs.service.js @@ -68,7 +68,8 @@ let CatalogsService = class CatalogsService { return this.map(catalog); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('کد کاتالوگ در این شرکت تکراری است'); } throw e; @@ -96,7 +97,8 @@ let CatalogsService = class CatalogsService { return this.map(catalog); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('کد کاتالوگ در این شرکت تکراری است'); } throw e; diff --git a/dist/catalogs/catalogs.service.js.map b/dist/catalogs/catalogs.service.js.map index 580804d..c081bab 100644 --- a/dist/catalogs/catalogs.service.js.map +++ b/dist/catalogs/catalogs.service.js.map @@ -1 +1 @@ -{"version":3,"file":"catalogs.service.js","sourceRoot":"","sources":["../../src/catalogs/catalogs.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAIwB;AACxB,2CAAwC;AACxC,6DAAyD;AAIlD,IAAM,eAAe,GAArB,MAAM,eAAe;IACG;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,KAAK,CAAC,OAAO,CAAC,SAAkB,EAAE,UAAU,GAAG,KAAK;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClD,KAAK,EAAE;gBACL,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1C;YACD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;YACnD,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACnC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;aACvC;SACF,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACnC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;aACvC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,0BAAiB,CAAC,kBAAkB,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAqB;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE;SAC7B,CAAC,CAAC;QACH,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,0BAAiB,CAAC,eAAe,CAAC,CAAC;QAE3D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC/C,IAAI,EAAE;oBACJ,SAAS,EAAE,GAAG,CAAC,SAAS;oBACxB,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACrB,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACrB,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI;oBAC5C,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC;oBACnC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;iBAC/B;gBACD,OAAO,EAAE;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;oBACnC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;iBACvC;aACF,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,eAAM,CAAC,6BAA6B,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC5E,MAAM,IAAI,0BAAiB,CAAC,mCAAmC,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,GAAqB;QAC5C,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC/C,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,IAAI,EAAE;oBACJ,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE;oBACtB,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE;oBACtB,WAAW,EACT,GAAG,CAAC,WAAW,KAAK,SAAS;wBAC3B,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI;oBACrC,YAAY,EAAE,GAAG,CAAC,YAAY;oBAC9B,QAAQ,EAAE,GAAG,CAAC,QAAQ;iBACvB;gBACD,OAAO,EAAE;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;oBACnC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;iBACvC;aACF,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,eAAM,CAAC,6BAA6B,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC5E,MAAM,IAAI,0BAAiB,CAAC,mCAAmC,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,QAAiB;QAC3C,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;YAC/C,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,EAAE,QAAQ,EAAE;YAClB,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACnC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;aACvC;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,EAAU;QAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,0BAAiB,CAAC,kBAAkB,CAAC,CAAC;QAC9D,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,GAAG,CAAC,OAYX;QACC,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;YACjC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;YAC7C,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;YACrC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;SAC3C,CAAC;IACJ,CAAC;CACF,CAAA;AAvIY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;qCAE0B,8BAAa;GADvC,eAAe,CAuI3B"} \ No newline at end of file +{"version":3,"file":"catalogs.service.js","sourceRoot":"","sources":["../../src/catalogs/catalogs.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/checks/checks.service.js b/dist/checks/checks.service.js index 13ab3d5..634dace 100644 --- a/dist/checks/checks.service.js +++ b/dist/checks/checks.service.js @@ -19,7 +19,9 @@ let ChecksService = class ChecksService { this.prisma = prisma; } async findByOrder(orderId) { - const order = await this.prisma.order.findUnique({ where: { id: orderId } }); + const order = await this.prisma.order.findUnique({ + where: { id: orderId }, + }); if (!order) throw new common_1.NotFoundException('سفارش یافت نشد'); const checks = await this.prisma.check.findMany({ @@ -45,7 +47,9 @@ let ChecksService = class ChecksService { : check.notes, }, }); - const siblings = await tx.check.findMany({ where: { orderId: check.orderId } }); + const siblings = await tx.check.findMany({ + where: { orderId: check.orderId }, + }); const allApproved = siblings.every((c) => c.status === client_1.CheckStatus.approved); const anyRejected = siblings.some((c) => c.status === client_1.CheckStatus.rejected); let nextStatus = null; diff --git a/dist/checks/checks.service.js.map b/dist/checks/checks.service.js.map index e8337d2..d4347c8 100644 --- a/dist/checks/checks.service.js.map +++ b/dist/checks/checks.service.js.map @@ -1 +1 @@ -{"version":3,"file":"checks.service.js","sourceRoot":"","sources":["../../src/checks/checks.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"checks.service.js","sourceRoot":"","sources":["../../src/checks/checks.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/common/decorators/current-user.decorator.js.map b/dist/common/decorators/current-user.decorator.js.map index 2b37eec..be2d386 100644 --- a/dist/common/decorators/current-user.decorator.js.map +++ b/dist/common/decorators/current-user.decorator.js.map @@ -1 +1 @@ -{"version":3,"file":"current-user.decorator.js","sourceRoot":"","sources":["../../../src/common/decorators/current-user.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAAwE;AAS3D,QAAA,WAAW,GAAG,IAAA,6BAAoB,EAC7C,CAAC,KAAc,EAAE,GAAqB,EAAiB,EAAE;IACvD,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;IAChD,OAAO,OAAO,CAAC,IAAI,CAAC;AACtB,CAAC,CACF,CAAC"} \ No newline at end of file +{"version":3,"file":"current-user.decorator.js","sourceRoot":"","sources":["../../../src/common/decorators/current-user.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAAwE;AAS3D,QAAA,WAAW,GAAG,IAAA,6BAAoB,EAC7C,CAAC,KAAc,EAAE,GAAqB,EAAiB,EAAE;IACvD,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAA2B,CAAC;IACzE,OAAO,OAAO,CAAC,IAAI,CAAC;AACtB,CAAC,CACF,CAAC"} \ No newline at end of file diff --git a/dist/common/guards/jwt-auth.guard.js b/dist/common/guards/jwt-auth.guard.js index 07f257e..eb59176 100644 --- a/dist/common/guards/jwt-auth.guard.js +++ b/dist/common/guards/jwt-auth.guard.js @@ -15,6 +15,7 @@ const core_1 = require("@nestjs/core"); const jwt_1 = require("@nestjs/jwt"); const config_1 = require("@nestjs/config"); const auth_decorators_1 = require("../decorators/auth.decorators"); +const jwt_secret_1 = require("../utils/jwt-secret"); let JwtAuthGuard = class JwtAuthGuard { reflector; jwtService; @@ -40,7 +41,7 @@ let JwtAuthGuard = class JwtAuthGuard { let payload; try { payload = await this.jwtService.verifyAsync(token, { - secret: this.config.get('JWT_SECRET'), + secret: (0, jwt_secret_1.resolveJwtSecret)(this.config), }); } catch { diff --git a/dist/common/guards/jwt-auth.guard.js.map b/dist/common/guards/jwt-auth.guard.js.map index 0390e3c..5b69cb1 100644 --- a/dist/common/guards/jwt-auth.guard.js.map +++ b/dist/common/guards/jwt-auth.guard.js.map @@ -1 +1 @@ -{"version":3,"file":"jwt-auth.guard.js","sourceRoot":"","sources":["../../../src/common/guards/jwt-auth.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAMwB;AACxB,uCAAyC;AACzC,qCAAyC;AACzC,2CAA+C;AAC/C,mEAIuC;AAIhC,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEJ;IACA;IACA;IAHnB,YACmB,SAAoB,EACpB,UAAsB,EACtB,MAAqB;QAFrB,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAY;QACtB,WAAM,GAAN,MAAM,CAAe;IACrC,CAAC;IAEJ,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAU,+BAAa,EAAE;YACxE,OAAO,CAAC,UAAU,EAAE;YACpB,OAAO,CAAC,QAAQ,EAAE;SACnB,CAAC,CAAC;QACH,IAAI,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE1B,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,aAAmC,CAAC;QACvE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,8BAAqB,CAAC,4BAA4B,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,OAAyC,CAAC;QAC9C,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE;gBACjD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAS,YAAY,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,8BAAqB,CAAC,+BAA+B,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,IAAI,GAAkB;YAC1B,EAAE,EAAE,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE;YAC7B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;QACF,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAC/C,+BAAa,EACb,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAC3C,CAAC;QACF,IAAI,QAAQ,IAAI,QAAQ,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7D,MAAM,IAAI,2BAAkB,CAAC,kBAAkB,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAW,2BAAS,EAAE;YAClE,OAAO,CAAC,UAAU,EAAE;YACpB,OAAO,CAAC,QAAQ,EAAE;SACnB,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,2BAAkB,CAAC,sBAAsB,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAxDY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAGmB,gBAAS;QACR,gBAAU;QACd,sBAAa;GAJ7B,YAAY,CAwDxB"} \ No newline at end of file +{"version":3,"file":"jwt-auth.guard.js","sourceRoot":"","sources":["../../../src/common/guards/jwt-auth.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAMwB;AACxB,uCAAyC;AACzC,qCAAyC;AACzC,2CAA+C;AAC/C,mEAIuC;AAEvC,oDAAuD;AAGhD,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEJ;IACA;IACA;IAHnB,YACmB,SAAoB,EACpB,UAAsB,EACtB,MAAqB;QAFrB,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAY;QACtB,WAAM,GAAN,MAAM,CAAe;IACrC,CAAC;IAEJ,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAU,+BAAa,EAAE;YACxE,OAAO,CAAC,UAAU,EAAE;YACpB,OAAO,CAAC,QAAQ,EAAE;SACnB,CAAC,CAAC;QACH,IAAI,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE1B,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAG7C,CAAC;QACL,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;QACjD,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,8BAAqB,CAAC,4BAA4B,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,OAAyC,CAAC;QAC9C,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE;gBACjD,MAAM,EAAE,IAAA,6BAAgB,EAAC,IAAI,CAAC,MAAM,CAAC;aACtC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,8BAAqB,CAAC,+BAA+B,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,IAAI,GAAkB;YAC1B,EAAE,EAAE,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE;YAC7B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;QACF,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAE/C,+BAAa,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7D,IAAI,QAAQ,IAAI,QAAQ,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7D,MAAM,IAAI,2BAAkB,CAAC,kBAAkB,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAW,2BAAS,EAAE;YAClE,OAAO,CAAC,UAAU,EAAE;YACpB,OAAO,CAAC,QAAQ,EAAE;SACnB,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,2BAAkB,CAAC,sBAAsB,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AA1DY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAGmB,gBAAS;QACR,gBAAU;QACd,sBAAa;GAJ7B,YAAY,CA0DxB"} \ No newline at end of file diff --git a/dist/common/utils/cash-expiry.js b/dist/common/utils/cash-expiry.js index 7dfb758..7de85d4 100644 --- a/dist/common/utils/cash-expiry.js +++ b/dist/common/utils/cash-expiry.js @@ -1,14 +1,14 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.computeCashInvoiceExpiry = computeCashInvoiceExpiry; +const tehran_time_1 = require("./tehran-time"); function computeCashInvoiceExpiry(company) { const now = new Date(); if (company.cashInvoiceValidUntilHour != null && Number.isFinite(company.cashInvoiceValidUntilHour)) { - const expires = new Date(now); - expires.setHours(company.cashInvoiceValidUntilHour, 0, 0, 0); + const expires = (0, tehran_time_1.tehranAtHour)(now, company.cashInvoiceValidUntilHour); if (expires.getTime() <= now.getTime()) { - expires.setDate(expires.getDate() + 1); + return (0, tehran_time_1.tehranAtHour)((0, tehran_time_1.addDays)(now, 1), company.cashInvoiceValidUntilHour); } return expires; } diff --git a/dist/common/utils/cash-expiry.js.map b/dist/common/utils/cash-expiry.js.map index fb0ae3d..662bf53 100644 --- a/dist/common/utils/cash-expiry.js.map +++ b/dist/common/utils/cash-expiry.js.map @@ -1 +1 @@ -{"version":3,"file":"cash-expiry.js","sourceRoot":"","sources":["../../../src/common/utils/cash-expiry.ts"],"names":[],"mappings":";;AAAA,4DAoBC;AApBD,SAAgB,wBAAwB,CAAC,OAGxC;IACC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,IACE,OAAO,CAAC,yBAAyB,IAAI,IAAI;QACzC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAClD,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;YACvC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,IAAI,IAAI,CACb,GAAG,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAClE,CAAC;AACJ,CAAC"} \ No newline at end of file +{"version":3,"file":"cash-expiry.js","sourceRoot":"","sources":["../../../src/common/utils/cash-expiry.ts"],"names":[],"mappings":";;AAEA,4DAmBC;AArBD,+CAAsD;AAEtD,SAAgB,wBAAwB,CAAC,OAGxC;IACC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,IACE,OAAO,CAAC,yBAAyB,IAAI,IAAI;QACzC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAClD,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,0BAAY,EAAC,GAAG,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAC;QACrE,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;YACvC,OAAO,IAAA,0BAAY,EAAC,IAAA,qBAAO,EAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,IAAI,IAAI,CACb,GAAG,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAClE,CAAC;AACJ,CAAC"} \ No newline at end of file diff --git a/dist/common/utils/check-rass.js b/dist/common/utils/check-rass.js index 57c2de7..bec3a4a 100644 --- a/dist/common/utils/check-rass.js +++ b/dist/common/utils/check-rass.js @@ -1,11 +1,7 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.calculateCheckRass = calculateCheckRass; -function startOfDay(date) { - const d = new Date(date); - d.setHours(0, 0, 0, 0); - return d; -} +const tehran_time_1 = require("./tehran-time"); function calculateCheckRass(checks, baseDate = new Date()) { if (checks.length === 0) { return { @@ -17,20 +13,19 @@ function calculateCheckRass(checks, baseDate = new Date()) { rassDate: null, }; } - const base = startOfDay(baseDate); + const base = (0, tehran_time_1.tehranCalendarDay)(baseDate); let totalAmount = 0; let weightedDays = 0; const dueDates = []; for (const check of checks) { - const due = startOfDay(new Date(check.dueDate)); + const due = (0, tehran_time_1.calendarDayOf)(check.dueDate); dueDates.push(due); - const days = Math.max(0, Math.round((due.getTime() - base.getTime()) / (1000 * 60 * 60 * 24))); + const days = Math.max(0, (0, tehran_time_1.diffInDays)(base, due)); totalAmount += check.amount; weightedDays += check.amount * days; } const rassDays = totalAmount > 0 ? Math.round(weightedDays / totalAmount) : 0; - const rassDate = new Date(base); - rassDate.setDate(rassDate.getDate() + rassDays); + const rassDate = (0, tehran_time_1.addDays)(base, rassDays); dueDates.sort((a, b) => a.getTime() - b.getTime()); return { checkCount: checks.length, diff --git a/dist/common/utils/check-rass.js.map b/dist/common/utils/check-rass.js.map index 1a935a9..7e5ee14 100644 --- a/dist/common/utils/check-rass.js.map +++ b/dist/common/utils/check-rass.js.map @@ -1 +1 @@ -{"version":3,"file":"check-rass.js","sourceRoot":"","sources":["../../../src/common/utils/check-rass.ts"],"names":[],"mappings":";;AAoBA,gDA4CC;AAlDD,SAAS,UAAU,CAAC,IAAU;IAC5B,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAgB,kBAAkB,CAChC,MAAwB,EACxB,WAAiB,IAAI,IAAI,EAAE;IAE3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,CAAC;YACd,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,IAAI;YACrB,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,MAAM,QAAQ,GAAW,EAAE,CAAC;IAE5B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAChD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CACnB,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CACrE,CAAC;QACF,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC;QAC5B,YAAY,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACtC,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;IAChD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAEnD,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,MAAM;QACzB,WAAW;QACX,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI;QAClD,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI;QACrE,QAAQ;QACR,QAAQ,EAAE,QAAQ,CAAC,WAAW,EAAE;KACjC,CAAC;AACJ,CAAC"} \ No newline at end of file +{"version":3,"file":"check-rass.js","sourceRoot":"","sources":["../../../src/common/utils/check-rass.ts"],"names":[],"mappings":";;AAqBA,gDAwCC;AA/CD,+CAKuB;AAEvB,SAAgB,kBAAkB,CAChC,MAAwB,EACxB,WAAiB,IAAI,IAAI,EAAE;IAE3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,CAAC;YACd,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,IAAI;YACrB,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,IAAA,+BAAiB,EAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,MAAM,QAAQ,GAAW,EAAE,CAAC;IAE5B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAA,2BAAa,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAA,wBAAU,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QAChD,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC;QAC5B,YAAY,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACtC,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,IAAA,qBAAO,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACzC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAEnD,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,MAAM;QACzB,WAAW;QACX,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI;QAClD,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI;QACrE,QAAQ;QACR,QAAQ,EAAE,QAAQ,CAAC,WAAW,EAAE;KACjC,CAAC;AACJ,CAAC"} \ No newline at end of file diff --git a/dist/common/utils/jwt-secret.d.ts b/dist/common/utils/jwt-secret.d.ts new file mode 100644 index 0000000..07a6938 --- /dev/null +++ b/dist/common/utils/jwt-secret.d.ts @@ -0,0 +1,2 @@ +import { ConfigService } from '@nestjs/config'; +export declare function resolveJwtSecret(config: ConfigService): string; diff --git a/dist/common/utils/jwt-secret.js b/dist/common/utils/jwt-secret.js new file mode 100644 index 0000000..70c320b --- /dev/null +++ b/dist/common/utils/jwt-secret.js @@ -0,0 +1,14 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.resolveJwtSecret = resolveJwtSecret; +const DEV_FALLBACK = 'fabric-trade-dev-secret'; +function resolveJwtSecret(config) { + const secret = config.get('JWT_SECRET')?.trim(); + if (secret) + return secret; + if (config.get('NODE_ENV') === 'production') { + throw new Error('JWT_SECRET تنظیم نشده است'); + } + return DEV_FALLBACK; +} +//# sourceMappingURL=jwt-secret.js.map \ No newline at end of file diff --git a/dist/common/utils/jwt-secret.js.map b/dist/common/utils/jwt-secret.js.map new file mode 100644 index 0000000..48ec6a8 --- /dev/null +++ b/dist/common/utils/jwt-secret.js.map @@ -0,0 +1 @@ +{"version":3,"file":"jwt-secret.js","sourceRoot":"","sources":["../../../src/common/utils/jwt-secret.ts"],"names":[],"mappings":";;AAOA,4CAQC;AAbD,MAAM,YAAY,GAAG,yBAAyB,CAAC;AAK/C,SAAgB,gBAAgB,CAAC,MAAqB;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAS,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC;IACxD,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,IAAI,MAAM,CAAC,GAAG,CAAS,UAAU,CAAC,KAAK,YAAY,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"} \ No newline at end of file diff --git a/dist/common/utils/name.js.map b/dist/common/utils/name.js.map index 0fb298a..134815c 100644 --- a/dist/common/utils/name.js.map +++ b/dist/common/utils/name.js.map @@ -1 +1 @@ -{"version":3,"file":"name.js","sourceRoot":"","sources":["../../../src/common/utils/name.ts"],"names":[],"mappings":";;AAAA,sCAgBC;AAED,oCAEC;AApBD,SAAgB,aAAa,CAAC,IAAY;IAIxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAClD,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAChD,CAAC;IACD,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,CAAC,CAAE;QACpB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAAC,SAAiB,EAAE,QAAgB;IAC9D,OAAO,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;AAC3C,CAAC"} \ No newline at end of file +{"version":3,"file":"name.js","sourceRoot":"","sources":["../../../src/common/utils/name.ts"],"names":[],"mappings":";;AAAA,sCAgBC;AAED,oCAEC;AApBD,SAAgB,aAAa,CAAC,IAAY;IAIxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAClD,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAAC,SAAiB,EAAE,QAAgB;IAC9D,OAAO,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;AAC3C,CAAC"} \ No newline at end of file diff --git a/dist/common/utils/order-status.js b/dist/common/utils/order-status.js index 62309c9..ad1a2c9 100644 --- a/dist/common/utils/order-status.js +++ b/dist/common/utils/order-status.js @@ -5,18 +5,40 @@ exports.resolveAdminStatusFilter = resolveAdminStatusFilter; exports.toAdminStatus = toAdminStatus; const client_1 = require("@prisma/client"); exports.ADMIN_STATUS_MAP = { - pending_review: [client_1.OrderStatus.awaiting_review, client_1.OrderStatus.pricing], + pending_review: [ + client_1.OrderStatus.cart, + client_1.OrderStatus.awaiting_settlement, + client_1.OrderStatus.cash_in_progress, + client_1.OrderStatus.check_in_progress, + client_1.OrderStatus.submitted, + client_1.OrderStatus.awaiting_review, + client_1.OrderStatus.pricing, + client_1.OrderStatus.cash_invoice_issued, + client_1.OrderStatus.awaiting_cash_payment, + client_1.OrderStatus.cash_payment_submitted, + client_1.OrderStatus.awaiting_cash_confirmation, + ], pending_check: [client_1.OrderStatus.awaiting_check_review], - needs_correction: [client_1.OrderStatus.needs_correction], - check_correction: [client_1.OrderStatus.check_needs_fix], + needs_correction: [ + client_1.OrderStatus.needs_correction, + client_1.OrderStatus.awaiting_settlement_fix, + ], + check_correction: [client_1.OrderStatus.check_needs_fix, client_1.OrderStatus.check_rejected], final_approval: [ client_1.OrderStatus.final_approved, client_1.OrderStatus.checks_approved, client_1.OrderStatus.cash_confirmed, + client_1.OrderStatus.preparing, + client_1.OrderStatus.ready_to_ship, ], shipped: [client_1.OrderStatus.shipped], delivered: [client_1.OrderStatus.delivered], }; +const TERMINAL_STATUSES = [ + client_1.OrderStatus.cancelled, + client_1.OrderStatus.rejected, + client_1.OrderStatus.expired, +]; function resolveAdminStatusFilter(status) { if (!status) return undefined; @@ -32,7 +54,9 @@ function toAdminStatus(status) { if (list.includes(status)) return admin; } - return status; + if (TERMINAL_STATUSES.includes(status)) + return status; + return 'pending_review'; } exports.ORDER_STATUS_LABELS = { cart: 'سبد خرید', diff --git a/dist/common/utils/order-status.js.map b/dist/common/utils/order-status.js.map index cad6ad9..6ea9b86 100644 --- a/dist/common/utils/order-status.js.map +++ b/dist/common/utils/order-status.js.map @@ -1 +1 @@ -{"version":3,"file":"order-status.js","sourceRoot":"","sources":["../../../src/common/utils/order-status.ts"],"names":[],"mappings":";;;AAiBA,4DASC;AAED,sCAKC;AAjCD,2CAA6C;AAGhC,QAAA,gBAAgB,GAAkC;IAC7D,cAAc,EAAE,CAAC,oBAAW,CAAC,eAAe,EAAE,oBAAW,CAAC,OAAO,CAAC;IAClE,aAAa,EAAE,CAAC,oBAAW,CAAC,qBAAqB,CAAC;IAClD,gBAAgB,EAAE,CAAC,oBAAW,CAAC,gBAAgB,CAAC;IAChD,gBAAgB,EAAE,CAAC,oBAAW,CAAC,eAAe,CAAC;IAC/C,cAAc,EAAE;QACd,oBAAW,CAAC,cAAc;QAC1B,oBAAW,CAAC,eAAe;QAC3B,oBAAW,CAAC,cAAc;KAC3B;IACD,OAAO,EAAE,CAAC,oBAAW,CAAC,OAAO,CAAC;IAC9B,SAAS,EAAE,CAAC,oBAAW,CAAC,SAAS,CAAC;CACnC,CAAC;AAEF,SAAgB,wBAAwB,CACtC,MAAe;IAEf,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,IAAI,wBAAgB,CAAC,MAAM,CAAC;QAAE,OAAO,wBAAgB,CAAC,MAAM,CAAC,CAAC;IAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAW,CAAC,CAAC,QAAQ,CAAC,MAAqB,CAAC,EAAE,CAAC;QAC/D,OAAO,CAAC,MAAqB,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,aAAa,CAAC,MAAmB;IAC/C,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,wBAAgB,CAAC,EAAE,CAAC;QAC7D,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAEY,QAAA,mBAAmB,GAAgC;IAC9D,IAAI,EAAE,UAAU;IAChB,mBAAmB,EAAE,iBAAiB;IACtC,gBAAgB,EAAE,iBAAiB;IACnC,iBAAiB,EAAE,eAAe;IAClC,SAAS,EAAE,SAAS;IACpB,eAAe,EAAE,iBAAiB;IAClC,OAAO,EAAE,YAAY;IACrB,gBAAgB,EAAE,eAAe;IACjC,uBAAuB,EAAE,aAAa;IACtC,mBAAmB,EAAE,kBAAkB;IACvC,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,qBAAqB;IAC7C,0BAA0B,EAAE,mBAAmB;IAC/C,cAAc,EAAE,sBAAsB;IACtC,qBAAqB,EAAE,UAAU;IACjC,eAAe,EAAE,UAAU;IAC3B,cAAc,EAAE,OAAO;IACvB,eAAe,EAAE,aAAa;IAC9B,cAAc,EAAE,aAAa;IAC7B,SAAS,EAAE,YAAY;IACvB,aAAa,EAAE,aAAa;IAC5B,OAAO,EAAE,WAAW;IACpB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,OAAO;CACjB,CAAC"} \ No newline at end of file +{"version":3,"file":"order-status.js","sourceRoot":"","sources":["../../../src/common/utils/order-status.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/common/utils/tehran-time.d.ts b/dist/common/utils/tehran-time.d.ts new file mode 100644 index 0000000..7d9021a --- /dev/null +++ b/dist/common/utils/tehran-time.d.ts @@ -0,0 +1,5 @@ +export declare function tehranCalendarDay(date: Date): Date; +export declare function calendarDayOf(date: Date | string): Date; +export declare function addDays(date: Date, days: number): Date; +export declare function diffInDays(from: Date, to: Date): number; +export declare function tehranAtHour(date: Date, hour: number): Date; diff --git a/dist/common/utils/tehran-time.js b/dist/common/utils/tehran-time.js new file mode 100644 index 0000000..dcc45bc --- /dev/null +++ b/dist/common/utils/tehran-time.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.tehranCalendarDay = tehranCalendarDay; +exports.calendarDayOf = calendarDayOf; +exports.addDays = addDays; +exports.diffInDays = diffInDays; +exports.tehranAtHour = tehranAtHour; +const TEHRAN_OFFSET_MS = (3 * 60 + 30) * 60 * 1000; +const DAY_MS = 24 * 60 * 60 * 1000; +function utcStartOfDay(date) { + const d = new Date(date); + d.setUTCHours(0, 0, 0, 0); + return d; +} +function tehranCalendarDay(date) { + return utcStartOfDay(new Date(date.getTime() + TEHRAN_OFFSET_MS)); +} +function calendarDayOf(date) { + return utcStartOfDay(new Date(date)); +} +function addDays(date, days) { + return new Date(date.getTime() + days * DAY_MS); +} +function diffInDays(from, to) { + return Math.round((to.getTime() - from.getTime()) / DAY_MS); +} +function tehranAtHour(date, hour) { + return new Date(tehranCalendarDay(date).getTime() + + hour * 60 * 60 * 1000 - + TEHRAN_OFFSET_MS); +} +//# sourceMappingURL=tehran-time.js.map \ No newline at end of file diff --git a/dist/common/utils/tehran-time.js.map b/dist/common/utils/tehran-time.js.map new file mode 100644 index 0000000..41bbc60 --- /dev/null +++ b/dist/common/utils/tehran-time.js.map @@ -0,0 +1 @@ +{"version":3,"file":"tehran-time.js","sourceRoot":"","sources":["../../../src/common/utils/tehran-time.ts"],"names":[],"mappings":";;AAiBA,8CAEC;AAGD,sCAEC;AAED,0BAEC;AAED,gCAEC;AAGD,oCAMC;AArCD,MAAM,gBAAgB,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACnD,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEnC,SAAS,aAAa,CAAC,IAAU;IAC/B,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1B,OAAO,CAAC,CAAC;AACX,CAAC;AAMD,SAAgB,iBAAiB,CAAC,IAAU;IAC1C,OAAO,aAAa,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;AACpE,CAAC;AAGD,SAAgB,aAAa,CAAC,IAAmB;IAC/C,OAAO,aAAa,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAgB,OAAO,CAAC,IAAU,EAAE,IAAY;IAC9C,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,MAAM,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,UAAU,CAAC,IAAU,EAAE,EAAQ;IAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;AAC9D,CAAC;AAGD,SAAgB,YAAY,CAAC,IAAU,EAAE,IAAY;IACnD,OAAO,IAAI,IAAI,CACb,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;QAC/B,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QACrB,gBAAgB,CACnB,CAAC;AACJ,CAAC"} \ No newline at end of file diff --git a/dist/companies/companies.service.js b/dist/companies/companies.service.js index d583521..f8bb216 100644 --- a/dist/companies/companies.service.js +++ b/dist/companies/companies.service.js @@ -23,7 +23,9 @@ let CompaniesService = class CompaniesService { where: activeOnly ? { isActive: true } : undefined, orderBy: [{ displayOrder: 'asc' }, { name: 'asc' }], include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return companies.map((c) => this.mapCompany(c)); @@ -33,7 +35,9 @@ let CompaniesService = class CompaniesService { where: { id }, include: { bankAccounts: { orderBy: { displayOrder: 'asc' } }, - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); if (!company) @@ -58,13 +62,16 @@ let CompaniesService = class CompaniesService { isActive: dto.isActive ?? true, }, include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return this.mapCompany(company); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('اسلاگ شرکت تکراری است'); } throw e; @@ -89,13 +96,16 @@ let CompaniesService = class CompaniesService { isActive: dto.isActive, }, include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return this.mapCompany(company); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('اسلاگ شرکت تکراری است'); } throw e; @@ -107,7 +117,9 @@ let CompaniesService = class CompaniesService { where: { id }, data: { isActive }, include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return this.mapCompany(company); diff --git a/dist/companies/companies.service.js.map b/dist/companies/companies.service.js.map index 50910c6..47d5892 100644 --- a/dist/companies/companies.service.js.map +++ b/dist/companies/companies.service.js.map @@ -1 +1 @@ -{"version":3,"file":"companies.service.js","sourceRoot":"","sources":["../../src/companies/companies.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"companies.service.js","sourceRoot":"","sources":["../../src/companies/companies.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAIwB;AACxB,2CAAwC;AACxC,6DAAyD;AASlD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IACE;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,KAAK,CAAC,OAAO,CAAC,UAAU,GAAG,KAAK;QAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YACnD,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;YAClD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;YACnD,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;iBAC/D;aACF;SACF,CAAC,CAAC;QACH,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,OAAO,EAAE;gBACP,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE;gBAClD,MAAM,EAAE;oBACN,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;iBAC/D;aACF;SACF,CAAC,CAAC;QACH,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,0BAAiB,CAAC,eAAe,CAAC,CAAC;QAC3D,OAAO;YACL,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAC3B,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;SACtE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAqB;QAChC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC/C,IAAI,EAAE;oBACJ,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACrB,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACrB,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI;oBAC5C,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI;oBACpC,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC;oBACnC,qBAAqB,EAAE,GAAG,CAAC,qBAAqB,IAAI,IAAI;oBACxD,wBAAwB,EAAE,GAAG,CAAC,wBAAwB,IAAI,CAAC;oBAC3D,yBAAyB,EAAE,GAAG,CAAC,yBAAyB,IAAI,IAAI;oBAChE,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;iBAC/B;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;qBAC/D;iBACF;aACF,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IACE,CAAC,YAAY,eAAM,CAAC,6BAA6B;gBACjD,CAAC,CAAC,IAAI,KAAK,OAAO,EAClB,CAAC;gBACD,MAAM,IAAI,0BAAiB,CAAC,uBAAuB,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,GAAqB;QAC5C,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC/C,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,IAAI,EAAE;oBACJ,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE;oBACtB,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE;oBACtB,WAAW,EACT,GAAG,CAAC,WAAW,KAAK,SAAS;wBAC3B,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI;oBACrC,OAAO,EACL,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI;oBACrE,YAAY,EAAE,GAAG,CAAC,YAAY;oBAC9B,qBAAqB,EAAE,GAAG,CAAC,qBAAqB;oBAChD,wBAAwB,EAAE,GAAG,CAAC,wBAAwB;oBACtD,yBAAyB,EAAE,GAAG,CAAC,yBAAyB;oBACxD,QAAQ,EAAE,GAAG,CAAC,QAAQ;iBACvB;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;qBAC/D;iBACF;aACF,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IACE,CAAC,YAAY,eAAM,CAAC,6BAA6B;gBACjD,CAAC,CAAC,IAAI,KAAK,OAAO,EAClB,CAAC;gBACD,MAAM,IAAI,0BAAiB,CAAC,uBAAuB,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,QAAiB;QAC3C,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;YAC/C,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,EAAE,QAAQ,EAAE;YAClB,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;iBAC/D;aACF;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QACtC,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;YACtD,KAAK,EAAE,EAAE,SAAS,EAAE;YACpB,OAAO,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;SACjC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,SAAiB,EAAE,GAAyB;QAClE,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACnD,IAAI,EAAE;gBACJ,SAAS;gBACT,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAC7B,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE;gBACvC,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE;gBACvC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE;gBACjC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;gBACrB,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;gBAChC,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC;gBACnC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;aAC/B;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,GAAyB;QAC3D,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE;gBACJ,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE;gBAC9B,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE;gBACxC,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE;gBACxC,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE;gBAClC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE;gBACtB,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;gBACtE,YAAY,EAAE,GAAG,CAAC,YAAY;gBAC9B,QAAQ,EAAE,GAAG,CAAC,QAAQ;aACvB;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,EAAU,EAAE,QAAiB;QACtD,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,EAAE,QAAQ,EAAE;SACnB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,EAAU;QACpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,0BAAiB,CAAC,eAAe,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,EAAU;QACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,0BAAiB,CAAC,qBAAqB,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,UAAU,CAAC,OAclB;QACC,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO,CAAC,OAAO,IAAI,SAAS;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;YACpD,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;YAC1D,yBAAyB,EAAE,OAAO,CAAC,yBAAyB,IAAI,SAAS;YACzE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,IAAI,CAAC;YAC3C,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,IAAI,CAAC;YAC3C,gBAAgB,EAAE,OAAO,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC;YACnD,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;SAC3C,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,OAatB;QACC,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,SAAS;YACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;SAC3C,CAAC;IACJ,CAAC;CACF,CAAA;AAvPY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;qCAE0B,8BAAa;GADvC,gBAAgB,CAuP5B"} \ No newline at end of file diff --git a/dist/customers/customers.service.js b/dist/customers/customers.service.js index f63f884..d7c8cea 100644 --- a/dist/customers/customers.service.js +++ b/dist/customers/customers.service.js @@ -84,7 +84,8 @@ let CustomersService = class CustomersService { return this.map(customer); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('این شماره قبلاً ثبت شده است'); } throw e; @@ -100,7 +101,9 @@ let CustomersService = class CustomersService { } let firstName; let lastName; - if (dto.name !== undefined || dto.firstName !== undefined || dto.lastName !== undefined) { + if (dto.name !== undefined || + dto.firstName !== undefined || + dto.lastName !== undefined) { const names = this.resolveNames(dto); firstName = names.firstName; lastName = names.lastName; @@ -127,7 +130,8 @@ let CustomersService = class CustomersService { return this.map(customer); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('این شماره قبلاً ثبت شده است'); } throw e; diff --git a/dist/customers/customers.service.js.map b/dist/customers/customers.service.js.map index 957cabc..9032df4 100644 --- a/dist/customers/customers.service.js.map +++ b/dist/customers/customers.service.js.map @@ -1 +1 @@ -{"version":3,"file":"customers.service.js","sourceRoot":"","sources":["../../src/customers/customers.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"customers.service.js","sourceRoot":"","sources":["../../src/customers/customers.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/dashboard/dashboard.service.js b/dist/dashboard/dashboard.service.js index fe7d159..83dad45 100644 --- a/dist/dashboard/dashboard.service.js +++ b/dist/dashboard/dashboard.service.js @@ -186,7 +186,12 @@ let DashboardService = class DashboardService { { id: 'cd-today', label: 'امروز', tone: 'danger', days: 0 }, { id: 'cd-3', label: '۳ روز آینده', tone: 'warning', days: 3 }, { id: 'cd-7', label: '۷ روز آینده', tone: 'warning', days: 7 }, - { id: 'cd-30', label: '۳۰ روز آینده', tone: 'neutral', days: 30 }, + { + id: 'cd-30', + label: '۳۰ روز آینده', + tone: 'neutral', + days: 30, + }, ]; return buckets.map((bucket) => { const end = new Date(startOfToday); diff --git a/dist/dashboard/dashboard.service.js.map b/dist/dashboard/dashboard.service.js.map index 36b579b..280db29 100644 --- a/dist/dashboard/dashboard.service.js.map +++ b/dist/dashboard/dashboard.service.js.map @@ -1 +1 @@ -{"version":3,"file":"dashboard.service.js","sourceRoot":"","sources":["../../src/dashboard/dashboard.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"dashboard.service.js","sourceRoot":"","sources":["../../src/dashboard/dashboard.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/main.js b/dist/main.js index aef60e6..e3fb5a0 100644 --- a/dist/main.js +++ b/dist/main.js @@ -3,9 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = require("@nestjs/core"); const common_1 = require("@nestjs/common"); const swagger_1 = require("@nestjs/swagger"); +const express_1 = require("express"); const app_module_1 = require("./app.module"); async function bootstrap() { const app = await core_1.NestFactory.create(app_module_1.AppModule); + const bodyLimit = process.env.BODY_LIMIT || '25mb'; + app.use((0, express_1.json)({ limit: bodyLimit })); + app.use((0, express_1.urlencoded)({ extended: true, limit: bodyLimit })); const globalPrefix = process.env.GLOBAL_PREFIX || 'api'; app.setGlobalPrefix(globalPrefix); app.enableCors({ @@ -31,5 +35,5 @@ async function bootstrap() { console.log(`Fabric Trade API listening on http://localhost:${port}/${globalPrefix}`); console.log(`Swagger docs at http://localhost:${port}/${globalPrefix}/docs`); } -bootstrap(); +void bootstrap(); //# sourceMappingURL=main.js.map \ No newline at end of file diff --git a/dist/main.js.map b/dist/main.js.map index b098a96..5fe264a 100644 --- a/dist/main.js.map +++ b/dist/main.js.map @@ -1 +1 @@ -{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;AAAA,uCAA2C;AAC3C,2CAAgD;AAChD,6CAAiE;AACjE,6CAAyC;AAEzC,KAAK,UAAU,SAAS;IACtB,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,sBAAS,CAAC,CAAC;IAGhD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,KAAK,CAAC;IACxD,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAClC,GAAG,CAAC,UAAU,CAAC;QACb,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IACH,GAAG,CAAC,cAAc,CAChB,IAAI,uBAAc,CAAC;QACjB,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,IAAI;QACf,oBAAoB,EAAE,IAAI;QAC1B,gBAAgB,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE;KACrD,CAAC,CACH,CAAC;IAEF,MAAM,aAAa,GAAG,IAAI,yBAAe,EAAE;SACxC,QAAQ,CAAC,kBAAkB,CAAC;SAC5B,cAAc,CAAC,sBAAsB,CAAC;SACtC,UAAU,CAAC,KAAK,CAAC;SACjB,aAAa,EAAE;SACf,KAAK,EAAE,CAAC;IACX,MAAM,QAAQ,GAAG,uBAAa,CAAC,cAAc,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAClE,uBAAa,CAAC,KAAK,CAAC,GAAG,YAAY,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAE3D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;IACtC,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,CAAC,GAAG,CAAC,kDAAkD,IAAI,IAAI,YAAY,EAAE,CAAC,CAAC;IACtF,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAAI,IAAI,YAAY,OAAO,CAAC,CAAC;AAC/E,CAAC;AACD,SAAS,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;AAAA,uCAA2C;AAC3C,2CAAgD;AAChD,6CAAiE;AACjE,qCAA2C;AAC3C,6CAAyC;AAEzC,KAAK,UAAU,SAAS;IACtB,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,sBAAS,CAAC,CAAC;IAGhD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC;IACnD,GAAG,CAAC,GAAG,CAAC,IAAA,cAAI,EAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACpC,GAAG,CAAC,GAAG,CAAC,IAAA,oBAAU,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAG1D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,KAAK,CAAC;IACxD,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAClC,GAAG,CAAC,UAAU,CAAC;QACb,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IACH,GAAG,CAAC,cAAc,CAChB,IAAI,uBAAc,CAAC;QACjB,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,IAAI;QACf,oBAAoB,EAAE,IAAI;QAC1B,gBAAgB,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE;KACrD,CAAC,CACH,CAAC;IAEF,MAAM,aAAa,GAAG,IAAI,yBAAe,EAAE;SACxC,QAAQ,CAAC,kBAAkB,CAAC;SAC5B,cAAc,CAAC,sBAAsB,CAAC;SACtC,UAAU,CAAC,KAAK,CAAC;SACjB,aAAa,EAAE;SACf,KAAK,EAAE,CAAC;IACX,MAAM,QAAQ,GAAG,uBAAa,CAAC,cAAc,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAClE,uBAAa,CAAC,KAAK,CAAC,GAAG,YAAY,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAE3D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;IACtC,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,CAAC,GAAG,CACT,kDAAkD,IAAI,IAAI,YAAY,EAAE,CACzE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAAI,IAAI,YAAY,OAAO,CAAC,CAAC;AAC/E,CAAC;AACD,KAAK,SAAS,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/orders/dto/order.dto.d.ts b/dist/orders/dto/order.dto.d.ts index fd98e80..b3469d2 100644 --- a/dist/orders/dto/order.dto.d.ts +++ b/dist/orders/dto/order.dto.d.ts @@ -2,6 +2,7 @@ import { CheckRegistrationMode, OrderStatus, SettlementType } from '@prisma/clie export declare class SubmitOrderItemDto { productId: string; meterage: number; + requestedMeterage?: number; notes?: string; } export declare class SubmitOrderCheckDto { @@ -22,6 +23,7 @@ export declare class SubmitOrderCheckDto { export declare class SubmitOrderDto { companyId: string; settlementType: SettlementType; + settlementMethod?: SettlementType; checkMode?: CheckRegistrationMode; notes?: string; items: SubmitOrderItemDto[]; diff --git a/dist/orders/dto/order.dto.js b/dist/orders/dto/order.dto.js index 9bde9c1..0a5ca7d 100644 --- a/dist/orders/dto/order.dto.js +++ b/dist/orders/dto/order.dto.js @@ -16,6 +16,7 @@ const client_1 = require("@prisma/client"); class SubmitOrderItemDto { productId; meterage; + requestedMeterage; notes; } exports.SubmitOrderItemDto = SubmitOrderItemDto; @@ -29,6 +30,12 @@ __decorate([ (0, class_validator_1.Min)(0.001), __metadata("design:type", Number) ], SubmitOrderItemDto.prototype, "meterage", void 0); +__decorate([ + (0, class_validator_1.IsOptional)(), + (0, class_transformer_1.Type)(() => Number), + (0, class_validator_1.IsNumber)(), + __metadata("design:type", Number) +], SubmitOrderItemDto.prototype, "requestedMeterage", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), @@ -118,6 +125,7 @@ __decorate([ class SubmitOrderDto { companyId; settlementType; + settlementMethod; checkMode; notes; items; @@ -132,6 +140,11 @@ __decorate([ (0, class_validator_1.IsEnum)(client_1.SettlementType), __metadata("design:type", String) ], SubmitOrderDto.prototype, "settlementType", void 0); +__decorate([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsEnum)(client_1.SettlementType), + __metadata("design:type", String) +], SubmitOrderDto.prototype, "settlementMethod", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsEnum)(client_1.CheckRegistrationMode), diff --git a/dist/orders/dto/order.dto.js.map b/dist/orders/dto/order.dto.js.map index c46706f..1795f35 100644 --- a/dist/orders/dto/order.dto.js.map +++ b/dist/orders/dto/order.dto.js.map @@ -1 +1 @@ -{"version":3,"file":"order.dto.js","sourceRoot":"","sources":["../../../src/orders/dto/order.dto.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"order.dto.js","sourceRoot":"","sources":["../../../src/orders/dto/order.dto.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/orders/orders.controller.js.map b/dist/orders/orders.controller.js.map index 08d8793..845166d 100644 --- a/dist/orders/orders.controller.js.map +++ b/dist/orders/orders.controller.js.map @@ -1 +1 @@ -{"version":3,"file":"orders.controller.js","sourceRoot":"","sources":["../../src/orders/orders.controller.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"orders.controller.js","sourceRoot":"","sources":["../../src/orders/orders.controller.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/orders/orders.service.d.ts b/dist/orders/orders.service.d.ts index 42849e0..8c76f69 100644 --- a/dist/orders/orders.service.d.ts +++ b/dist/orders/orders.service.d.ts @@ -938,6 +938,7 @@ export declare class OrdersService { }>; private mapCheckCreate; private nextOrderNumber; + private createWithUniqueOrderNumber; private getOrder; mapOrder(order: OrderFull, adminView?: boolean): { id: string; diff --git a/dist/orders/orders.service.js b/dist/orders/orders.service.js index 984801f..8094b35 100644 --- a/dist/orders/orders.service.js +++ b/dist/orders/orders.service.js @@ -28,6 +28,19 @@ const orderInclude = { user: true, company: true, }; +function roundMoney(value) { + return Math.round(value * 100) / 100; +} +const CHECK_EDITABLE_STATUSES = [ + client_1.OrderStatus.awaiting_review, + client_1.OrderStatus.pricing, + client_1.OrderStatus.needs_correction, + client_1.OrderStatus.awaiting_settlement_fix, + client_1.OrderStatus.check_in_progress, + client_1.OrderStatus.awaiting_check_review, + client_1.OrderStatus.check_needs_fix, + client_1.OrderStatus.check_rejected, +]; let OrdersService = class OrdersService { prisma; constructor(prisma) { @@ -140,8 +153,7 @@ let OrdersService = class OrdersService { const cashInvoiceExpiresAt = settlementType === client_1.SettlementType.cash ? (0, cash_expiry_1.computeCashInvoiceExpiry)(company) : null; - const orderNumber = await this.nextOrderNumber(); - const order = await this.prisma.$transaction(async (tx) => { + const order = await this.createWithUniqueOrderNumber((orderNumber) => this.prisma.$transaction(async (tx) => { const created = await tx.order.create({ data: { orderNumber, @@ -188,7 +200,7 @@ let OrdersService = class OrdersService { }); } return created; - }); + })); return this.mapOrder(order); } async adminCreate(adminId, dto) { @@ -207,7 +219,9 @@ let OrdersService = class OrdersService { if (!(0, phone_1.isValidPhone)(phone)) { throw new common_1.BadRequestException('شماره موبایل نامعتبر است'); } - let customer = await this.prisma.customer.findUnique({ where: { phone } }); + let customer = await this.prisma.customer.findUnique({ + where: { phone }, + }); if (!customer) { const names = (0, name_1.splitFullName)(dto.customerName || 'مشتری جدید'); customer = await this.prisma.customer.create({ @@ -223,12 +237,12 @@ let OrdersService = class OrdersService { if (!userId) { throw new common_1.BadRequestException('شناسه یا شماره مشتری الزامی است'); } - const orderNumber = await this.nextOrderNumber(); const totalMeterage = dto.meterage ?? 0; - const order = await this.prisma.order.create({ + const ownerId = userId; + const order = await this.createWithUniqueOrderNumber((orderNumber) => this.prisma.order.create({ data: { orderNumber, - userId, + userId: ownerId, companyId: company.id, companyName: company.name, settlementType, @@ -245,33 +259,39 @@ let OrdersService = class OrdersService { }, }, include: orderInclude, - }); + })); return this.mapOrder(order, true); } async updatePricing(id, adminId, dto) { const order = await this.getOrder(id); + const unknown = dto.items.find((item) => !order.items.some((i) => i.id === item.id)); + if (unknown) { + throw new common_1.BadRequestException(`آیتم ${unknown.id} یافت نشد`); + } await this.prisma.$transaction(async (tx) => { let totalAmount = 0; let totalMeterage = 0; - for (const item of dto.items) { - const existing = order.items.find((i) => i.id === item.id); - if (!existing) { - throw new common_1.BadRequestException(`آیتم ${item.id} یافت نشد`); - } - const unitPrice = item.unitPrice !== undefined + for (const existing of order.items) { + const item = dto.items.find((i) => i.id === existing.id); + const unitPrice = item?.unitPrice !== undefined ? item.unitPrice - : item.supplyPrice !== undefined + : item?.supplyPrice !== undefined ? item.supplyPrice : (existing.unitPrice ?? 0); - const unitDiscount = item.unitDiscount ?? existing.unitDiscount ?? 0; - const confirmed = item.confirmedMeterage ?? + const unitDiscount = item?.unitDiscount ?? existing.unitDiscount ?? 0; + if (unitDiscount > unitPrice) { + throw new common_1.BadRequestException('تخفیف واحد نمی‌تواند از قیمت واحد بیشتر باشد'); + } + const confirmed = item?.confirmedMeterage ?? existing.confirmedMeterage ?? existing.requestedMeterage; - const lineTotal = Math.max(0, (unitPrice - unitDiscount) * confirmed); + const lineTotal = roundMoney(Math.max(0, (unitPrice - unitDiscount) * confirmed)); totalAmount += lineTotal; totalMeterage += confirmed; + if (!item) + continue; await tx.orderItem.update({ - where: { id: item.id }, + where: { id: existing.id }, data: { confirmedMeterage: confirmed, unitPrice, @@ -280,9 +300,10 @@ let OrdersService = class OrdersService { }, }); } + totalAmount = roundMoney(totalAmount); const shippingCost = dto.shippingCost ?? order.shippingCost ?? 0; const totalDiscount = dto.totalDiscount ?? order.totalDiscount ?? 0; - const finalAmount = Math.max(0, totalAmount + shippingCost - totalDiscount); + const finalAmount = roundMoney(Math.max(0, totalAmount + shippingCost - totalDiscount)); const nextStatus = order.status === client_1.OrderStatus.awaiting_review || order.status === client_1.OrderStatus.pricing ? client_1.OrderStatus.pricing @@ -354,6 +375,9 @@ let OrdersService = class OrdersService { if (order.settlementType !== client_1.SettlementType.check) { throw new common_1.BadRequestException('این سفارش تسویه چکی نیست'); } + if (!CHECK_EDITABLE_STATUSES.includes(order.status)) { + throw new common_1.BadRequestException('در وضعیت فعلی سفارش امکان ویرایش چک‌ها وجود ندارد'); + } const checkMode = dto.checkMode ?? order.checkMode ?? client_1.CheckRegistrationMode.full; const rass = (0, check_rass_1.calculateCheckRass)(dto.checks.map((c) => ({ amount: c.amount, dueDate: c.dueDate })), order.createdAt); await this.prisma.$transaction(async (tx) => { @@ -418,6 +442,20 @@ let OrdersService = class OrdersService { } return `${(0, order_number_1.generateOrderNumber)()}-${Date.now().toString().slice(-3)}`; } + async createWithUniqueOrderNumber(create) { + for (let attempt = 0;; attempt++) { + const orderNumber = await this.nextOrderNumber(); + try { + return await create(orderNumber); + } + catch (e) { + const isDuplicate = e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002'; + if (!isDuplicate || attempt >= 4) + throw e; + } + } + } async getOrder(id) { const order = await this.prisma.order.findUnique({ where: { id }, diff --git a/dist/orders/orders.service.js.map b/dist/orders/orders.service.js.map index ebd650d..86ed914 100644 --- a/dist/orders/orders.service.js.map +++ b/dist/orders/orders.service.js.map @@ -1 +1 @@ -{"version":3,"file":"orders.service.js","sourceRoot":"","sources":["../../src/orders/orders.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAKwB;AACxB,2CAKwB;AACxB,6DAAyD;AASzD,+DAAmE;AACnE,2DAAgE;AAChE,6DAAuE;AACvE,+DAGsC;AACtC,+CAAmE;AACnE,iDAI+B;AAE/B,MAAM,YAAY,GAAG;IACnB,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,KAAc,EAAE,EAAE;IAC5C,WAAW,EAAE,IAAI;IACjB,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,KAAc,EAAE,EAAE;IACzD,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;CACgB,CAAC;AAKzB,IAAM,aAAa,GAAnB,MAAM,aAAa;IACK;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC9C,KAAK,EAAE,EAAE,MAAM,EAAE;YACjB,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;YAC9B,OAAO,EAAE,YAAY;SACtB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,EAAU;QAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,2BAAkB,CAAC,+BAA+B,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAwC;QAC5D,MAAM,QAAQ,GAAG,IAAA,uCAAwB,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC9C,KAAK,EAAE;gBACL,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,CAAC;oBACH,CAAC,CAAC;wBACE,EAAE,EAAE;4BACF,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;4BACrD,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;4BACrD;gCACE,IAAI,EAAE;oCACJ,EAAE,EAAE;wCACF,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;wCACnD,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;wCAClD,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAA,uBAAe,EAAC,CAAC,CAAC,EAAE,EAAE;qCAC5C;iCACF;6BACF;yBACF;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;aACR;YACD,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;YAC9B,OAAO,EAAE,YAAY;SACtB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC7B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,GAAmB;QACnD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE;SAC7B,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,0BAAiB,CAAC,8BAA8B,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YACxE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;YAC1C,MAAM,IAAI,4BAAmB,CAAC,6BAA6B,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3D,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACvC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAE,CAAC;YAChD,IAAI,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxC,MAAM,IAAI,4BAAmB,CAC3B,oBAAoB,OAAO,CAAC,IAAI,UAAU,OAAO,CAAC,WAAW,MAAM,CACpE,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,GACP,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YACtE,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;gBAC3C,MAAM,IAAI,4BAAmB,CAC3B,SAAS,OAAO,CAAC,IAAI,cAAc,OAAO,CAAC,eAAe,OAAO,CAClE,CAAC;YACJ,CAAC;YACD,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC;YAC/B,OAAO;gBACL,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;gBACjC,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,iBAAiB,EAAE,IAAI,CAAC,QAAQ;gBAChC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;aAClC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,aAAa,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAClD,MAAM,IAAI,4BAAmB,CAC3B,+BAA+B,OAAO,CAAC,qBAAqB,UAAU,CACvE,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC;QAC1C,IAAI,cAAc,KAAK,uBAAc,CAAC,KAAK,EAAE,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBACxB,MAAM,IAAI,4BAAmB,CAAC,qCAAqC,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GACb,cAAc,KAAK,uBAAc,CAAC,KAAK;YACrC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,IAAI,8BAAqB,CAAC,IAAI,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,IAAI,GACR,cAAc,KAAK,uBAAc,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM;YAC3D,CAAC,CAAC,IAAA,+BAAkB,EAChB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CAAC,CACJ;YACH,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,oBAAoB,GACxB,cAAc,KAAK,uBAAc,CAAC,IAAI;YACpC,CAAC,CAAC,IAAA,sCAAwB,EAAC,OAAO,CAAC;YACnC,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAEjD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACxD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpC,IAAI,EAAE;oBACJ,WAAW;oBACX,MAAM;oBACN,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,cAAc;oBACd,SAAS;oBACT,MAAM,EAAE,oBAAW,CAAC,eAAe;oBACnC,aAAa;oBACb,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;oBAChC,aAAa,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI;oBACrC,aAAa,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;oBAC9D,oBAAoB;oBACpB,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;oBAC5B,MAAM,EACJ,cAAc,KAAK,uBAAc,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM;wBACnD,CAAC,CAAC;4BACE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAClC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,SAAU,CAAC,CAC9C;yBACF;wBACH,CAAC,CAAC,SAAS;oBACf,aAAa,EAAE;wBACb,MAAM,EAAE;4BACN;gCACE,UAAU,EAAE,IAAI;gCAChB,QAAQ,EAAE,oBAAW,CAAC,SAAS;gCAC/B,SAAS,EAAE,UAAU;gCACrB,IAAI,EAAE,cAAc;6BACrB;4BACD;gCACE,UAAU,EAAE,oBAAW,CAAC,SAAS;gCACjC,QAAQ,EAAE,oBAAW,CAAC,eAAe;gCACrC,SAAS,EAAE,UAAU;gCACrB,IAAI,EAAE,yBAAyB;6BAChC;yBACF;qBACF;iBACF;gBACD,OAAO,EAAE,YAAY;aACtB,CAAC,CAAC;YAGH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YAC5D,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAC3B,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;iBAClD,CAAC,CAAC;YACL,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,GAAwB;QACzD,MAAM,cAAc,GAAG,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,gBAAgB,CAAC;QAClE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,4BAAmB,CAAC,sBAAsB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YACnD,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE;SAC7B,CAAC,CAAC;QACH,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,0BAAiB,CAAC,eAAe,CAAC,CAAC;QAE3D,IAAI,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACxB,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;YACjE,IAAI,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,KAAK,GAAG,IAAA,oBAAa,EAAC,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,CAAC;gBAC9D,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAC3C,IAAI,EAAE;wBACJ,KAAK;wBACL,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,MAAM;qBACnC;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,4BAAmB,CAAC,iCAAiC,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC;QAExC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3C,IAAI,EAAE;gBACJ,WAAW;gBACX,MAAM;gBACN,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,cAAc;gBACd,MAAM,EAAE,oBAAW,CAAC,eAAe;gBACnC,aAAa;gBACb,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;gBAChC,aAAa,EAAE;oBACb,MAAM,EAAE;wBACN,UAAU,EAAE,IAAI;wBAChB,QAAQ,EAAE,oBAAW,CAAC,eAAe;wBACrC,SAAS,EAAE,SAAS,OAAO,EAAE;wBAC7B,IAAI,EAAE,yBAAyB;qBAChC;iBACF;aACF;YACD,OAAO,EAAE,YAAY;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,EAAU,EACV,OAAe,EACf,GAA0B;QAE1B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAEtC,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAC1C,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,aAAa,GAAG,CAAC,CAAC;YAEtB,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3D,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,MAAM,IAAI,4BAAmB,CAAC,QAAQ,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;gBAC5D,CAAC;gBACD,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,KAAK,SAAS;oBAC1B,CAAC,CAAC,IAAI,CAAC,SAAS;oBAChB,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS;wBAC9B,CAAC,CAAC,IAAI,CAAC,WAAW;wBAClB,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;gBAClC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY,IAAI,CAAC,CAAC;gBACrE,MAAM,SAAS,GACb,IAAI,CAAC,iBAAiB;oBACtB,QAAQ,CAAC,iBAAiB;oBAC1B,QAAQ,CAAC,iBAAiB,CAAC;gBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC;gBACtE,WAAW,IAAI,SAAS,CAAC;gBACzB,aAAa,IAAI,SAAS,CAAC;gBAE3B,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC;oBACxB,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;oBACtB,IAAI,EAAE;wBACJ,iBAAiB,EAAE,SAAS;wBAC5B,SAAS;wBACT,YAAY;wBACZ,SAAS;qBACV;iBACF,CAAC,CAAC;YACL,CAAC;YAED,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;YACjE,MAAM,aAAa,GAAG,GAAG,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC;YACpE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;YAE5E,MAAM,UAAU,GACd,KAAK,CAAC,MAAM,KAAK,oBAAW,CAAC,eAAe;gBAC5C,KAAK,CAAC,MAAM,KAAK,oBAAW,CAAC,OAAO;gBAClC,CAAC,CAAC,oBAAW,CAAC,OAAO;gBACrB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;YAEnB,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,IAAI,EAAE;oBACJ,WAAW;oBACX,aAAa;oBACb,YAAY;oBACZ,aAAa;oBACb,WAAW;oBACX,MAAM,EAAE,UAAU;iBACnB;aACF,CAAC,CAAC;YAEH,IAAI,UAAU,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;gBAChC,MAAM,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE;wBACJ,OAAO,EAAE,EAAE;wBACX,UAAU,EAAE,KAAK,CAAC,MAAM;wBACxB,QAAQ,EAAE,UAAU;wBACpB,SAAS,EAAE,SAAS,OAAO,EAAE;wBAC7B,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,qBAAqB;qBACxC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,EAAU,EACV,OAAe,EACf,GAAyB;QAEzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAC1C,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE;aAC7B,CAAC,CAAC;YACH,MAAM,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE;oBACJ,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,KAAK,CAAC,MAAM;oBACxB,QAAQ,EAAE,GAAG,CAAC,MAAM;oBACpB,SAAS,EAAE,SAAS,OAAO,EAAE;oBAC7B,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI;oBACtB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;iBAC3B;aACF,CAAC,CAAC;YAGH,IACE,GAAG,CAAC,MAAM,KAAK,oBAAW,CAAC,mBAAmB;gBAC9C,GAAG,CAAC,MAAM,KAAK,oBAAW,CAAC,qBAAqB,EAChD,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC;oBAChC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;wBACpB,KAAK,EAAE,EAAE,EAAE,EAAE;wBACb,IAAI,EAAE;4BACJ,oBAAoB,EAAE,IAAA,sCAAwB,EAAC,KAAK,CAAC,OAAO,CAAC;yBAC9D;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,EAAU,EAAE,GAAyB;QACtE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,2BAAkB,CAAC,+BAA+B,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,KAAK,CAAC,cAAc,KAAK,uBAAc,CAAC,KAAK,EAAE,CAAC;YAClD,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,IAAI,8BAAqB,CAAC,IAAI,CAAC;QACjF,MAAM,IAAI,GAAG,IAAA,+BAAkB,EAC7B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,EACjE,KAAK,CAAC,SAAS,CAChB,CAAC;QAEF,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAC1C,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;oBAClC,OAAO,EAAE,EAAE;oBACX,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,SAAS,CAAC;iBAChD,CAAC,CAAC;aACJ,CAAC,CAAC;YACH,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,IAAI,EAAE;oBACJ,SAAS;oBACT,aAAa,EAAE,IAAI,CAAC,QAAQ;oBAC5B,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;oBAC7D,MAAM,EACJ,KAAK,CAAC,MAAM,KAAK,oBAAW,CAAC,eAAe;wBAC1C,CAAC,CAAC,oBAAW,CAAC,qBAAqB;wBACnC,CAAC,CAAC,KAAK,CAAC,MAAM;iBACnB;aACF,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,KAAK,oBAAW,CAAC,eAAe,EAAE,CAAC;gBACjD,MAAM,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE;wBACJ,OAAO,EAAE,EAAE;wBACX,UAAU,EAAE,KAAK,CAAC,MAAM;wBACxB,QAAQ,EAAE,oBAAW,CAAC,qBAAqB;wBAC3C,SAAS,EAAE,UAAU;wBACrB,IAAI,EAAE,+BAA+B;qBACtC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAEO,cAAc,CACpB,CAAsB,EACtB,GAAW,EACX,WAAkC;QAElC,OAAO;YACL,GAAG;YACH,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YAC5B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI;YAClC,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI;YAC1C,eAAe,EAAE,CAAC,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,IAAI;YAClD,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,IAAI;YAChD,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI;YAC9C,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,IAAI;YACpC,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,IAAI;YACxC,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,IAAI;YAChC,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI;YAC9B,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;YAC9B,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,WAAW;SAC5B,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,IAAA,kCAAmB,GAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;gBAChD,KAAK,EAAE,EAAE,WAAW,EAAE;aACvB,CAAC,CAAC;YACH,IAAI,CAAC,MAAM;gBAAE,OAAO,WAAW,CAAC;QAClC,CAAC;QACD,OAAO,GAAG,IAAA,kCAAmB,GAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,EAAU;QAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;YAC/C,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,OAAO,EAAE,YAAY;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;QAC1D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,QAAQ,CAAC,KAAgB,EAAE,SAAS,GAAG,KAAK;QAC1C,MAAM,YAAY,GAAG,IAAA,mBAAY,EAC/B,KAAK,CAAC,IAAI,CAAC,SAAS,EACpB,KAAK,CAAC,IAAI,CAAC,QAAQ,CACpB,CAAC;QACF,MAAM,IAAI,GAAG;YACX,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,gBAAgB,EAAE,KAAK,CAAC,cAAc;YACtC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,SAAS;YACvC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,WAAW,EAAE,IAAA,4BAAa,EAAC,KAAK,CAAC,MAAM,CAAC;YACxC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,QAAQ,EAAE,KAAK,CAAC,aAAa;YAC7B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,SAAS;YAC/B,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,SAAS;YAC/C,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE;YACjD,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,EAAE,WAAW,EAAE;YAC/D,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;YACxC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;YACxC,YAAY;YACZ,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;YAC/B,kBAAkB,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,SAAS;YACtD,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY;YACrC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChC,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;gBACtC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS;gBAC1C,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,WAAW,EAAE,IAAI,CAAC,SAAS;gBAC3B,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC;gBACpC,QAAQ,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC;gBAChC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,WAAW,EAAE,IAAI,CAAC,SAAS;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;aAC/B,CAAC,CAAC;YACH,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/B,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;gBAChC,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,SAAS;gBAC/B,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,SAAS;gBACvC,eAAe,EAAE,CAAC,CAAC,eAAe,IAAI,SAAS;gBAC/C,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,SAAS;gBAC7C,aAAa,EAAE,CAAC,CAAC,aAAa,IAAI,SAAS;gBAC3C,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,EAAE;gBAC1B,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,SAAS;gBACrC,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,SAAS;gBACrC,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,SAAS;gBACnC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,SAAS;gBAC3B,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE;gBACpC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;YACH,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC5B,CAAC,CAAC;oBACE,EAAE,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE;oBACxB,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,MAAM;oBAChC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,UAAU;oBACxC,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,WAAW,EAAE,IAAI,IAAI;oBACnE,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY,IAAI,SAAS;oBACzD,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC,cAAc,IAAI,SAAS;oBAC7D,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,cAAc,IAAI,SAAS;oBAC3D,oBAAoB,EAClB,KAAK,CAAC,WAAW,CAAC,oBAAoB,IAAI,SAAS;oBACrD,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY,IAAI,SAAS;oBACzD,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,SAAS;oBAC3C,SAAS,EACP,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE;wBAC1C,KAAK,CAAC,oBAAoB,EAAE,WAAW,EAAE;oBAC3C,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,MAAM;oBAChC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,EAAE;oBACzD,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,WAAW,EAAE;iBACrD;gBACH,CAAC,CAAC,SAAS;YACb,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACtB,CAAC,CAAC;oBACE,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE;oBACrB,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;oBAC/B,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;oBAC/B,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE;oBACnD,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ;oBACjC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;oBAC7B,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,IAAI;oBAC1D,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,IAAI;iBAC/D;gBACH,CAAC,CAAC,SAAS;YACb,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7C,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,SAAS;gBACzB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,SAAS;gBAC7B,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;SACJ,CAAC;QAEF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAllBY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAE0B,8BAAa;GADvC,aAAa,CAklBzB"} \ No newline at end of file +{"version":3,"file":"orders.service.js","sourceRoot":"","sources":["../../src/orders/orders.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/products/products.service.js b/dist/products/products.service.js index 9cb5561..14df419 100644 --- a/dist/products/products.service.js +++ b/dist/products/products.service.js @@ -83,7 +83,8 @@ let ProductsService = class ProductsService { return this.map(product); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('کد محصول در این شرکت تکراری است'); } throw e; @@ -131,7 +132,8 @@ let ProductsService = class ProductsService { return this.map(product); } catch (e) { - if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && + e.code === 'P2002') { throw new common_1.ConflictException('کد محصول در این شرکت تکراری است'); } throw e; diff --git a/dist/products/products.service.js.map b/dist/products/products.service.js.map index c2cc8fc..cc47059 100644 --- a/dist/products/products.service.js.map +++ b/dist/products/products.service.js.map @@ -1 +1 @@ -{"version":3,"file":"products.service.js","sourceRoot":"","sources":["../../src/products/products.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"products.service.js","sourceRoot":"","sources":["../../src/products/products.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/shipments/shipments.controller.js.map b/dist/shipments/shipments.controller.js.map index e4b7b37..8c5e6f4 100644 --- a/dist/shipments/shipments.controller.js.map +++ b/dist/shipments/shipments.controller.js.map @@ -1 +1 @@ -{"version":3,"file":"shipments.controller.js","sourceRoot":"","sources":["../../src/shipments/shipments.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAQwB;AACxB,2CAAgD;AAChD,2DAAuD;AACvD,0EAAgE;AAChE,wFAA0E;AAE1E,qDAI4B;AAIrB,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IACD;IAA7B,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAGnE,OAAO,CAAkB,MAAuB;QAC9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAGD,OAAO,CAAc,EAAU;QAC7B,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAGD,MAAM,CACW,IAAmB,EAC1B,GAAsB;QAE9B,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAGD,MAAM,CAAc,EAAU,EAAU,GAAsB;QAC5D,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAGD,aAAa,CACI,IAAmB,EACrB,EAAU,EACf,GAA6B;QAErC,OAAO,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;CACF,CAAA;AAlCY,kDAAmB;AAI9B;IADC,IAAA,YAAG,GAAE;IACG,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;kDAEvB;AAGD;IADC,IAAA,YAAG,EAAC,KAAK,CAAC;IACF,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;kDAEnB;AAGD;IADC,IAAA,aAAI,GAAE;IAEJ,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,gCAAiB;;iDAG/B;AAGD;IADC,IAAA,cAAK,EAAC,KAAK,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IAAc,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,gCAAiB;;iDAE7D;AAGD;IADC,IAAA,cAAK,EAAC,YAAY,CAAC;IAEjB,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IACX,WAAA,IAAA,aAAI,GAAE,CAAA;;qDAAM,uCAAwB;;wDAGtC;8BAjCU,mBAAmB;IAF/B,IAAA,mBAAU,EAAC,iBAAiB,CAAC;IAC7B,IAAA,0BAAQ,EAAC,OAAO,CAAC;qCAE+B,oCAAgB;GADpD,mBAAmB,CAkC/B"} \ No newline at end of file +{"version":3,"file":"shipments.controller.js","sourceRoot":"","sources":["../../src/shipments/shipments.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAQwB;AACxB,2CAAgD;AAChD,2DAAuD;AACvD,0EAAgE;AAChE,wFAA0E;AAE1E,qDAI4B;AAIrB,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IACD;IAA7B,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAGnE,OAAO,CAAkB,MAAuB;QAC9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAGD,OAAO,CAAc,EAAU;QAC7B,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAGD,MAAM,CAAgB,IAAmB,EAAU,GAAsB;QACvE,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAGD,MAAM,CAAc,EAAU,EAAU,GAAsB;QAC5D,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAGD,aAAa,CACI,IAAmB,EACrB,EAAU,EACf,GAA6B;QAErC,OAAO,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;CACF,CAAA;AA/BY,kDAAmB;AAI9B;IADC,IAAA,YAAG,GAAE;IACG,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;kDAEvB;AAGD;IADC,IAAA,YAAG,EAAC,KAAK,CAAC;IACF,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;kDAEnB;AAGD;IADC,IAAA,aAAI,GAAE;IACC,WAAA,IAAA,oCAAW,GAAE,CAAA;IAAuB,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,gCAAiB;;iDAExE;AAGD;IADC,IAAA,cAAK,EAAC,KAAK,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IAAc,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,gCAAiB;;iDAE7D;AAGD;IADC,IAAA,cAAK,EAAC,YAAY,CAAC;IAEjB,WAAA,IAAA,oCAAW,GAAE,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IACX,WAAA,IAAA,aAAI,GAAE,CAAA;;qDAAM,uCAAwB;;wDAGtC;8BA9BU,mBAAmB;IAF/B,IAAA,mBAAU,EAAC,iBAAiB,CAAC;IAC7B,IAAA,0BAAQ,EAAC,OAAO,CAAC;qCAE+B,oCAAgB;GADpD,mBAAmB,CA+B/B"} \ No newline at end of file diff --git a/dist/shipments/shipments.service.js.map b/dist/shipments/shipments.service.js.map index 404f124..603eacf 100644 --- a/dist/shipments/shipments.service.js.map +++ b/dist/shipments/shipments.service.js.map @@ -1 +1 @@ -{"version":3,"file":"shipments.service.js","sourceRoot":"","sources":["../../src/shipments/shipments.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAKwB;AACxB,2CAA6D;AAC7D,6DAAyD;AAMzD,+CAAoD;AAEpD,MAAM,WAAW,GAAqB;IACpC,uBAAc,CAAC,SAAS;IACxB,uBAAc,CAAC,KAAK;IACpB,uBAAc,CAAC,OAAO;IACtB,uBAAc,CAAC,SAAS;CACzB,CAAC;AAEF,MAAM,iBAAiB,GAAwC;IAC7D,SAAS,EAAE,oBAAW,CAAC,SAAS;IAChC,KAAK,EAAE,oBAAW,CAAC,aAAa;IAChC,OAAO,EAAE,oBAAW,CAAC,OAAO;IAC5B,SAAS,EAAE,oBAAW,CAAC,SAAS;CACjC,CAAC;AAGK,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IACE;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,KAAK,CAAC,OAAO,CAAC,MAAuB;QACnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACpD,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;YACtC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;YAC9B,OAAO,EAAE;gBACP,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;aACnC;SACF,CAAC,CAAC;QACH,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;YACrD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;SAChD,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,GAAsB;QAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;YAC/C,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE;YAC1B,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;QAC1D,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,0BAAiB,CAAC,wCAAwC,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,uBAAc,CAAC,SAAS,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAC3D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE;oBACJ,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE;oBAC3B,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,IAAI;oBAClD,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,KAAK,CAAC,aAAa;oBAC7C,MAAM;oBACN,SAAS,EAAE,MAAM,KAAK,uBAAc,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;oBAChE,WAAW,EAAE,MAAM,KAAK,uBAAc,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;iBACrE;gBACD,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;aAChD,CAAC,CAAC;YAEH,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,KAAK,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;gBACrC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;oBACpB,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;oBACvB,IAAI,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE;iBAClC,CAAC,CAAC;gBACH,MAAM,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE;wBACJ,OAAO,EAAE,KAAK,CAAC,EAAE;wBACjB,UAAU,EAAE,KAAK,CAAC,MAAM;wBACxB,QAAQ,EAAE,eAAe;wBACzB,SAAS,EAAE,SAAS,OAAO,EAAE;wBAC7B,IAAI,EAAE,WAAW;qBAClB;iBACF,CAAC,CAAC;YACL,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,GAAsB;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE;gBACJ,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE;gBAC5B,cAAc,EACZ,GAAG,CAAC,cAAc,KAAK,SAAS;oBAC9B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,IAAI;gBACxC,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,MAAM,EAAE,GAAG,CAAC,MAAM;aACnB;YACD,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;SAChD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,EAAU,EACV,OAAe,EACf,GAA6B;QAE7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;YACrD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;SAChD,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;QAE7D,IAAI,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,4BAAmB,CAAC,8BAA8B,CAAC,CAAC;YAChE,CAAC;YACD,UAAU,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC,CAAE,CAAC;QACrC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAC1D,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACtC,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,IAAI,EAAE;oBACJ,MAAM,EAAE,UAAU;oBAClB,cAAc,EACZ,GAAG,CAAC,cAAc,KAAK,SAAS;wBAC9B,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,IAAI;wBACnC,CAAC,CAAC,SAAS;oBACf,SAAS,EACP,UAAU,KAAK,uBAAc,CAAC,OAAO;wBACnC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;wBACpC,CAAC,CAAC,QAAQ,CAAC,SAAS;oBACxB,WAAW,EACT,UAAU,KAAK,uBAAc,CAAC,SAAS;wBACrC,CAAC,CAAC,IAAI,IAAI,EAAE;wBACZ,CAAC,CAAC,QAAQ,CAAC,WAAW;iBAC3B;gBACD,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;aAChD,CAAC,CAAC;YAEH,MAAM,eAAe,GAAG,iBAAiB,CAAC,UAAW,CAAC,CAAC;YACvD,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;gBAC9C,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;oBACpB,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,OAAO,EAAE;oBAC/B,IAAI,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE;iBAClC,CAAC,CAAC;gBACH,MAAM,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE;wBACJ,OAAO,EAAE,QAAQ,CAAC,OAAO;wBACzB,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;wBACjC,QAAQ,EAAE,eAAe;wBACzB,SAAS,EAAE,SAAS,OAAO,EAAE;wBAC7B,IAAI,EAAE,gBAAgB,UAAU,EAAE;qBACnC;iBACF,CAAC,CAAC;YACL,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,EAAU;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;QAC7D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,GAAG,CAAC,CAeX;QACC,OAAO;YACL,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW;YAChC,YAAY,EAAE,IAAA,mBAAY,EAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;YACzE,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,EAAE;YACtC,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,IAAI;YAC7C,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,IAAI;YACjD,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE;YACpC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE;SACrC,CAAC;IACJ,CAAC;CACF,CAAA;AA9LY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;qCAE0B,8BAAa;GADvC,gBAAgB,CA8L5B"} \ No newline at end of file +{"version":3,"file":"shipments.service.js","sourceRoot":"","sources":["../../src/shipments/shipments.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/sms/sms.module.d.ts b/dist/sms/sms.module.d.ts new file mode 100644 index 0000000..fa8c623 --- /dev/null +++ b/dist/sms/sms.module.d.ts @@ -0,0 +1,2 @@ +export declare class SmsModule { +} diff --git a/dist/sms/sms.module.js b/dist/sms/sms.module.js new file mode 100644 index 0000000..bc6d50b --- /dev/null +++ b/dist/sms/sms.module.js @@ -0,0 +1,21 @@ +"use strict"; +var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SmsModule = void 0; +const common_1 = require("@nestjs/common"); +const sms_service_1 = require("./sms.service"); +let SmsModule = class SmsModule { +}; +exports.SmsModule = SmsModule; +exports.SmsModule = SmsModule = __decorate([ + (0, common_1.Module)({ + providers: [sms_service_1.SmsService], + exports: [sms_service_1.SmsService], + }) +], SmsModule); +//# sourceMappingURL=sms.module.js.map \ No newline at end of file diff --git a/dist/sms/sms.module.js.map b/dist/sms/sms.module.js.map new file mode 100644 index 0000000..e25e2f1 --- /dev/null +++ b/dist/sms/sms.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sms.module.js","sourceRoot":"","sources":["../../src/sms/sms.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+CAA2C;AAMpC,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IAJrB,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,wBAAU,CAAC;QACvB,OAAO,EAAE,CAAC,wBAAU,CAAC;KACtB,CAAC;GACW,SAAS,CAAG"} \ No newline at end of file diff --git a/dist/sms/sms.service.d.ts b/dist/sms/sms.service.d.ts new file mode 100644 index 0000000..d2ba65a --- /dev/null +++ b/dist/sms/sms.service.d.ts @@ -0,0 +1,14 @@ +import { ConfigService } from '@nestjs/config'; +export type SmsSendResult = { + success: boolean; + raw: unknown; +}; +export declare class SmsService { + private readonly config; + private readonly logger; + constructor(config: ConfigService); + isEnabled(): boolean; + send(to: string, message: string): Promise; + buildOtpMessage(code: string): string; + private resolveHost; +} diff --git a/dist/sms/sms.service.js b/dist/sms/sms.service.js new file mode 100644 index 0000000..59cbacf --- /dev/null +++ b/dist/sms/sms.service.js @@ -0,0 +1,104 @@ +"use strict"; +var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +}; +var __metadata = (this && this.__metadata) || function (k, v) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); +}; +var SmsService_1; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SmsService = void 0; +const common_1 = require("@nestjs/common"); +const config_1 = require("@nestjs/config"); +function maskPhone(phone) { + return phone.length <= 4 + ? '****' + : `${phone.slice(0, 4)}****${phone.slice(-2)}`; +} +let SmsService = SmsService_1 = class SmsService { + config; + logger = new common_1.Logger(SmsService_1.name); + constructor(config) { + this.config = config; + } + isEnabled() { + const raw = (this.config.get('SMS_ENABLED', 'true') ?? 'true').toLowerCase(); + return raw === '1' || raw === 'true' || raw === 'yes'; + } + async send(to, message) { + const url = this.config.get('SMS_API_URL', 'http://185.231.112.101/api/createsms'); + const secretKey = this.config.get('SMS_SECRET_KEY')?.trim(); + if (!secretKey) { + this.logger.error('SMS_SECRET_KEY تنظیم نشده است'); + return { success: false, raw: 'SMS_SECRET_KEY missing' }; + } + const platform = this.config.get('SMS_PLATFORM', 'rayegansms'); + const host = this.resolveHost(); + try { + const response = await fetch(url, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + secret_key: secretKey, + }, + body: JSON.stringify({ + phone: to, + host, + text: message.trim(), + platform, + }), + signal: AbortSignal.timeout(15_000), + }); + const text = await response.text(); + let body = text; + try { + body = text ? JSON.parse(text) : null; + } + catch { + } + let success = response.ok; + if (success && body && typeof body === 'object') { + const obj = body; + if ('success' in obj && obj.success === false) + success = false; + else if ('ok' in obj && obj.ok === false) + success = false; + else if (typeof obj.status === 'string' && + ['error', 'failed', 'fail'].includes(obj.status.toLowerCase())) { + success = false; + } + } + if (!success) { + this.logger.warn(`SMS failed to ${maskPhone(to)}: ${JSON.stringify(body)}`); + } + return { success, raw: body }; + } + catch (err) { + this.logger.error(`SMS request error to ${maskPhone(to)}`, err instanceof Error ? err.stack : err); + return { + success: false, + raw: err instanceof Error ? err.message : String(err), + }; + } + } + buildOtpMessage(code) { + const appName = this.config.get('SMS_APP_NAME', 'پارچه'); + return `رمز عبور یکبار مصرف شما جهت ورود به اپلیکیشن ${appName} ${code} می باشد`; + } + resolveHost() { + const fromEnv = this.config.get('SMS_HOST')?.trim() || + this.config.get('SMS_APP_NAME')?.trim(); + if (fromEnv) + return fromEnv; + return 'fabric'; + } +}; +exports.SmsService = SmsService; +exports.SmsService = SmsService = SmsService_1 = __decorate([ + (0, common_1.Injectable)(), + __metadata("design:paramtypes", [config_1.ConfigService]) +], SmsService); +//# sourceMappingURL=sms.service.js.map \ No newline at end of file diff --git a/dist/sms/sms.service.js.map b/dist/sms/sms.service.js.map new file mode 100644 index 0000000..d388cad --- /dev/null +++ b/dist/sms/sms.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sms.service.js","sourceRoot":"","sources":["../../src/sms/sms.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/docker-compose.prebuilt.yml b/docker-compose.prebuilt.yml index 4e69fb0..bf0d8a2 100644 --- a/docker-compose.prebuilt.yml +++ b/docker-compose.prebuilt.yml @@ -28,11 +28,20 @@ services: condition: service_healthy environment: DATABASE_URL: postgresql://${POSTGRES_USER:-fabric}:${POSTGRES_PASSWORD:-fabric123}@postgres:5432/${POSTGRES_DB:-fabric_trade}?schema=public - JWT_SECRET: ${JWT_SECRET:-fabric-trade-dev-secret-change-me} + JWT_SECRET: ${JWT_SECRET:?JWT_SECRET is required} JWT_EXPIRES_IN: ${JWT_EXPIRES_IN:-7d} PORT: 3000 - MOCK_OTP_CODE: ${MOCK_OTP_CODE:-123456} + MOCK_OTP_CODE: ${MOCK_OTP_CODE:-1234} OTP_TTL_MINUTES: ${OTP_TTL_MINUTES:-5} + SMS_ENABLED: ${SMS_ENABLED:-true} + SMS_API_URL: ${SMS_API_URL:-http://185.231.112.101/api/createsms} + SMS_SECRET_KEY: ${SMS_SECRET_KEY:-} + SMS_PLATFORM: ${SMS_PLATFORM:-rayegansms} + SMS_HOST: ${SMS_HOST:-پارچه} + SMS_APP_NAME: ${SMS_APP_NAME:-پارچه} + BODY_LIMIT: ${BODY_LIMIT:-25mb} + TZ: ${TZ:-Asia/Tehran} + NODE_ENV: ${NODE_ENV:-production} RUN_SEED: ${RUN_SEED:-false} ports: - '127.0.0.1:${API_PORT:-3000}:3000' diff --git a/docker-compose.yml b/docker-compose.yml index 6f4c519..02f73b5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -33,6 +33,7 @@ services: environment: DATABASE_URL: postgresql://${POSTGRES_USER:-fabric}:${POSTGRES_PASSWORD:-fabric123}@postgres:5432/${POSTGRES_DB:-fabric_trade}?schema=public PORT: ${PORT:-3000} + TZ: ${TZ:-Asia/Tehran} ports: - '127.0.0.1:${API_PORT:-8585}:3000' diff --git a/package.json b/package.json index 710c691..6b4a0c6 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "test:cov": "jest --coverage", "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand", "test:e2e": "jest --config ./test/jest-e2e.json", + "test:smoke": "node scripts/smoke-order-flow.mjs", "prisma:generate": "prisma generate", "prisma:migrate": "prisma migrate dev", "prisma:deploy": "prisma migrate deploy", diff --git a/prisma/migrations/20260808000000_otp_attempts/migration.sql b/prisma/migrations/20260808000000_otp_attempts/migration.sql new file mode 100644 index 0000000..c790fe3 --- /dev/null +++ b/prisma/migrations/20260808000000_otp_attempts/migration.sql @@ -0,0 +1,2 @@ +-- شمارنده تلاش ناموفق برای جلوگیری از حدس‌زدن کد ۴ رقمی +ALTER TABLE "OtpChallenge" ADD COLUMN "attempts" INTEGER NOT NULL DEFAULT 0; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 743ab8a..8a718c2 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -210,6 +210,7 @@ model OtpChallenge { firstName String? lastName String? isRegister Boolean @default(false) + attempts Int @default(0) expiresAt DateTime createdAt DateTime @default(now()) diff --git a/prisma/seed.ts b/prisma/seed.ts index 998f254..6ef30a6 100644 --- a/prisma/seed.ts +++ b/prisma/seed.ts @@ -636,7 +636,7 @@ async function main() { void order1; console.log('Seed completed successfully.'); console.log('Admin login: 09121112222 / admin123'); - console.log('Customer OTP login: 09121234567 / code 123456'); + console.log('Customer OTP login: 09121234567 / code 1234'); } main() diff --git a/scripts/smoke-order-flow.mjs b/scripts/smoke-order-flow.mjs new file mode 100644 index 0000000..87823cc --- /dev/null +++ b/scripts/smoke-order-flow.mjs @@ -0,0 +1,335 @@ +/** + * تست دود جریان کامل سفارش: ورود مشتری، سبد، ثبت چکی و نقدی، + * قیمت‌گذاری ادمین، رسید نقدی و بررسی وضعیت‌ها. + * اجرا: node scripts/smoke-order-flow.mjs + */ +const BASE = process.env.SMOKE_BASE_URL || 'http://127.0.0.1:3999/api'; +const CUSTOMER_PHONE = '09121234567'; +const ADMIN_PHONE = '09121112222'; +const ADMIN_PASSWORD = 'admin123'; + +let passed = 0; +let failed = 0; + +function check(name, condition, detail) { + if (condition) { + passed++; + console.log(` PASS ${name}`); + } else { + failed++; + console.log(` FAIL ${name}${detail ? ` → ${detail}` : ''}`); + } +} + +async function api(path, { method = 'GET', body, token } = {}) { + const res = await fetch(`${BASE}${path}`, { + method, + headers: { + Accept: 'application/json', + ...(body ? { 'Content-Type': 'application/json' } : {}), + ...(token ? { Authorization: `Bearer ${token}` } : {}), + }, + body: body ? JSON.stringify(body) : undefined, + }); + const text = await res.text(); + let data = null; + try { + data = text ? JSON.parse(text) : null; + } catch { + data = text; + } + return { status: res.status, data }; +} + +function jalaliIsoInDays(days) { + const d = new Date(Date.now() + days * 86400000); + return d.toISOString().slice(0, 10); +} + +/** تصویر base64 بزرگ‌تر از سقف پیش‌فرض ۱۰۰KB اکسپرس */ +function bigBase64(kb) { + return `data:image/jpeg;base64,${'A'.repeat(kb * 1024)}`; +} + +async function main() { + console.log(`\n== Smoke test @ ${BASE} ==\n`); + + console.log('[1] احراز هویت'); + const otp = await api('/auth/otp/request', { + method: 'POST', + body: { phone: CUSTOMER_PHONE }, + }); + check('درخواست OTP', otp.status === 201 || otp.status === 200, `status=${otp.status}`); + const code = otp.data?.debugCode ?? '1234'; + check('کد OTP چهار رقمی است', /^\d{4}$/.test(String(code)), `code=${code}`); + + const badVerify = await api('/auth/otp/verify', { + method: 'POST', + body: { phone: CUSTOMER_PHONE, code: '0000' === code ? '1111' : '0000' }, + }); + check('کد اشتباه رد می‌شود', badVerify.status === 401, `status=${badVerify.status}`); + + const verify = await api('/auth/otp/verify', { + method: 'POST', + body: { phone: CUSTOMER_PHONE, code: String(code) }, + }); + check('ورود مشتری', !!verify.data?.accessToken, JSON.stringify(verify.data).slice(0, 120)); + const userToken = verify.data?.accessToken; + + const adminLogin = await api('/admin/auth/login', { + method: 'POST', + body: { phone: ADMIN_PHONE, password: ADMIN_PASSWORD }, + }); + check('ورود ادمین', !!adminLogin.data?.accessToken, JSON.stringify(adminLogin.data).slice(0, 120)); + const adminToken = adminLogin.data?.accessToken; + + console.log('\n[2] جداسازی دسترسی'); + const crossAccess = await api('/admin/orders', { token: userToken }); + check('توکن مشتری به مسیر ادمین دسترسی ندارد', crossAccess.status === 403, `status=${crossAccess.status}`); + const custWithAdmin = await api('/orders', { token: adminToken }); + check('توکن ادمین به مسیر مشتری دسترسی ندارد', custWithAdmin.status === 403, `status=${custWithAdmin.status}`); + const noToken = await api('/orders'); + check('بدون توکن ۴۰۱', noToken.status === 401, `status=${noToken.status}`); + + console.log('\n[3] سبد خرید'); + const companies = await api('/companies/public'); + const company = companies.data?.[0]; + check('لیست شرکت‌ها', !!company, JSON.stringify(companies.data).slice(0, 120)); + + const products = await api(`/products?companyId=${company.id}`, { token: userToken }); + const product = (Array.isArray(products.data) ? products.data : products.data?.items)?.find( + (p) => p.companyId === company.id, + ); + check('لیست محصولات', !!product, JSON.stringify(products.data).slice(0, 160)); + + const meterage = Math.max(product.minMeterage ?? 1, product.orderMultiplier ?? 1); + await api('/carts', { method: 'DELETE', token: userToken }); + const addItem = await api('/carts/items', { + method: 'POST', + token: userToken, + body: { productId: product.id, meterage }, + }); + check('افزودن به سبد', addItem.status < 300, `status=${addItem.status} ${JSON.stringify(addItem.data).slice(0, 120)}`); + + console.log('\n[4] ثبت سفارش چکی با تصویر بزرگ'); + const checkOrder = await api('/orders', { + method: 'POST', + token: userToken, + body: { + companyId: company.id, + settlementType: 'check', + checkMode: 'full', + items: [{ productId: product.id, meterage }], + checks: [ + { + amount: 2000000, + dueDate: jalaliIsoInDays(30), + sayadId: '1234567890123456', + checkNumber: '123456', + ownerNationalId: '0012345678', + ownerFirstName: 'علی', + ownerLastName: 'رضایی', + bankName: 'ملی', + branchName: 'مرکزی', + frontImage: bigBase64(300), + backImage: bigBase64(300), + mode: 'full', + }, + ], + }, + }); + check( + 'ثبت سفارش چکی (بدنه ~۶۰۰KB)', + checkOrder.status < 300, + `status=${checkOrder.status} ${JSON.stringify(checkOrder.data).slice(0, 200)}`, + ); + const checkOrderId = checkOrder.data?.id; + check('راس چک محاسبه شد', checkOrder.data?.checkRassDays === 30, `rass=${checkOrder.data?.checkRassDays}`); + + console.log('\n[5] فیلدهای اضافه باید رد شوند'); + const extraField = await api('/orders', { + method: 'POST', + token: userToken, + body: { + companyId: company.id, + settlementType: 'cash', + items: [{ productId: product.id, meterage }], + bogusField: 'x', + }, + }); + check('فیلد ناشناخته ۴۰۰ می‌دهد', extraField.status === 400, `status=${extraField.status}`); + + console.log('\n[6] ثبت سفارش نقدی'); + await api('/carts/items', { + method: 'POST', + token: userToken, + body: { productId: product.id, meterage }, + }); + const cashOrder = await api('/orders', { + method: 'POST', + token: userToken, + body: { + companyId: company.id, + settlementType: 'cash', + items: [{ productId: product.id, meterage }], + }, + }); + check('ثبت سفارش نقدی', cashOrder.status < 300, `status=${cashOrder.status} ${JSON.stringify(cashOrder.data).slice(0, 200)}`); + const cashOrderId = cashOrder.data?.id; + const expiry = cashOrder.data?.cashInvoiceExpiresAt; + check('انقضای فاکتور در آینده است', !!expiry && new Date(expiry) > new Date(), `expiry=${expiry}`); + + console.log('\n[7] سفارش در لیست مشتری دیده می‌شود'); + const myOrders = await api('/orders', { token: userToken }); + const ids = (myOrders.data ?? []).map((o) => o.id); + check('سفارش چکی در لیست', ids.includes(checkOrderId)); + check('سفارش نقدی در لیست', ids.includes(cashOrderId)); + + console.log('\n[8] لیست و فیلتر ادمین'); + const adminOrders = await api('/admin/orders', { token: adminToken }); + const adminIds = (adminOrders.data ?? []).map((o) => o.id); + check('هر دو سفارش برای ادمین', adminIds.includes(checkOrderId) && adminIds.includes(cashOrderId)); + const adminStatuses = new Set((adminOrders.data ?? []).map((o) => o.adminStatus)); + const allowedTabs = new Set([ + 'pending_review', + 'pending_check', + 'needs_correction', + 'check_correction', + 'final_approval', + 'shipped', + 'delivered', + 'cancelled', + 'rejected', + 'expired', + ]); + const unknown = [...adminStatuses].filter((s) => !allowedTabs.has(s)); + check('همه وضعیت‌ها به تب معتبر نگاشت شده‌اند', unknown.length === 0, `unknown=${unknown.join(',')}`); + + const filtered = await api('/admin/orders?status=pending_review', { token: adminToken }); + check( + 'فیلتر «در انتظار بررسی» سفارش‌ها را برمی‌گرداند', + (filtered.data ?? []).some((o) => o.id === cashOrderId), + `count=${(filtered.data ?? []).length}`, + ); + + console.log('\n[9] قیمت‌گذاری ادمین'); + const detail = await api(`/admin/orders/${cashOrderId}`, { token: adminToken }); + const items = detail.data?.items ?? []; + check('سفارش آیتم دارد', items.length > 0); + const pricing = await api(`/admin/orders/${cashOrderId}/pricing`, { + method: 'PATCH', + token: adminToken, + body: { + items: [{ id: items[0].id, confirmedMeterage: meterage, unitPrice: 100000, unitDiscount: 0 }], + shippingCost: 50000, + }, + }); + const expectedTotal = 100000 * meterage; + check('قیمت‌گذاری موفق', pricing.status < 300, `status=${pricing.status} ${JSON.stringify(pricing.data).slice(0, 150)}`); + check( + 'جمع کل درست است', + Math.abs((pricing.data?.totalAmount ?? 0) - expectedTotal) < 0.01, + `total=${pricing.data?.totalAmount} expected=${expectedTotal}`, + ); + check( + 'مبلغ نهایی = جمع + حمل', + Math.abs((pricing.data?.finalAmount ?? 0) - (expectedTotal + 50000)) < 0.01, + `final=${pricing.data?.finalAmount}`, + ); + + const badDiscount = await api(`/admin/orders/${cashOrderId}/pricing`, { + method: 'PATCH', + token: adminToken, + body: { items: [{ id: items[0].id, unitPrice: 1000, unitDiscount: 5000 }] }, + }); + check('تخفیف بیشتر از قیمت رد می‌شود', badDiscount.status === 400, `status=${badDiscount.status}`); + + console.log('\n[10] رسید پرداخت نقدی'); + const accounts = await api(`/companies/${company.id}/bank-accounts`, { token: userToken }); + const account = (accounts.data ?? [])[0]; + check('حساب بانکی موجود', !!account, JSON.stringify(accounts.data).slice(0, 120)); + + const receipt = await api(`/orders/${cashOrderId}/cash-receipt`, { + method: 'POST', + token: userToken, + body: { + amount: expectedTotal + 50000, + transferDate: jalaliIsoInDays(0), + transferTime: '12:00', + trackingNumber: '987654321', + destinationAccountId: account.id, + receiptImage: bigBase64(400), + }, + }); + check('ثبت رسید (تصویر ۴۰۰KB)', receipt.status < 300, `status=${receipt.status} ${JSON.stringify(receipt.data).slice(0, 200)}`); + + const afterReceipt = await api(`/orders/${cashOrderId}`, { token: userToken }); + check( + 'وضعیت به تأیید پرداخت رفت', + afterReceipt.data?.status === 'awaiting_cash_confirmation', + `status=${afterReceipt.data?.status}`, + ); + + console.log('\n[11] دسترسی متقاطع بین مشتری‌ها'); + const otherPhone = '09129999001'; + await api('/auth/otp/request', { + method: 'POST', + body: { phone: otherPhone, firstName: 'تست', lastName: 'دوم', isRegister: true }, + }); + const otherVerify = await api('/auth/otp/verify', { + method: 'POST', + body: { phone: otherPhone, code: String(code) }, + }); + const otherToken = otherVerify.data?.accessToken; + check('ثبت‌نام مشتری دوم', !!otherToken, JSON.stringify(otherVerify.data).slice(0, 120)); + if (otherToken) { + const foreign = await api(`/orders/${cashOrderId}`, { token: otherToken }); + check('سفارش دیگری قابل خواندن نیست', foreign.status === 403, `status=${foreign.status}`); + const foreignReceipt = await api(`/orders/${cashOrderId}/cash-receipt`, { + method: 'POST', + token: otherToken, + body: { + amount: 1000, + transferDate: jalaliIsoInDays(0), + transferTime: '12:00', + trackingNumber: '1', + destinationAccountId: account.id, + }, + }); + check('رسید روی سفارش دیگری رد می‌شود', foreignReceipt.status === 403, `status=${foreignReceipt.status}`); + } + + console.log('\n[12] محافظت از ویرایش چک بعد از تأیید'); + const approve = await api(`/admin/orders/${checkOrderId}/status`, { + method: 'PATCH', + token: adminToken, + body: { status: 'delivered' }, + }); + check('تغییر وضعیت توسط ادمین', approve.status < 300, `status=${approve.status}`); + const lateEdit = await api(`/orders/${checkOrderId}/checks`, { + method: 'PATCH', + token: userToken, + body: { checks: [{ amount: 1, dueDate: jalaliIsoInDays(10), mode: 'brief' }] }, + }); + check('ویرایش چک بعد از تحویل رد می‌شود', lateEdit.status === 400, `status=${lateEdit.status}`); + const lateReceipt = await api(`/orders/${checkOrderId}/cash-receipt`, { + method: 'POST', + token: userToken, + body: { + amount: 1000, + transferDate: jalaliIsoInDays(0), + transferTime: '12:00', + trackingNumber: '1', + destinationAccountId: account.id, + }, + }); + check('رسید نقدی روی سفارش چکی رد می‌شود', lateReceipt.status === 400, `status=${lateReceipt.status}`); + + console.log(`\n== نتیجه: ${passed} موفق، ${failed} ناموفق ==\n`); + process.exit(failed === 0 ? 0 : 1); +} + +main().catch((e) => { + console.error('اجرای تست شکست خورد:', e); + process.exit(1); +}); diff --git a/setup.sh b/setup.sh index 34be907..1ca0b3a 100644 --- a/setup.sh +++ b/setup.sh @@ -35,4 +35,4 @@ echo " npm run start:dev" echo "" echo "Swagger: http://localhost:3000/api/docs" echo "Admin: 09121112222 / admin123" -echo "OTP: 09121234567 / 123456" +echo "OTP: 09121234567 / 1234" diff --git a/src/admin-users/admin-users.service.ts b/src/admin-users/admin-users.service.ts index 2af75c3..c3c61b6 100644 --- a/src/admin-users/admin-users.service.ts +++ b/src/admin-users/admin-users.service.ts @@ -56,7 +56,10 @@ export class AdminUsersService { }); return this.map(user); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('شماره یا ایمیل تکراری است'); } throw e; @@ -91,7 +94,10 @@ export class AdminUsersService { }); return this.map(user); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('شماره یا ایمیل تکراری است'); } throw e; diff --git a/src/auth/auth.module.ts b/src/auth/auth.module.ts index cd294ec..667ee01 100644 --- a/src/auth/auth.module.ts +++ b/src/auth/auth.module.ts @@ -3,16 +3,19 @@ import { JwtModule } from '@nestjs/jwt'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { AuthService } from './auth.service'; import { AuthController } from './auth.controller'; +import { SmsModule } from '../sms/sms.module'; +import { resolveJwtSecret } from '../common/utils/jwt-secret'; @Module({ imports: [ + SmsModule, JwtModule.registerAsync({ imports: [ConfigModule], inject: [ConfigService], useFactory: (config: ConfigService) => ({ - secret: config.get('JWT_SECRET', 'fabric-trade-dev-secret'), + secret: resolveJwtSecret(config), signOptions: { - expiresIn: config.get('JWT_EXPIRES_IN', '7d') as `${number}d`, + expiresIn: config.get('JWT_EXPIRES_IN', '7d'), }, }), }), diff --git a/src/auth/auth.service.ts b/src/auth/auth.service.ts index 702811c..f07ffde 100644 --- a/src/auth/auth.service.ts +++ b/src/auth/auth.service.ts @@ -1,19 +1,28 @@ import { BadRequestException, Injectable, + ServiceUnavailableException, UnauthorizedException, } from '@nestjs/common'; import { ConfigService } from '@nestjs/config'; import { JwtService } from '@nestjs/jwt'; +import { randomInt } from 'node:crypto'; import * as bcrypt from 'bcryptjs'; import { PrismaService } from '../prisma/prisma.service'; +import { SmsService } from '../sms/sms.service'; import { AdminLoginDto, RequestOtpDto, UpdateProfileDto, VerifyOtpDto, } from './dto/auth.dto'; -import { isValidPhone, normalizePhone, toEnglishDigits } from '../common/utils/phone'; +import { + isValidPhone, + normalizePhone, + toEnglishDigits, +} from '../common/utils/phone'; + +const MAX_OTP_ATTEMPTS = 5; @Injectable() export class AuthService { @@ -21,6 +30,7 @@ export class AuthService { private readonly prisma: PrismaService, private readonly jwt: JwtService, private readonly config: ConfigService, + private readonly sms: SmsService, ) {} async requestOtp(dto: RequestOtpDto) { @@ -29,7 +39,9 @@ export class AuthService { throw new BadRequestException('شماره موبایل نامعتبر است'); } - const existing = await this.prisma.customer.findUnique({ where: { phone } }); + const existing = await this.prisma.customer.findUnique({ + where: { phone }, + }); const isRegister = Boolean(dto.isRegister); if (isRegister) { @@ -41,33 +53,58 @@ export class AuthService { } } else if (!existing) { throw new BadRequestException('کاربری با این شماره یافت نشد'); + } else if (!existing.isActive) { + throw new UnauthorizedException('حساب کاربری شما غیرفعال است'); } - const code = this.config.get('MOCK_OTP_CODE', '123456'); + const smsEnabled = this.sms.isEnabled(); + const code = smsEnabled + ? String(randomInt(1000, 10000)) + : this.config.get('MOCK_OTP_CODE', '1234'); const ttl = Number(this.config.get('OTP_TTL_MINUTES', 5)); const expiresAt = new Date(Date.now() + ttl * 60_000); - await this.prisma.otpChallenge.deleteMany({ where: { phone } }); - await this.prisma.otpChallenge.create({ - data: { - phone, - code, - firstName: dto.firstName?.trim(), - lastName: dto.lastName?.trim(), - isRegister, - expiresAt, - }, + const challenge = await this.prisma.$transaction(async (tx) => { + await tx.otpChallenge.deleteMany({ where: { phone } }); + return tx.otpChallenge.create({ + data: { + phone, + code, + firstName: dto.firstName?.trim(), + lastName: dto.lastName?.trim(), + isRegister, + expiresAt, + }, + }); }); + if (smsEnabled) { + const sent = await this.sms.send(phone, this.sms.buildOtpMessage(code)); + if (!sent.success) { + // چالش ناموفق را پاک می‌کنیم تا کاربر با کدی که هرگز نرسیده گیر نکند + await this.prisma.otpChallenge.deleteMany({ + where: { id: challenge.id }, + }); + throw new ServiceUnavailableException( + 'ارسال پیامک با خطا مواجه شد؛ دوباره تلاش کنید', + ); + } + } + return { success: true, message: 'کد تأیید ارسال شد', expiresAt, - // فقط برای محیط توسعه - debugCode: code, + ...(this.exposesDebugCode(smsEnabled) ? { debugCode: code } : {}), }; } + /** کد فقط در محیط توسعه و وقتی پیامک خاموش است برگردانده می‌شود. */ + private exposesDebugCode(smsEnabled: boolean): boolean { + if (smsEnabled) return false; + return this.config.get('NODE_ENV') !== 'production'; + } + async verifyOtp(dto: VerifyOtpDto) { const phone = normalizePhone(toEnglishDigits(dto.phone)); const code = toEnglishDigits(dto.code).trim(); @@ -80,7 +117,17 @@ export class AuthService { if (!challenge || challenge.expiresAt < new Date()) { throw new UnauthorizedException('کد منقضی شده است'); } + if (challenge.attempts >= MAX_OTP_ATTEMPTS) { + await this.prisma.otpChallenge.deleteMany({ where: { phone } }); + throw new UnauthorizedException( + 'تعداد تلاش‌های نادرست زیاد است؛ کد جدید بگیرید', + ); + } if (challenge.code !== code) { + await this.prisma.otpChallenge.update({ + where: { id: challenge.id }, + data: { attempts: { increment: 1 } }, + }); throw new UnauthorizedException('کد تأیید نادرست است'); } @@ -98,6 +145,8 @@ export class AuthService { }); } else if (!user) { throw new UnauthorizedException('کاربر یافت نشد'); + } else if (!user.isActive) { + throw new UnauthorizedException('حساب کاربری شما غیرفعال است'); } await this.prisma.otpChallenge.deleteMany({ where: { phone } }); @@ -147,7 +196,9 @@ export class AuthService { async me(userId: string, type: 'customer' | 'admin') { if (type === 'admin') { - const admin = await this.prisma.adminUser.findUnique({ where: { id: userId } }); + const admin = await this.prisma.adminUser.findUnique({ + where: { id: userId }, + }); if (!admin) throw new UnauthorizedException(); return { id: admin.id, @@ -158,7 +209,9 @@ export class AuthService { }; } - const user = await this.prisma.customer.findUnique({ where: { id: userId } }); + const user = await this.prisma.customer.findUnique({ + where: { id: userId }, + }); if (!user) throw new UnauthorizedException(); return this.mapCustomer(user); } diff --git a/src/auth/dto/auth.dto.ts b/src/auth/dto/auth.dto.ts index b60e3cc..2b5c613 100644 --- a/src/auth/dto/auth.dto.ts +++ b/src/auth/dto/auth.dto.ts @@ -1,4 +1,10 @@ -import { IsBoolean, IsOptional, IsString, MinLength } from 'class-validator'; +import { + IsBoolean, + IsOptional, + IsString, + Length, + MinLength, +} from 'class-validator'; export class RequestOtpDto { @IsString() @@ -22,7 +28,7 @@ export class VerifyOtpDto { phone!: string; @IsString() - @MinLength(4) + @Length(4, 4) code!: string; } diff --git a/src/carts/carts.controller.ts b/src/carts/carts.controller.ts index 5ac62ef..d85829e 100644 --- a/src/carts/carts.controller.ts +++ b/src/carts/carts.controller.ts @@ -28,10 +28,7 @@ export class CartsController { } @Post('items') - addItem( - @CurrentUser() user: AuthPrincipal, - @Body() dto: AddCartItemDto, - ) { + addItem(@CurrentUser() user: AuthPrincipal, @Body() dto: AddCartItemDto) { return this.cartsService.addItem(user.id, dto); } diff --git a/src/carts/carts.service.ts b/src/carts/carts.service.ts index c994826..4c02a1e 100644 --- a/src/carts/carts.service.ts +++ b/src/carts/carts.service.ts @@ -96,8 +96,7 @@ export class CartsService { where: { id: itemId }, data: { meterage: dto.meterage, - notes: - dto.notes === undefined ? undefined : dto.notes?.trim() || null, + notes: dto.notes === undefined ? undefined : dto.notes?.trim() || null, }, }); await this.prisma.cart.update({ @@ -152,8 +151,7 @@ export class CartsService { `حداقل متراژ برای ${product.name} برابر ${product.minMeterage} است`, ); } - const rem = - Math.round((meterage / product.orderMultiplier) * 1000) / 1000; + const rem = Math.round((meterage / product.orderMultiplier) * 1000) / 1000; if (Math.abs(rem - Math.round(rem)) > 1e-6) { throw new BadRequestException( `متراژ باید مضرب ${product.orderMultiplier} باشد`, diff --git a/src/cash-payments/cash-payments.service.ts b/src/cash-payments/cash-payments.service.ts index ac878e0..4e92a01 100644 --- a/src/cash-payments/cash-payments.service.ts +++ b/src/cash-payments/cash-payments.service.ts @@ -4,11 +4,7 @@ import { Injectable, NotFoundException, } from '@nestjs/common'; -import { - CashPaymentStatus, - OrderStatus, - SettlementType, -} from '@prisma/client'; +import { CashPaymentStatus, OrderStatus, SettlementType } from '@prisma/client'; import { PrismaService } from '../prisma/prisma.service'; import { SubmitCashReceiptDto, @@ -16,6 +12,20 @@ import { } from './dto/cash-payment.dto'; import { joinFullName } from '../common/utils/name'; +/** بعد از تأیید پرداخت یا ارسال، رسید جدید نباید وضعیت را به عقب برگرداند. */ +const RECEIPT_SUBMITTABLE_STATUSES: OrderStatus[] = [ + OrderStatus.awaiting_review, + OrderStatus.pricing, + OrderStatus.needs_correction, + OrderStatus.awaiting_settlement, + OrderStatus.awaiting_settlement_fix, + OrderStatus.cash_in_progress, + OrderStatus.cash_invoice_issued, + OrderStatus.awaiting_cash_payment, + OrderStatus.cash_payment_submitted, + OrderStatus.awaiting_cash_confirmation, +]; + @Injectable() export class CashPaymentsService { constructor(private readonly prisma: PrismaService) {} @@ -36,11 +46,18 @@ export class CashPaymentsService { if (order.settlementType !== SettlementType.cash) { throw new BadRequestException('این سفارش تسویه نقدی نیست'); } + if (!RECEIPT_SUBMITTABLE_STATUSES.includes(order.status)) { + throw new BadRequestException( + 'در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد', + ); + } if ( order.cashInvoiceExpiresAt && order.cashInvoiceExpiresAt.getTime() < Date.now() ) { - throw new BadRequestException('مهلت پرداخت فاکتور نقدی به پایان رسیده است'); + throw new BadRequestException( + 'مهلت پرداخت فاکتور نقدی به پایان رسیده است', + ); } const account = await this.prisma.bankAccount.findFirst({ diff --git a/src/catalogs/catalogs.service.ts b/src/catalogs/catalogs.service.ts index 12d30b1..26f87ce 100644 --- a/src/catalogs/catalogs.service.ts +++ b/src/catalogs/catalogs.service.ts @@ -61,7 +61,10 @@ export class CatalogsService { }); return this.map(catalog); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('کد کاتالوگ در این شرکت تکراری است'); } throw e; @@ -90,7 +93,10 @@ export class CatalogsService { }); return this.map(catalog); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('کد کاتالوگ در این شرکت تکراری است'); } throw e; diff --git a/src/checks/checks.service.ts b/src/checks/checks.service.ts index 282fe4c..5a6ba3b 100644 --- a/src/checks/checks.service.ts +++ b/src/checks/checks.service.ts @@ -1,11 +1,5 @@ -import { - Injectable, - NotFoundException, -} from '@nestjs/common'; -import { - CheckStatus, - OrderStatus, -} from '@prisma/client'; +import { Injectable, NotFoundException } from '@nestjs/common'; +import { CheckStatus, OrderStatus } from '@prisma/client'; import { PrismaService } from '../prisma/prisma.service'; import { UpdateCheckStatusDto } from './dto/check.dto'; @@ -14,7 +8,9 @@ export class ChecksService { constructor(private readonly prisma: PrismaService) {} async findByOrder(orderId: string) { - const order = await this.prisma.order.findUnique({ where: { id: orderId } }); + const order = await this.prisma.order.findUnique({ + where: { id: orderId }, + }); if (!order) throw new NotFoundException('سفارش یافت نشد'); const checks = await this.prisma.check.findMany({ @@ -24,11 +20,7 @@ export class ChecksService { return checks.map((c) => this.map(c)); } - async updateStatus( - id: string, - adminId: string, - dto: UpdateCheckStatusDto, - ) { + async updateStatus(id: string, adminId: string, dto: UpdateCheckStatusDto) { const check = await this.prisma.check.findUnique({ where: { id }, include: { order: { include: { checks: true } } }, @@ -46,9 +38,15 @@ export class ChecksService { }, }); - const siblings = await tx.check.findMany({ where: { orderId: check.orderId } }); - const allApproved = siblings.every((c) => c.status === CheckStatus.approved); - const anyRejected = siblings.some((c) => c.status === CheckStatus.rejected); + const siblings = await tx.check.findMany({ + where: { orderId: check.orderId }, + }); + const allApproved = siblings.every( + (c) => c.status === CheckStatus.approved, + ); + const anyRejected = siblings.some( + (c) => c.status === CheckStatus.rejected, + ); let nextStatus: OrderStatus | null = null; if (anyRejected) { diff --git a/src/common/decorators/current-user.decorator.ts b/src/common/decorators/current-user.decorator.ts index 167cdaf..5e87bbe 100644 --- a/src/common/decorators/current-user.decorator.ts +++ b/src/common/decorators/current-user.decorator.ts @@ -9,7 +9,7 @@ export interface AuthPrincipal { export const CurrentUser = createParamDecorator( (_data: unknown, ctx: ExecutionContext): AuthPrincipal => { - const request = ctx.switchToHttp().getRequest(); + const request = ctx.switchToHttp().getRequest<{ user: AuthPrincipal }>(); return request.user; }, ); diff --git a/src/common/guards/jwt-auth.guard.ts b/src/common/guards/jwt-auth.guard.ts index 23b4ed4..bb52dfa 100644 --- a/src/common/guards/jwt-auth.guard.ts +++ b/src/common/guards/jwt-auth.guard.ts @@ -14,6 +14,7 @@ import { ROLES_KEY, } from '../decorators/auth.decorators'; import { AuthPrincipal } from '../decorators/current-user.decorator'; +import { resolveJwtSecret } from '../utils/jwt-secret'; @Injectable() export class JwtAuthGuard implements CanActivate { @@ -30,8 +31,11 @@ export class JwtAuthGuard implements CanActivate { ]); if (isPublic) return true; - const request = context.switchToHttp().getRequest(); - const authHeader = request.headers.authorization as string | undefined; + const request = context.switchToHttp().getRequest<{ + headers: Record; + user?: AuthPrincipal; + }>(); + const authHeader = request.headers.authorization; if (!authHeader?.startsWith('Bearer ')) { throw new UnauthorizedException('توکن احراز هویت الزامی است'); } @@ -40,7 +44,7 @@ export class JwtAuthGuard implements CanActivate { let payload: AuthPrincipal & { sub?: string }; try { payload = await this.jwtService.verifyAsync(token, { - secret: this.config.get('JWT_SECRET'), + secret: resolveJwtSecret(this.config), }); } catch { throw new UnauthorizedException('توکن نامعتبر یا منقضی شده است'); @@ -54,10 +58,9 @@ export class JwtAuthGuard implements CanActivate { }; request.user = user; - const authType = this.reflector.getAllAndOverride<'customer' | 'admin' | 'any'>( - AUTH_TYPE_KEY, - [context.getHandler(), context.getClass()], - ); + const authType = this.reflector.getAllAndOverride< + 'customer' | 'admin' | 'any' + >(AUTH_TYPE_KEY, [context.getHandler(), context.getClass()]); if (authType && authType !== 'any' && user.type !== authType) { throw new ForbiddenException('دسترسی مجاز نیست'); } diff --git a/src/common/utils/cash-expiry.ts b/src/common/utils/cash-expiry.ts index 5183f23..ce7dda5 100644 --- a/src/common/utils/cash-expiry.ts +++ b/src/common/utils/cash-expiry.ts @@ -1,3 +1,5 @@ +import { addDays, tehranAtHour } from './tehran-time'; + export function computeCashInvoiceExpiry(company: { cashInvoiceValidUntilHour: number | null; cashInvoiceValidityHours: number; @@ -7,10 +9,9 @@ export function computeCashInvoiceExpiry(company: { company.cashInvoiceValidUntilHour != null && Number.isFinite(company.cashInvoiceValidUntilHour) ) { - const expires = new Date(now); - expires.setHours(company.cashInvoiceValidUntilHour, 0, 0, 0); + const expires = tehranAtHour(now, company.cashInvoiceValidUntilHour); if (expires.getTime() <= now.getTime()) { - expires.setDate(expires.getDate() + 1); + return tehranAtHour(addDays(now, 1), company.cashInvoiceValidUntilHour); } return expires; } diff --git a/src/common/utils/check-rass.ts b/src/common/utils/check-rass.ts index 1b78f93..cf8a4e0 100644 --- a/src/common/utils/check-rass.ts +++ b/src/common/utils/check-rass.ts @@ -12,11 +12,12 @@ export type CheckRassResult = { rassDate: string | null; }; -function startOfDay(date: Date): Date { - const d = new Date(date); - d.setHours(0, 0, 0, 0); - return d; -} +import { + addDays, + calendarDayOf, + diffInDays, + tehranCalendarDay, +} from './tehran-time'; export function calculateCheckRass( checks: CheckRassInput[], @@ -33,25 +34,21 @@ export function calculateCheckRass( }; } - const base = startOfDay(baseDate); + const base = tehranCalendarDay(baseDate); let totalAmount = 0; let weightedDays = 0; const dueDates: Date[] = []; for (const check of checks) { - const due = startOfDay(new Date(check.dueDate)); + const due = calendarDayOf(check.dueDate); dueDates.push(due); - const days = Math.max( - 0, - Math.round((due.getTime() - base.getTime()) / (1000 * 60 * 60 * 24)), - ); + const days = Math.max(0, diffInDays(base, due)); totalAmount += check.amount; weightedDays += check.amount * days; } const rassDays = totalAmount > 0 ? Math.round(weightedDays / totalAmount) : 0; - const rassDate = new Date(base); - rassDate.setDate(rassDate.getDate() + rassDays); + const rassDate = addDays(base, rassDays); dueDates.sort((a, b) => a.getTime() - b.getTime()); return { diff --git a/src/common/utils/jwt-secret.ts b/src/common/utils/jwt-secret.ts new file mode 100644 index 0000000..f865c6d --- /dev/null +++ b/src/common/utils/jwt-secret.ts @@ -0,0 +1,16 @@ +import { ConfigService } from '@nestjs/config'; + +const DEV_FALLBACK = 'fabric-trade-dev-secret'; + +/** + * امضا و اعتبارسنجی توکن باید از یک منبع بخوانند؛ در production نبود مقدار خطای راه‌اندازی است. + */ +export function resolveJwtSecret(config: ConfigService): string { + const secret = config.get('JWT_SECRET')?.trim(); + if (secret) return secret; + + if (config.get('NODE_ENV') === 'production') { + throw new Error('JWT_SECRET تنظیم نشده است'); + } + return DEV_FALLBACK; +} diff --git a/src/common/utils/name.ts b/src/common/utils/name.ts index 797e9af..9851842 100644 --- a/src/common/utils/name.ts +++ b/src/common/utils/name.ts @@ -8,10 +8,10 @@ export function splitFullName(name: string): { } const parts = trimmed.split(' '); if (parts.length === 1) { - return { firstName: parts[0]!, lastName: '' }; + return { firstName: parts[0], lastName: '' }; } return { - firstName: parts[0]!, + firstName: parts[0], lastName: parts.slice(1).join(' '), }; } diff --git a/src/common/utils/order-status.ts b/src/common/utils/order-status.ts index 8c72c60..540b899 100644 --- a/src/common/utils/order-status.ts +++ b/src/common/utils/order-status.ts @@ -2,19 +2,43 @@ import { OrderStatus } from '@prisma/client'; /** Admin UI simplified statuses → full Prisma OrderStatus values */ export const ADMIN_STATUS_MAP: Record = { - pending_review: [OrderStatus.awaiting_review, OrderStatus.pricing], + pending_review: [ + OrderStatus.cart, + OrderStatus.awaiting_settlement, + OrderStatus.cash_in_progress, + OrderStatus.check_in_progress, + OrderStatus.submitted, + OrderStatus.awaiting_review, + OrderStatus.pricing, + OrderStatus.cash_invoice_issued, + OrderStatus.awaiting_cash_payment, + OrderStatus.cash_payment_submitted, + OrderStatus.awaiting_cash_confirmation, + ], pending_check: [OrderStatus.awaiting_check_review], - needs_correction: [OrderStatus.needs_correction], - check_correction: [OrderStatus.check_needs_fix], + needs_correction: [ + OrderStatus.needs_correction, + OrderStatus.awaiting_settlement_fix, + ], + check_correction: [OrderStatus.check_needs_fix, OrderStatus.check_rejected], final_approval: [ OrderStatus.final_approved, OrderStatus.checks_approved, OrderStatus.cash_confirmed, + OrderStatus.preparing, + OrderStatus.ready_to_ship, ], shipped: [OrderStatus.shipped], delivered: [OrderStatus.delivered], }; +/** وضعیت‌های پایانی عمداً در تب‌های جریان کاری نمی‌آیند و با برچسب خودشان نمایش داده می‌شوند. */ +const TERMINAL_STATUSES: OrderStatus[] = [ + OrderStatus.cancelled, + OrderStatus.rejected, + OrderStatus.expired, +]; + export function resolveAdminStatusFilter( status?: string, ): OrderStatus[] | undefined { @@ -30,7 +54,8 @@ export function toAdminStatus(status: OrderStatus): string { for (const [admin, list] of Object.entries(ADMIN_STATUS_MAP)) { if (list.includes(status)) return admin; } - return status; + if (TERMINAL_STATUSES.includes(status)) return status; + return 'pending_review'; } export const ORDER_STATUS_LABELS: Record = { diff --git a/src/common/utils/tehran-time.ts b/src/common/utils/tehran-time.ts new file mode 100644 index 0000000..663ab19 --- /dev/null +++ b/src/common/utils/tehran-time.ts @@ -0,0 +1,42 @@ +/** + * محاسبات تقویمی باید مستقل از تایم‌زون سرور باشد؛ کانتینرها روی UTC اجرا می‌شوند. + * ایران از ۱۴۰۱ تغییر ساعت تابستانی ندارد، پس آفست ثابت +۰۳:۳۰ درست است. + */ +const TEHRAN_OFFSET_MS = (3 * 60 + 30) * 60 * 1000; +const DAY_MS = 24 * 60 * 60 * 1000; + +function utcStartOfDay(date: Date): Date { + const d = new Date(date); + d.setUTCHours(0, 0, 0, 0); + return d; +} + +/** + * روز تقویمی تهرانِ یک لحظه را به‌صورت نیمه‌شب UTC همان روز برمی‌گرداند. + * خروجی برای اختلاف‌گیری روزانه و سریال‌سازی `YYYY-MM-DD` امن است. + */ +export function tehranCalendarDay(date: Date): Date { + return utcStartOfDay(new Date(date.getTime() + TEHRAN_OFFSET_MS)); +} + +/** تاریخ سررسید فقط-روز است و نیمه‌شب UTC ذخیره می‌شود. */ +export function calendarDayOf(date: Date | string): Date { + return utcStartOfDay(new Date(date)); +} + +export function addDays(date: Date, days: number): Date { + return new Date(date.getTime() + days * DAY_MS); +} + +export function diffInDays(from: Date, to: Date): number { + return Math.round((to.getTime() - from.getTime()) / DAY_MS); +} + +/** لحظه‌ای که در تهران ساعتِ داده‌شده از همان روزِ تقویمی است. */ +export function tehranAtHour(date: Date, hour: number): Date { + return new Date( + tehranCalendarDay(date).getTime() + + hour * 60 * 60 * 1000 - + TEHRAN_OFFSET_MS, + ); +} diff --git a/src/companies/companies.service.ts b/src/companies/companies.service.ts index 97396c6..f27c787 100644 --- a/src/companies/companies.service.ts +++ b/src/companies/companies.service.ts @@ -21,7 +21,9 @@ export class CompaniesService { where: activeOnly ? { isActive: true } : undefined, orderBy: [{ displayOrder: 'asc' }, { name: 'asc' }], include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return companies.map((c) => this.mapCompany(c)); @@ -32,7 +34,9 @@ export class CompaniesService { where: { id }, include: { bankAccounts: { orderBy: { displayOrder: 'asc' } }, - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); if (!company) throw new NotFoundException('شرکت یافت نشد'); @@ -57,12 +61,17 @@ export class CompaniesService { isActive: dto.isActive ?? true, }, include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return this.mapCompany(company); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('اسلاگ شرکت تکراری است'); } throw e; @@ -90,12 +99,17 @@ export class CompaniesService { isActive: dto.isActive, }, include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return this.mapCompany(company); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('اسلاگ شرکت تکراری است'); } throw e; @@ -108,7 +122,9 @@ export class CompaniesService { where: { id }, data: { isActive }, include: { - _count: { select: { catalogs: true, products: true, bankAccounts: true } }, + _count: { + select: { catalogs: true, products: true, bankAccounts: true }, + }, }, }); return this.mapCompany(company); @@ -151,8 +167,7 @@ export class CompaniesService { accountNumber: dto.accountNumber?.trim(), cardNumber: dto.cardNumber?.trim(), iban: dto.iban?.trim(), - notes: - dto.notes === undefined ? undefined : dto.notes?.trim() || null, + notes: dto.notes === undefined ? undefined : dto.notes?.trim() || null, displayOrder: dto.displayOrder, isActive: dto.isActive, }, @@ -181,23 +196,21 @@ export class CompaniesService { return account; } - private mapCompany( - company: { - id: string; - name: string; - slug: string; - description: string | null; - logoUrl: string | null; - isActive: boolean; - displayOrder: number; - maxMeteragePerInvoice: number; - cashInvoiceValidityHours: number; - cashInvoiceValidUntilHour: number | null; - createdAt: Date; - updatedAt: Date; - _count?: { catalogs: number; products: number; bankAccounts: number }; - }, - ) { + private mapCompany(company: { + id: string; + name: string; + slug: string; + description: string | null; + logoUrl: string | null; + isActive: boolean; + displayOrder: number; + maxMeteragePerInvoice: number; + cashInvoiceValidityHours: number; + cashInvoiceValidUntilHour: number | null; + createdAt: Date; + updatedAt: Date; + _count?: { catalogs: number; products: number; bankAccounts: number }; + }) { return { id: company.id, name: company.name, diff --git a/src/customers/customers.service.ts b/src/customers/customers.service.ts index d854a3f..648d83c 100644 --- a/src/customers/customers.service.ts +++ b/src/customers/customers.service.ts @@ -83,7 +83,10 @@ export class CustomersService { }); return this.map(customer); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('این شماره قبلاً ثبت شده است'); } throw e; @@ -102,7 +105,11 @@ export class CustomersService { let firstName: string | undefined; let lastName: string | undefined; - if (dto.name !== undefined || dto.firstName !== undefined || dto.lastName !== undefined) { + if ( + dto.name !== undefined || + dto.firstName !== undefined || + dto.lastName !== undefined + ) { const names = this.resolveNames(dto); firstName = names.firstName; lastName = names.lastName; @@ -131,7 +138,10 @@ export class CustomersService { }); return this.map(customer); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('این شماره قبلاً ثبت شده است'); } throw e; diff --git a/src/dashboard/dashboard.service.ts b/src/dashboard/dashboard.service.ts index bdbc15b..4139b51 100644 --- a/src/dashboard/dashboard.service.ts +++ b/src/dashboard/dashboard.service.ts @@ -107,11 +107,7 @@ export class DashboardService { const sumAmounts = ( rows: { finalAmount: number | null; totalAmount: number | null }[], - ) => - rows.reduce( - (s, o) => s + (o.finalAmount ?? o.totalAmount ?? 0), - 0, - ); + ) => rows.reduce((s, o) => s + (o.finalAmount ?? o.totalAmount ?? 0), 0); const todaySales = sumAmounts(todayOrders); const yesterdaySales = sumAmounts(yesterdayOrders); @@ -130,7 +126,7 @@ export class DashboardService { (24 * 60 * 60 * 1000), ); if (dayIndex >= 0 && dayIndex < 28) { - salesByDay[dayIndex]! += order.finalAmount ?? order.totalAmount ?? 0; + salesByDay[dayIndex] += order.finalAmount ?? order.totalAmount ?? 0; } } const maxSale = Math.max(...salesByDay, 1); @@ -189,7 +185,12 @@ export class DashboardService { const byCompany = new Map< string, - { companyName: string; orderCount: number; totalAmount: number; meterage: number } + { + companyName: string; + orderCount: number; + totalAmount: number; + meterage: number; + } >(); const byStatus = new Map(); @@ -228,7 +229,12 @@ export class DashboardService { { id: 'cd-today', label: 'امروز', tone: 'danger' as const, days: 0 }, { id: 'cd-3', label: '۳ روز آینده', tone: 'warning' as const, days: 3 }, { id: 'cd-7', label: '۷ روز آینده', tone: 'warning' as const, days: 7 }, - { id: 'cd-30', label: '۳۰ روز آینده', tone: 'neutral' as const, days: 30 }, + { + id: 'cd-30', + label: '۳۰ روز آینده', + tone: 'neutral' as const, + days: 30, + }, ]; return buckets.map((bucket) => { diff --git a/src/main.ts b/src/main.ts index 747fe6b..80a921f 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,11 +1,17 @@ import { NestFactory } from '@nestjs/core'; import { ValidationPipe } from '@nestjs/common'; import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger'; +import { json, urlencoded } from 'express'; import { AppModule } from './app.module'; async function bootstrap() { const app = await NestFactory.create(AppModule); + // تصاویر چک و رسید به‌صورت base64 داخل JSON می‌آیند و از سقف پیش‌فرض ۱۰۰KB رد می‌شوند + const bodyLimit = process.env.BODY_LIMIT || '25mb'; + app.use(json({ limit: bodyLimit })); + app.use(urlencoded({ extended: true, limit: bodyLimit })); + // پشت LiteSpeed روی /server → GLOBAL_PREFIX=server/api const globalPrefix = process.env.GLOBAL_PREFIX || 'api'; app.setGlobalPrefix(globalPrefix); @@ -33,7 +39,9 @@ async function bootstrap() { const port = process.env.PORT ?? 3000; await app.listen(port); - console.log(`Fabric Trade API listening on http://localhost:${port}/${globalPrefix}`); + console.log( + `Fabric Trade API listening on http://localhost:${port}/${globalPrefix}`, + ); console.log(`Swagger docs at http://localhost:${port}/${globalPrefix}/docs`); } -bootstrap(); +void bootstrap(); diff --git a/src/orders/dto/order.dto.ts b/src/orders/dto/order.dto.ts index 949c116..1c6719e 100644 --- a/src/orders/dto/order.dto.ts +++ b/src/orders/dto/order.dto.ts @@ -25,6 +25,12 @@ export class SubmitOrderItemDto { @Min(0.001) meterage!: number; + /** Alias پذیرفته‌شده از کلاینت‌های قدیمی؛ نادیده گرفته می‌شود */ + @IsOptional() + @Type(() => Number) + @IsNumber() + requestedMeterage?: number; + @IsOptional() @IsString() notes?: string; @@ -91,6 +97,11 @@ export class SubmitOrderDto { @IsEnum(SettlementType) settlementType!: SettlementType; + /** Alias پذیرفته‌شده از کلاینت‌های قدیمی؛ نادیده گرفته می‌شود */ + @IsOptional() + @IsEnum(SettlementType) + settlementMethod?: SettlementType; + @IsOptional() @IsEnum(CheckRegistrationMode) checkMode?: CheckRegistrationMode; diff --git a/src/orders/orders.controller.ts b/src/orders/orders.controller.ts index b0c8bd8..b112608 100644 --- a/src/orders/orders.controller.ts +++ b/src/orders/orders.controller.ts @@ -31,19 +31,13 @@ export class CustomerOrdersController { @AuthType('customer') @Get(':id') - findOne( - @CurrentUser() user: AuthPrincipal, - @Param('id') id: string, - ) { + findOne(@CurrentUser() user: AuthPrincipal, @Param('id') id: string) { return this.ordersService.findMyOrder(user.id, id); } @AuthType('customer') @Post() - submit( - @CurrentUser() user: AuthPrincipal, - @Body() dto: SubmitOrderDto, - ) { + submit(@CurrentUser() user: AuthPrincipal, @Body() dto: SubmitOrderDto) { return this.ordersService.submitOrder(user.id, dto); } @@ -74,10 +68,7 @@ export class AdminOrdersController { } @Post() - create( - @CurrentUser() user: AuthPrincipal, - @Body() dto: AdminCreateOrderDto, - ) { + create(@CurrentUser() user: AuthPrincipal, @Body() dto: AdminCreateOrderDto) { return this.ordersService.adminCreate(user.id, dto); } diff --git a/src/orders/orders.service.ts b/src/orders/orders.service.ts index e06152e..ab2a3ed 100644 --- a/src/orders/orders.service.ts +++ b/src/orders/orders.service.ts @@ -45,6 +45,23 @@ const orderInclude = { type OrderFull = Prisma.OrderGetPayload<{ include: typeof orderInclude }>; +/** مبالغ ریالی روی Float ذخیره می‌شوند؛ گرد کردن از انباشت خطای اعشاری جلوگیری می‌کند. */ +function roundMoney(value: number): number { + return Math.round(value * 100) / 100; +} + +/** بعد از تأیید چک‌ها یا ارسال سفارش، مشتری نباید بتواند چک‌ها را بازنویسی کند. */ +const CHECK_EDITABLE_STATUSES: OrderStatus[] = [ + OrderStatus.awaiting_review, + OrderStatus.pricing, + OrderStatus.needs_correction, + OrderStatus.awaiting_settlement_fix, + OrderStatus.check_in_progress, + OrderStatus.awaiting_check_review, + OrderStatus.check_needs_fix, + OrderStatus.check_rejected, +]; + @Injectable() export class OrdersService { constructor(private readonly prisma: PrismaService) {} @@ -180,62 +197,62 @@ export class OrdersService { ? computeCashInvoiceExpiry(company) : null; - const orderNumber = await this.nextOrderNumber(); - - const order = await this.prisma.$transaction(async (tx) => { - const created = await tx.order.create({ - data: { - orderNumber, - userId, - companyId: company.id, - companyName: company.name, - settlementType, - checkMode, - status: OrderStatus.awaiting_review, - totalMeterage, - notes: dto.notes?.trim() || null, - checkRassDays: rass?.rassDays ?? null, - checkRassDate: rass?.rassDate ? new Date(rass.rassDate) : null, - cashInvoiceExpiresAt, - items: { create: itemsData }, - checks: - settlementType === SettlementType.check && dto.checks - ? { - create: dto.checks.map((c, index) => - this.mapCheckCreate(c, index + 1, checkMode!), - ), - } - : undefined, - statusHistory: { - create: [ - { - fromStatus: null, - toStatus: OrderStatus.submitted, - changedBy: 'customer', - note: 'سفارش ثبت شد', - }, - { - fromStatus: OrderStatus.submitted, - toStatus: OrderStatus.awaiting_review, - changedBy: 'customer', - note: 'ارسال برای بررسی مدیریت', - }, - ], + const order = await this.createWithUniqueOrderNumber((orderNumber) => + this.prisma.$transaction(async (tx) => { + const created = await tx.order.create({ + data: { + orderNumber, + userId, + companyId: company.id, + companyName: company.name, + settlementType, + checkMode, + status: OrderStatus.awaiting_review, + totalMeterage, + notes: dto.notes?.trim() || null, + checkRassDays: rass?.rassDays ?? null, + checkRassDate: rass?.rassDate ? new Date(rass.rassDate) : null, + cashInvoiceExpiresAt, + items: { create: itemsData }, + checks: + settlementType === SettlementType.check && dto.checks + ? { + create: dto.checks.map((c, index) => + this.mapCheckCreate(c, index + 1, checkMode!), + ), + } + : undefined, + statusHistory: { + create: [ + { + fromStatus: null, + toStatus: OrderStatus.submitted, + changedBy: 'customer', + note: 'سفارش ثبت شد', + }, + { + fromStatus: OrderStatus.submitted, + toStatus: OrderStatus.awaiting_review, + changedBy: 'customer', + note: 'ارسال برای بررسی مدیریت', + }, + ], + }, }, - }, - include: orderInclude, - }); - - // Clear cart items for this company after successful submit - const cart = await tx.cart.findFirst({ where: { userId } }); - if (cart) { - await tx.cartItem.deleteMany({ - where: { cartId: cart.id, companyId: company.id }, + include: orderInclude, }); - } - return created; - }); + // Clear cart items for this company after successful submit + const cart = await tx.cart.findFirst({ where: { userId } }); + if (cart) { + await tx.cartItem.deleteMany({ + where: { cartId: cart.id, companyId: company.id }, + }); + } + + return created; + }), + ); return this.mapOrder(order); } @@ -257,7 +274,9 @@ export class OrdersService { if (!isValidPhone(phone)) { throw new BadRequestException('شماره موبایل نامعتبر است'); } - let customer = await this.prisma.customer.findUnique({ where: { phone } }); + let customer = await this.prisma.customer.findUnique({ + where: { phone }, + }); if (!customer) { const names = splitFullName(dto.customerName || 'مشتری جدید'); customer = await this.prisma.customer.create({ @@ -274,67 +293,79 @@ export class OrdersService { throw new BadRequestException('شناسه یا شماره مشتری الزامی است'); } - const orderNumber = await this.nextOrderNumber(); const totalMeterage = dto.meterage ?? 0; + const ownerId = userId; - const order = await this.prisma.order.create({ - data: { - orderNumber, - userId, - companyId: company.id, - companyName: company.name, - settlementType, - status: OrderStatus.awaiting_review, - totalMeterage, - notes: dto.notes?.trim() || null, - statusHistory: { - create: { - fromStatus: null, - toStatus: OrderStatus.awaiting_review, - changedBy: `admin:${adminId}`, - note: 'سفارش توسط ادمین ثبت شد', + const order = await this.createWithUniqueOrderNumber((orderNumber) => + this.prisma.order.create({ + data: { + orderNumber, + userId: ownerId, + companyId: company.id, + companyName: company.name, + settlementType, + status: OrderStatus.awaiting_review, + totalMeterage, + notes: dto.notes?.trim() || null, + statusHistory: { + create: { + fromStatus: null, + toStatus: OrderStatus.awaiting_review, + changedBy: `admin:${adminId}`, + note: 'سفارش توسط ادمین ثبت شد', + }, }, }, - }, - include: orderInclude, - }); + include: orderInclude, + }), + ); return this.mapOrder(order, true); } - async updatePricing( - id: string, - adminId: string, - dto: UpdateOrderPricingDto, - ) { + async updatePricing(id: string, adminId: string, dto: UpdateOrderPricingDto) { const order = await this.getOrder(id); + const unknown = dto.items.find( + (item) => !order.items.some((i) => i.id === item.id), + ); + if (unknown) { + throw new BadRequestException(`آیتم ${unknown.id} یافت نشد`); + } + await this.prisma.$transaction(async (tx) => { let totalAmount = 0; let totalMeterage = 0; - for (const item of dto.items) { - const existing = order.items.find((i) => i.id === item.id); - if (!existing) { - throw new BadRequestException(`آیتم ${item.id} یافت نشد`); - } + // جمع کل باید روی همه آیتم‌های سفارش حساب شود، نه فقط آیتم‌های ارسالی + for (const existing of order.items) { + const item = dto.items.find((i) => i.id === existing.id); const unitPrice = - item.unitPrice !== undefined + item?.unitPrice !== undefined ? item.unitPrice - : item.supplyPrice !== undefined + : item?.supplyPrice !== undefined ? item.supplyPrice : (existing.unitPrice ?? 0); - const unitDiscount = item.unitDiscount ?? existing.unitDiscount ?? 0; + const unitDiscount = item?.unitDiscount ?? existing.unitDiscount ?? 0; + if (unitDiscount > unitPrice) { + throw new BadRequestException( + 'تخفیف واحد نمی‌تواند از قیمت واحد بیشتر باشد', + ); + } const confirmed = - item.confirmedMeterage ?? + item?.confirmedMeterage ?? existing.confirmedMeterage ?? existing.requestedMeterage; - const lineTotal = Math.max(0, (unitPrice - unitDiscount) * confirmed); + const lineTotal = roundMoney( + Math.max(0, (unitPrice - unitDiscount) * confirmed), + ); totalAmount += lineTotal; totalMeterage += confirmed; + if (!item) continue; + await tx.orderItem.update({ - where: { id: item.id }, + where: { id: existing.id }, data: { confirmedMeterage: confirmed, unitPrice, @@ -343,10 +374,13 @@ export class OrdersService { }, }); } + totalAmount = roundMoney(totalAmount); const shippingCost = dto.shippingCost ?? order.shippingCost ?? 0; const totalDiscount = dto.totalDiscount ?? order.totalDiscount ?? 0; - const finalAmount = Math.max(0, totalAmount + shippingCost - totalDiscount); + const finalAmount = roundMoney( + Math.max(0, totalAmount + shippingCost - totalDiscount), + ); const nextStatus = order.status === OrderStatus.awaiting_review || @@ -382,11 +416,7 @@ export class OrdersService { return this.findAdminOrder(id); } - async updateStatus( - id: string, - adminId: string, - dto: UpdateOrderStatusDto, - ) { + async updateStatus(id: string, adminId: string, dto: UpdateOrderStatusDto) { const order = await this.getOrder(id); if (order.status === dto.status) { return this.mapOrder(order, true); @@ -435,8 +465,14 @@ export class OrdersService { if (order.settlementType !== SettlementType.check) { throw new BadRequestException('این سفارش تسویه چکی نیست'); } + if (!CHECK_EDITABLE_STATUSES.includes(order.status)) { + throw new BadRequestException( + 'در وضعیت فعلی سفارش امکان ویرایش چک‌ها وجود ندارد', + ); + } - const checkMode = dto.checkMode ?? order.checkMode ?? CheckRegistrationMode.full; + const checkMode = + dto.checkMode ?? order.checkMode ?? CheckRegistrationMode.full; const rass = calculateCheckRass( dto.checks.map((c) => ({ amount: c.amount, dueDate: c.dueDate })), order.createdAt, @@ -512,6 +548,23 @@ export class OrdersService { return `${generateOrderNumber()}-${Date.now().toString().slice(-3)}`; } + /** بین انتخاب شماره و درج، امکان تصاحب شماره توسط درخواست هم‌زمان هست. */ + private async createWithUniqueOrderNumber( + create: (orderNumber: string) => Promise, + ): Promise { + for (let attempt = 0; ; attempt++) { + const orderNumber = await this.nextOrderNumber(); + try { + return await create(orderNumber); + } catch (e) { + const isDuplicate = + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002'; + if (!isDuplicate || attempt >= 4) throw e; + } + } + } + private async getOrder(id: string): Promise { const order = await this.prisma.order.findUnique({ where: { id }, diff --git a/src/products/products.service.ts b/src/products/products.service.ts index af7e4aa..581b4b4 100644 --- a/src/products/products.service.ts +++ b/src/products/products.service.ts @@ -81,7 +81,10 @@ export class ProductsService { }); return this.map(product); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('کد محصول در این شرکت تکراری است'); } throw e; @@ -135,7 +138,10 @@ export class ProductsService { }); return this.map(product); } catch (e) { - if (e instanceof Prisma.PrismaClientKnownRequestError && e.code === 'P2002') { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2002' + ) { throw new ConflictException('کد محصول در این شرکت تکراری است'); } throw e; diff --git a/src/shipments/shipments.controller.ts b/src/shipments/shipments.controller.ts index 986c48e..03e62f5 100644 --- a/src/shipments/shipments.controller.ts +++ b/src/shipments/shipments.controller.ts @@ -34,10 +34,7 @@ export class ShipmentsController { } @Post() - create( - @CurrentUser() user: AuthPrincipal, - @Body() dto: CreateShipmentDto, - ) { + create(@CurrentUser() user: AuthPrincipal, @Body() dto: CreateShipmentDto) { return this.shipmentsService.create(user.id, dto); } diff --git a/src/shipments/shipments.service.ts b/src/shipments/shipments.service.ts index 9745fce..6ace38b 100644 --- a/src/shipments/shipments.service.ts +++ b/src/shipments/shipments.service.ts @@ -158,7 +158,7 @@ export class ShipmentsService { include: { order: { include: { user: true } } }, }); - const nextOrderStatus = SHIPMENT_TO_ORDER[nextStatus!]; + const nextOrderStatus = SHIPMENT_TO_ORDER[nextStatus]; if (shipment.order.status !== nextOrderStatus) { await tx.order.update({ where: { id: shipment.orderId }, diff --git a/src/sms/sms.module.ts b/src/sms/sms.module.ts new file mode 100644 index 0000000..cc282dd --- /dev/null +++ b/src/sms/sms.module.ts @@ -0,0 +1,8 @@ +import { Module } from '@nestjs/common'; +import { SmsService } from './sms.service'; + +@Module({ + providers: [SmsService], + exports: [SmsService], +}) +export class SmsModule {} diff --git a/src/sms/sms.service.ts b/src/sms/sms.service.ts new file mode 100644 index 0000000..3872d68 --- /dev/null +++ b/src/sms/sms.service.ts @@ -0,0 +1,109 @@ +import { Injectable, Logger } from '@nestjs/common'; +import { ConfigService } from '@nestjs/config'; + +export type SmsSendResult = { + success: boolean; + raw: unknown; +}; + +function maskPhone(phone: string): string { + return phone.length <= 4 + ? '****' + : `${phone.slice(0, 4)}****${phone.slice(-2)}`; +} + +@Injectable() +export class SmsService { + private readonly logger = new Logger(SmsService.name); + + constructor(private readonly config: ConfigService) {} + + isEnabled(): boolean { + const raw = ( + this.config.get('SMS_ENABLED', 'true') ?? 'true' + ).toLowerCase(); + return raw === '1' || raw === 'true' || raw === 'yes'; + } + + async send(to: string, message: string): Promise { + const url = this.config.get( + 'SMS_API_URL', + 'http://185.231.112.101/api/createsms', + ); + const secretKey = this.config.get('SMS_SECRET_KEY')?.trim(); + if (!secretKey) { + this.logger.error('SMS_SECRET_KEY تنظیم نشده است'); + return { success: false, raw: 'SMS_SECRET_KEY missing' }; + } + const platform = this.config.get('SMS_PLATFORM', 'rayegansms'); + const host = this.resolveHost(); + + try { + const response = await fetch(url, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + secret_key: secretKey, + }, + body: JSON.stringify({ + phone: to, + host, + text: message.trim(), + platform, + }), + signal: AbortSignal.timeout(15_000), + }); + + const text = await response.text(); + let body: unknown = text; + try { + body = text ? JSON.parse(text) : null; + } catch { + /* keep raw text */ + } + + let success = response.ok; + if (success && body && typeof body === 'object') { + const obj = body as Record; + if ('success' in obj && obj.success === false) success = false; + else if ('ok' in obj && obj.ok === false) success = false; + else if ( + typeof obj.status === 'string' && + ['error', 'failed', 'fail'].includes(obj.status.toLowerCase()) + ) { + success = false; + } + } + + if (!success) { + this.logger.warn( + `SMS failed to ${maskPhone(to)}: ${JSON.stringify(body)}`, + ); + } + + return { success, raw: body }; + } catch (err) { + this.logger.error( + `SMS request error to ${maskPhone(to)}`, + err instanceof Error ? err.stack : err, + ); + return { + success: false, + raw: err instanceof Error ? err.message : String(err), + }; + } + } + + buildOtpMessage(code: string): string { + const appName = this.config.get('SMS_APP_NAME', 'پارچه'); + return `رمز عبور یکبار مصرف شما جهت ورود به اپلیکیشن ${appName} ${code} می باشد`; + } + + private resolveHost(): string { + const fromEnv = + this.config.get('SMS_HOST')?.trim() || + this.config.get('SMS_APP_NAME')?.trim(); + if (fromEnv) return fromEnv; + return 'fabric'; + } +}