@yolo-croket-dev/amqp-access 0.7.224 → 0.7.225-kkook.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. package/excel-upload-server/amqp.excel-upload-server.module.js +2 -0
  2. package/excel-upload-server/dto/ad-performance-report/command/create-sns-roas-report-excel.dto.d.ts +30 -0
  3. package/excel-upload-server/dto/ad-performance-report/command/create-sns-roas-report-excel.dto.js +53 -0
  4. package/excel-upload-server/dto/ad-performance-report/command/index.d.ts +1 -0
  5. package/excel-upload-server/dto/ad-performance-report/command/index.js +17 -0
  6. package/excel-upload-server/dto/ad-performance-report/index.d.ts +1 -0
  7. package/excel-upload-server/dto/ad-performance-report/index.js +17 -0
  8. package/excel-upload-server/dto/index.d.ts +1 -0
  9. package/excel-upload-server/dto/index.js +1 -0
  10. package/excel-upload-server/services/amqp.ad-performance-report.service.d.ts +14 -0
  11. package/excel-upload-server/services/amqp.ad-performance-report.service.js +38 -0
  12. package/excel-upload-server/services/index.d.ts +1 -0
  13. package/excel-upload-server/services/index.js +1 -0
  14. package/package.json +2 -2
  15. package/payment-service/dto/ad-center-settle/query/get-ad-center-settles-for-google-sheet.dto.d.ts +1 -1
  16. package/store-item-server/dto/store-item/command/update-item-keywords-bulk.dto.js +0 -18
  17. package/user-service/dto/store-md-theme/query/get-store-md-theme-admin-preview.dto.d.ts +28 -0
  18. package/user-service/dto/store-md-theme/query/get-store-md-theme-admin-preview.dto.js +111 -0
  19. package/user-service/dto/store-md-theme/query/index.d.ts +1 -0
  20. package/user-service/dto/store-md-theme/query/index.js +1 -0
  21. package/user-service/services/amqp.store-md-theme.service.d.ts +2 -1
  22. package/user-service/services/amqp.store-md-theme.service.js +3 -0
@@ -26,6 +26,7 @@ exports.AmqpExcelUploadServerModule = AmqpExcelUploadServerModule = __decorate([
26
26
  services_1.AmqpNaverSearchAdExcelService,
27
27
  services_1.AmqpSplitInvoiceExcelService,
28
28
  services_1.AmqpCrmCohortExcelService,
29
+ services_1.AmqpAdPerformanceReportService,
29
30
  ],
30
31
  exports: [
31
32
  services_1.AmqpStoreItemExcelService,
@@ -38,6 +39,7 @@ exports.AmqpExcelUploadServerModule = AmqpExcelUploadServerModule = __decorate([
38
39
  services_1.AmqpNaverSearchAdExcelService,
39
40
  services_1.AmqpSplitInvoiceExcelService,
40
41
  services_1.AmqpCrmCohortExcelService,
42
+ services_1.AmqpAdPerformanceReportService,
41
43
  ],
42
44
  })
43
45
  ], AmqpExcelUploadServerModule);
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @description SNS ROAS 엑셀 생성에 사용할 광고 소재별 일자 광고비입니다.
3
+ * @process 광고 소재명, 일자, USD 광고비의 형식과 범위를 검증합니다.
4
+ */
5
+ export declare class SnsRoasSourceRow {
6
+ adName: string;
7
+ date: string;
8
+ spendUsd: number;
9
+ }
10
+ /**
11
+ * @description SNS ROAS 엑셀 생성 AMQP 요청 Payload입니다.
12
+ * @process 관리자 Excel에서 추출한 광고 소재별 데이터를 검증하여 전달합니다.
13
+ */
14
+ export declare class CreateSnsRoasReportExcelPayload {
15
+ rows: SnsRoasSourceRow[];
16
+ }
17
+ /**
18
+ * @description SNS ROAS 엑셀 생성 AMQP 응답입니다.
19
+ * @process 생성된 파일과 처리 범위 및 처리 건수를 호출 서버에 반환합니다.
20
+ */
21
+ export interface CreateSnsRoasReportExcelResult {
22
+ downloadUrl: string;
23
+ endDate: string;
24
+ exchangeRateKrwPerUsd: number;
25
+ fileName: string;
26
+ resultRowCount: number;
27
+ sourceRowCount: number;
28
+ startDate: string;
29
+ transactionCount: number;
30
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateSnsRoasReportExcelPayload = exports.SnsRoasSourceRow = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ /**
16
+ * @description SNS ROAS 엑셀 생성에 사용할 광고 소재별 일자 광고비입니다.
17
+ * @process 광고 소재명, 일자, USD 광고비의 형식과 범위를 검증합니다.
18
+ */
19
+ class SnsRoasSourceRow {
20
+ }
21
+ exports.SnsRoasSourceRow = SnsRoasSourceRow;
22
+ __decorate([
23
+ (0, class_validator_1.IsString)(),
24
+ (0, class_validator_1.IsNotEmpty)(),
25
+ __metadata("design:type", String)
26
+ ], SnsRoasSourceRow.prototype, "adName", void 0);
27
+ __decorate([
28
+ (0, class_validator_1.IsDateString)({ strict: true }),
29
+ __metadata("design:type", String)
30
+ ], SnsRoasSourceRow.prototype, "date", void 0);
31
+ __decorate([
32
+ (0, class_validator_1.IsNumber)({
33
+ allowInfinity: false,
34
+ allowNaN: false,
35
+ }),
36
+ (0, class_validator_1.Min)(0),
37
+ __metadata("design:type", Number)
38
+ ], SnsRoasSourceRow.prototype, "spendUsd", void 0);
39
+ /**
40
+ * @description SNS ROAS 엑셀 생성 AMQP 요청 Payload입니다.
41
+ * @process 관리자 Excel에서 추출한 광고 소재별 데이터를 검증하여 전달합니다.
42
+ */
43
+ class CreateSnsRoasReportExcelPayload {
44
+ }
45
+ exports.CreateSnsRoasReportExcelPayload = CreateSnsRoasReportExcelPayload;
46
+ __decorate([
47
+ (0, class_validator_1.IsArray)(),
48
+ (0, class_validator_1.ArrayMinSize)(1),
49
+ (0, class_validator_1.ArrayMaxSize)(10000),
50
+ (0, class_validator_1.ValidateNested)({ each: true }),
51
+ (0, class_transformer_1.Type)(() => SnsRoasSourceRow),
52
+ __metadata("design:type", Array)
53
+ ], CreateSnsRoasReportExcelPayload.prototype, "rows", void 0);
@@ -0,0 +1 @@
1
+ export * from './create-sns-roas-report-excel.dto';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./create-sns-roas-report-excel.dto"), exports);
@@ -0,0 +1 @@
1
+ export * from './command';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./command"), exports);
@@ -3,3 +3,4 @@ export * from './purchased-info-excel';
3
3
  export * from './store-item-excel';
4
4
  export * from './split-invoice-excel';
5
5
  export * from './crm-cohort-excel';
6
+ export * from './ad-performance-report';
@@ -19,3 +19,4 @@ __exportStar(require("./purchased-info-excel"), exports);
19
19
  __exportStar(require("./store-item-excel"), exports);
20
20
  __exportStar(require("./split-invoice-excel"), exports);
21
21
  __exportStar(require("./crm-cohort-excel"), exports);
22
+ __exportStar(require("./ad-performance-report"), exports);
@@ -0,0 +1,14 @@
1
+ import { ClientProxy } from '@nestjs/microservices';
2
+ import { AbstractParam } from '@yolo-croket-dev/core';
3
+ import { CreateSnsRoasReportExcelPayload, CreateSnsRoasReportExcelResult } from '../dto';
4
+ /**
5
+ * @author jun
6
+ * @description Excel Upload Server의 광고 성과 리포트 생성 기능을 호출합니다.
7
+ * @process 요청 Payload를 광고 성과 리포트 메시지 패턴으로 전달하고 생성 결과를 반환합니다.
8
+ */
9
+ export declare class AmqpAdPerformanceReportService {
10
+ private readonly client;
11
+ private readonly amqpManager;
12
+ constructor(client: ClientProxy);
13
+ createSnsRoasReportExcel(payload: CreateSnsRoasReportExcelPayload, param: AbstractParam): Promise<CreateSnsRoasReportExcelResult>;
14
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.AmqpAdPerformanceReportService = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const microservices_1 = require("@nestjs/microservices");
18
+ const functions_1 = require("@yolo-croket-dev/core/functions");
19
+ /**
20
+ * @author jun
21
+ * @description Excel Upload Server의 광고 성과 리포트 생성 기능을 호출합니다.
22
+ * @process 요청 Payload를 광고 성과 리포트 메시지 패턴으로 전달하고 생성 결과를 반환합니다.
23
+ */
24
+ let AmqpAdPerformanceReportService = class AmqpAdPerformanceReportService {
25
+ constructor(client) {
26
+ this.client = client;
27
+ this.amqpManager = new functions_1.AmqpManagement(this.client);
28
+ }
29
+ async createSnsRoasReportExcel(payload, param) {
30
+ return this.amqpManager.call('SNS ROAS 광고 성과 엑셀 생성', 'ad-performance-report.create-sns-roas-excel', payload, param, { isErrorThrowing: true });
31
+ }
32
+ };
33
+ exports.AmqpAdPerformanceReportService = AmqpAdPerformanceReportService;
34
+ exports.AmqpAdPerformanceReportService = AmqpAdPerformanceReportService = __decorate([
35
+ (0, common_1.Injectable)(),
36
+ __param(0, (0, common_1.Inject)('EXCEL_UPLOAD_SERVER_PROVIDER')),
37
+ __metadata("design:paramtypes", [microservices_1.ClientProxy])
38
+ ], AmqpAdPerformanceReportService);
@@ -7,3 +7,4 @@ export * from './amqp.log-elasticsearch.service';
7
7
  export * from './naver-search-ad.modules';
8
8
  export * from './amqp.split-invoice-excel.service';
9
9
  export * from './amqp.crm-cohort-excel.service';
10
+ export * from './amqp.ad-performance-report.service';
@@ -23,3 +23,4 @@ __exportStar(require("./amqp.log-elasticsearch.service"), exports);
23
23
  __exportStar(require("./naver-search-ad.modules"), exports);
24
24
  __exportStar(require("./amqp.split-invoice-excel.service"), exports);
25
25
  __exportStar(require("./amqp.crm-cohort-excel.service"), exports);
26
+ __exportStar(require("./amqp.ad-performance-report.service"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yolo-croket-dev/amqp-access",
3
- "version": "0.7.224",
3
+ "version": "0.7.225-kkook.0",
4
4
  "main": "index.js",
5
5
  "author": "Yolo Co., Ltd.",
6
6
  "description": "크로켓 amqp-access npm",
@@ -27,4 +27,4 @@
27
27
  "class-validator": "^0.13.2",
28
28
  "dotenv": "^16.3.1"
29
29
  }
30
- }
30
+ }
@@ -1,6 +1,6 @@
1
1
  import { AdCenterSettle } from '@yolo-croket-dev/entity/src/ad-center-settle/ad-center-settle.schema';
2
2
  import { BusinessInfo } from '@yolo-croket-dev/entity/src/store';
3
- declare const AdCenterSettleForGoogleSheet_base: import("@nestjs/common").Type<Pick<AdCenterSettle, "_id" | "sellerId" | "publicId" | "couponInfo" | "pastStoreInfo" | "expectedSettleDateString" | "adType" | "adCenterStartDateString" | "adCenterEndDateString" | "actualSettleDateString" | "PInfoId" | "transactionInfo" | "subtractionSettleAmountInfo" | "bizMemo" | "financeMemo" | "settlementManagerInfo" | "googleSheetInfo">>;
3
+ declare const AdCenterSettleForGoogleSheet_base: import("@nestjs/common").Type<Pick<AdCenterSettle, "_id" | "sellerId" | "couponInfo" | "publicId" | "pastStoreInfo" | "expectedSettleDateString" | "adType" | "adCenterStartDateString" | "adCenterEndDateString" | "actualSettleDateString" | "PInfoId" | "transactionInfo" | "subtractionSettleAmountInfo" | "bizMemo" | "financeMemo" | "settlementManagerInfo" | "googleSheetInfo">>;
4
4
  /** 구글 시트용 광고센터정산 데이터 */
5
5
  export declare class AdCenterSettleForGoogleSheet extends AdCenterSettleForGoogleSheet_base {
6
6
  storeInfo: {
@@ -32,24 +32,6 @@ __decorate([
32
32
  (0, class_transformer_1.Type)(() => UpdateItemKeywordsBulkData),
33
33
  __metadata("design:type", Array)
34
34
  ], UpdateItemKeywordsBulkPayload.prototype, "itemInfos", void 0);
35
- // export enum ItemKeywordBulkFailureResolution {
36
- // OVERWRITE_AVAILABLE = 'OVERWRITE_AVAILABLE',
37
- // NOT_AVAILABLE = 'NOT_AVAILABLE',
38
- // }
39
- // export class ItemKeywordBulkFailure {
40
- // itemId!: string;
41
- // reasonCode!: string;
42
- // reasonMessage!: string;
43
- // resolution!: ItemKeywordBulkFailureResolution;
44
- // existingItemKeywords!: StoreItemKeyword[];
45
- // requestedItemKeywords!: StoreItemKeyword[];
46
- // }
47
35
  class UpdateItemKeywordsBulkResult {
48
36
  }
49
37
  exports.UpdateItemKeywordsBulkResult = UpdateItemKeywordsBulkResult;
50
- // export class OverwriteItemKeywordsBulkPayload {
51
- // @IsArray()
52
- // @ValidateNested({ each: true })
53
- // @Type(() => UpdateItemKeywordsBulkData)
54
- // itemInfos!: UpdateItemKeywordsBulkData[];
55
- // }
@@ -0,0 +1,28 @@
1
+ import { MDThemeAutoDisplayCategory, MDThemeAutoDisplaySortTypeEnum, StoreMDThemeGroupList } from '@yolo-croket-dev/entity/src/storemdtheme';
2
+ import { SearchStoreMDThemeDetailByIdResult } from './search-store-md-theme-detail-by-id.dto';
3
+ declare class StoreMDThemeAdminPreviewItem {
4
+ itemId: string;
5
+ sortNums: number;
6
+ }
7
+ declare class StoreMDThemeAdminPreviewCategory implements MDThemeAutoDisplayCategory {
8
+ mainCategory: string;
9
+ subCategory?: string;
10
+ }
11
+ declare class StoreMDThemeAdminPreviewGroup implements Omit<StoreMDThemeGroupList, 'MDThemeItemList' | 'MDThemeBanner' | 'MDThemeAutoDisplayBrandIds' | 'MDThemeAutoDisplayCategories'> {
12
+ MDThemeGroupSortNumber: number;
13
+ MDThemeGroupMainTitle: string;
14
+ MDThemeGroupSubTitle: string;
15
+ MDThemeItemList: StoreMDThemeAdminPreviewItem[];
16
+ MDThemeItemAutoDisplay?: boolean;
17
+ MDThemeManualItemPopularSortEnabled: boolean;
18
+ MDThemeSoldOutItemBottomSortEnabled: boolean;
19
+ MDThemeAutoDisplayBrandIds?: string[];
20
+ MDThemeAutoDisplayCategories?: StoreMDThemeAdminPreviewCategory[];
21
+ MDThemeAutoDisplaySortType?: MDThemeAutoDisplaySortTypeEnum;
22
+ }
23
+ export declare class GetStoreMDThemeAdminPreviewPayload {
24
+ MDThemeGroupList: StoreMDThemeAdminPreviewGroup[];
25
+ }
26
+ export interface GetStoreMDThemeAdminPreviewResult extends Pick<SearchStoreMDThemeDetailByIdResult, 'MDThemeItemList'> {
27
+ }
28
+ export {};
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.GetStoreMDThemeAdminPreviewPayload = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const storemdtheme_1 = require("@yolo-croket-dev/entity/src/storemdtheme");
16
+ class StoreMDThemeAdminPreviewItem {
17
+ }
18
+ __decorate([
19
+ (0, class_validator_1.IsMongoId)(),
20
+ __metadata("design:type", String)
21
+ ], StoreMDThemeAdminPreviewItem.prototype, "itemId", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsInt)(),
24
+ (0, class_validator_1.Min)(0),
25
+ (0, class_validator_1.Max)(99),
26
+ __metadata("design:type", Number)
27
+ ], StoreMDThemeAdminPreviewItem.prototype, "sortNums", void 0);
28
+ class StoreMDThemeAdminPreviewCategory {
29
+ }
30
+ __decorate([
31
+ (0, class_validator_1.IsString)(),
32
+ (0, class_validator_1.MinLength)(1),
33
+ __metadata("design:type", String)
34
+ ], StoreMDThemeAdminPreviewCategory.prototype, "mainCategory", void 0);
35
+ __decorate([
36
+ (0, class_validator_1.IsOptional)(),
37
+ (0, class_validator_1.IsString)(),
38
+ (0, class_validator_1.MinLength)(1),
39
+ __metadata("design:type", String)
40
+ ], StoreMDThemeAdminPreviewCategory.prototype, "subCategory", void 0);
41
+ class StoreMDThemeAdminPreviewGroup {
42
+ }
43
+ __decorate([
44
+ (0, class_validator_1.IsNumber)(),
45
+ __metadata("design:type", Number)
46
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeGroupSortNumber", void 0);
47
+ __decorate([
48
+ (0, class_validator_1.IsString)(),
49
+ (0, class_validator_1.MinLength)(1),
50
+ (0, class_validator_1.MaxLength)(10),
51
+ __metadata("design:type", String)
52
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeGroupMainTitle", void 0);
53
+ __decorate([
54
+ (0, class_validator_1.IsString)(),
55
+ (0, class_validator_1.MinLength)(1),
56
+ (0, class_validator_1.MaxLength)(20),
57
+ __metadata("design:type", String)
58
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeGroupSubTitle", void 0);
59
+ __decorate([
60
+ (0, class_validator_1.IsArray)(),
61
+ (0, class_validator_1.ArrayMaxSize)(100),
62
+ (0, class_validator_1.ValidateNested)({ each: true }),
63
+ (0, class_transformer_1.Type)(() => StoreMDThemeAdminPreviewItem),
64
+ __metadata("design:type", Array)
65
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeItemList", void 0);
66
+ __decorate([
67
+ (0, class_validator_1.IsOptional)(),
68
+ (0, class_validator_1.IsBoolean)(),
69
+ __metadata("design:type", Boolean)
70
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeItemAutoDisplay", void 0);
71
+ __decorate([
72
+ (0, class_validator_1.IsBoolean)(),
73
+ __metadata("design:type", Boolean)
74
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeManualItemPopularSortEnabled", void 0);
75
+ __decorate([
76
+ (0, class_validator_1.IsBoolean)(),
77
+ __metadata("design:type", Boolean)
78
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeSoldOutItemBottomSortEnabled", void 0);
79
+ __decorate([
80
+ (0, class_validator_1.IsOptional)(),
81
+ (0, class_validator_1.IsArray)(),
82
+ (0, class_validator_1.ArrayMaxSize)(5),
83
+ (0, class_validator_1.ArrayUnique)(),
84
+ (0, class_validator_1.IsMongoId)({ each: true }),
85
+ __metadata("design:type", Array)
86
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeAutoDisplayBrandIds", void 0);
87
+ __decorate([
88
+ (0, class_validator_1.IsOptional)(),
89
+ (0, class_validator_1.IsArray)(),
90
+ (0, class_validator_1.ArrayMaxSize)(3),
91
+ (0, class_validator_1.ValidateNested)({ each: true }),
92
+ (0, class_transformer_1.Type)(() => StoreMDThemeAdminPreviewCategory),
93
+ __metadata("design:type", Array)
94
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeAutoDisplayCategories", void 0);
95
+ __decorate([
96
+ (0, class_validator_1.ValidateIf)(group => (group.MDThemeItemAutoDisplay === true
97
+ || group.MDThemeAutoDisplaySortType !== undefined)),
98
+ (0, class_validator_1.IsEnum)(storemdtheme_1.MDThemeAutoDisplaySortTypeEnum),
99
+ __metadata("design:type", String)
100
+ ], StoreMDThemeAdminPreviewGroup.prototype, "MDThemeAutoDisplaySortType", void 0);
101
+ class GetStoreMDThemeAdminPreviewPayload {
102
+ }
103
+ exports.GetStoreMDThemeAdminPreviewPayload = GetStoreMDThemeAdminPreviewPayload;
104
+ __decorate([
105
+ (0, class_validator_1.IsArray)(),
106
+ (0, class_validator_1.ArrayMinSize)(1),
107
+ (0, class_validator_1.ArrayMaxSize)(20),
108
+ (0, class_validator_1.ValidateNested)({ each: true }),
109
+ (0, class_transformer_1.Type)(() => StoreMDThemeAdminPreviewGroup),
110
+ __metadata("design:type", Array)
111
+ ], GetStoreMDThemeAdminPreviewPayload.prototype, "MDThemeGroupList", void 0);
@@ -1,4 +1,5 @@
1
1
  export * from './get-store-md-theme-by-id.dto';
2
+ export * from './get-store-md-theme-admin-preview.dto';
2
3
  export * from './search-store-md-theme-detail-by-id.dto';
3
4
  export * from './search-store-md-theme-ids-by-item-id.dto';
4
5
  export * from './get-store-md-themes-by-brand-name.dto';
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./get-store-md-theme-by-id.dto"), exports);
18
+ __exportStar(require("./get-store-md-theme-admin-preview.dto"), exports);
18
19
  __exportStar(require("./search-store-md-theme-detail-by-id.dto"), exports);
19
20
  __exportStar(require("./search-store-md-theme-ids-by-item-id.dto"), exports);
20
21
  __exportStar(require("./get-store-md-themes-by-brand-name.dto"), exports);
@@ -1,13 +1,14 @@
1
1
  import { ClientProxy } from '@nestjs/microservices';
2
2
  import { AbstractParam } from '@yolo-croket-dev/core';
3
3
  import { StoreMDThemeEntity } from '@yolo-croket-dev/entity/src/storemdtheme';
4
- import { GetStoreMDThemeByIdPayload, SearchStoreMDThemeDetailByIdPayload, SearchStoreMDThemeDetailByIdResult, SearchStoreMDThemeIdsByItemIdPayload, SearchStoreMDThemeIdsByItemIdResult, GetStoreMDThemesByBrandNamePayload, GetStoreMDThemesByBrandNameResult, DeleteMDThemeBrandIdPayload } from '../dto/store-md-theme';
4
+ import { GetStoreMDThemeByIdPayload, GetStoreMDThemeAdminPreviewPayload, GetStoreMDThemeAdminPreviewResult, SearchStoreMDThemeDetailByIdPayload, SearchStoreMDThemeDetailByIdResult, SearchStoreMDThemeIdsByItemIdPayload, SearchStoreMDThemeIdsByItemIdResult, GetStoreMDThemesByBrandNamePayload, GetStoreMDThemesByBrandNameResult, DeleteMDThemeBrandIdPayload } from '../dto/store-md-theme';
5
5
  export declare class AmqpStoreMdThemeService {
6
6
  private readonly client;
7
7
  private readonly amqpManager;
8
8
  constructor(client: ClientProxy);
9
9
  getStoreMDThemeById(payload: GetStoreMDThemeByIdPayload, param: AbstractParam): Promise<StoreMDThemeEntity>;
10
10
  searchStoreMDThemeDetailById(payload: SearchStoreMDThemeDetailByIdPayload, param: AbstractParam): Promise<SearchStoreMDThemeDetailByIdResult>;
11
+ getStoreMDThemeAdminPreview(payload: GetStoreMDThemeAdminPreviewPayload, param: AbstractParam): Promise<GetStoreMDThemeAdminPreviewResult>;
11
12
  searchStoreMDThemeIdsByItemId(payload: SearchStoreMDThemeIdsByItemIdPayload, param: AbstractParam): Promise<SearchStoreMDThemeIdsByItemIdResult>;
12
13
  getStoreMDThemesByBrandName(payload: GetStoreMDThemesByBrandNamePayload, param: AbstractParam): Promise<GetStoreMDThemesByBrandNameResult>;
13
14
  deleteMDThemeBrandId(payload: DeleteMDThemeBrandIdPayload, param: AbstractParam): Promise<void>;
@@ -27,6 +27,9 @@ let AmqpStoreMdThemeService = class AmqpStoreMdThemeService {
27
27
  async searchStoreMDThemeDetailById(payload, param) {
28
28
  return this.amqpManager.call('MDTheme 상세 조회', 'store-md-theme.get.detail-by-id', payload, param, { isErrorThrowing: true });
29
29
  }
30
+ async getStoreMDThemeAdminPreview(payload, param) {
31
+ return this.amqpManager.call('MDTheme 관리자 미리보기 조회', 'store-md-theme.get.admin-preview', payload, param, { isErrorThrowing: true });
32
+ }
30
33
  async searchStoreMDThemeIdsByItemId(payload, param) {
31
34
  return this.amqpManager.call('상품 아이디로 MDTheme 아이디 리스트 조회', 'store-md-theme.get.ids-by-item-id', payload, param, { isErrorThrowing: true });
32
35
  }