File tree Expand file tree Collapse file tree 1 file changed +63
-0
lines changed Expand file tree Collapse file tree 1 file changed +63
-0
lines changed Original file line number Diff line number Diff line change
1
+ import { prisma } from "@dub/prisma" ;
2
+ import "dotenv-flow/config" ;
3
+ import { bulkDeleteLinks } from "../lib/api/links/bulk-delete-links" ;
4
+
5
+ async function main ( ) {
6
+ const partners = await prisma . partner . findMany ( {
7
+ where : {
8
+ programs : {
9
+ some : {
10
+ programId : "prog_xxx" ,
11
+ } ,
12
+ } ,
13
+ } ,
14
+ include : {
15
+ programs : {
16
+ select : {
17
+ links : true ,
18
+ } ,
19
+ } ,
20
+ } ,
21
+ take : 1 ,
22
+ } ) ;
23
+
24
+ for ( const partner of partners ) {
25
+ const programEnrollment = partner . programs [ 0 ] ;
26
+ const links = programEnrollment . links ;
27
+
28
+ const deleteLinkCaches = await bulkDeleteLinks ( links ) ;
29
+ console . log ( "Deleted link caches" , deleteLinkCaches ) ;
30
+
31
+ const deleteLinks = await prisma . link . deleteMany ( {
32
+ where : {
33
+ id : {
34
+ in : links . map ( ( link ) => link . id ) ,
35
+ } ,
36
+ } ,
37
+ } ) ;
38
+ console . log ( "Deleted links" , deleteLinks ) ;
39
+
40
+ const deleteSales = await prisma . sale . deleteMany ( {
41
+ where : {
42
+ partnerId : partner . id ,
43
+ } ,
44
+ } ) ;
45
+ console . log ( "Deleted sales" , deleteSales ) ;
46
+
47
+ const deletePayouts = await prisma . payout . deleteMany ( {
48
+ where : {
49
+ partnerId : partner . id ,
50
+ } ,
51
+ } ) ;
52
+ console . log ( "Deleted payouts" , deletePayouts ) ;
53
+
54
+ const deletePartner = await prisma . partner . delete ( {
55
+ where : {
56
+ id : partner . id ,
57
+ } ,
58
+ } ) ;
59
+ console . log ( "Deleted partner" , deletePartner ) ;
60
+ }
61
+ }
62
+
63
+ main ( ) ;
You can’t perform that action at this time.
0 commit comments