@yolo-croket-dev/entity-v2 0.2.117 → 0.2.119
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.
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Types } from 'mongoose';
|
|
2
|
+
export declare enum CartThirdPushLogStatusEnum {
|
|
3
|
+
/** 발송 완료 */
|
|
4
|
+
sent = "sent",
|
|
5
|
+
/** 발송 실패 */
|
|
6
|
+
failed = "failed"
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* @author jun
|
|
10
|
+
* @description 장바구니 3차 푸시 알림 발송 로그 엔티티
|
|
11
|
+
* @process
|
|
12
|
+
* - 48~72시간 전 장바구니 대상에 쿠폰 발급 + 알림 발송
|
|
13
|
+
* - 발송 결과를 sent/failed로 기록
|
|
14
|
+
* - 당일 중복 발송 방지: buyerId + status=sent + regDate 범위로 체크
|
|
15
|
+
* - TTL: regDate + 60일 후 자동 삭제
|
|
16
|
+
*/
|
|
17
|
+
export interface CartThirdPushLogEntity {
|
|
18
|
+
_id: Types.ObjectId;
|
|
19
|
+
/** 구매자 아이디 */
|
|
20
|
+
buyerId: Types.ObjectId;
|
|
21
|
+
/** 대상 장바구니 아이디 */
|
|
22
|
+
cartId: Types.ObjectId;
|
|
23
|
+
/** 발급된 쿠폰 코드 */
|
|
24
|
+
couponCode: string;
|
|
25
|
+
/** 발송 상태 (sent/failed) */
|
|
26
|
+
status: CartThirdPushLogStatusEnum;
|
|
27
|
+
/** 등록일 (당일 기준 중복 체크용) */
|
|
28
|
+
regDate: Date;
|
|
29
|
+
/** 발송 완료 시각 */
|
|
30
|
+
sentDate?: Date;
|
|
31
|
+
/** 발송 실패 시각 */
|
|
32
|
+
failedDate?: Date;
|
|
33
|
+
/** TTL 자동 삭제 기준일 (regDate + 60일) */
|
|
34
|
+
expiredAt_ttl?: Date;
|
|
35
|
+
/** 쿠폰 발급 성공 여부 (알림 실패 시에도 쿠폰 발급 여부 추적) */
|
|
36
|
+
couponIssued?: boolean;
|
|
37
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CartThirdPushLogStatusEnum = void 0;
|
|
4
|
+
var CartThirdPushLogStatusEnum;
|
|
5
|
+
(function (CartThirdPushLogStatusEnum) {
|
|
6
|
+
/** 발송 완료 */
|
|
7
|
+
CartThirdPushLogStatusEnum["sent"] = "sent";
|
|
8
|
+
/** 발송 실패 */
|
|
9
|
+
CartThirdPushLogStatusEnum["failed"] = "failed";
|
|
10
|
+
})(CartThirdPushLogStatusEnum || (exports.CartThirdPushLogStatusEnum = CartThirdPushLogStatusEnum = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './cart-third-push-log.entity';
|
|
@@ -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("./cart-third-push-log.entity"), exports);
|
package/index.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -71,3 +71,4 @@ __exportStar(require("./attribution-touch"), exports);
|
|
|
71
71
|
__exportStar(require("./attribution-history"), exports);
|
|
72
72
|
__exportStar(require("./cart-push-log"), exports);
|
|
73
73
|
__exportStar(require("./cart-second-push-log"), exports);
|
|
74
|
+
__exportStar(require("./cart-third-push-log"), exports);
|