@bslau/hmm_prisma_schema 1.19.0 → 1.20.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bslau/hmm_prisma_schema",
3
- "version": "1.19.0",
3
+ "version": "1.20.0",
4
4
  "main": "index.js",
5
5
  "author": "CIPA Development Team",
6
6
  "license": "ISC",
@@ -6,7 +6,7 @@ const prisma = new PrismaClient();
6
6
  async function deleteTorpedo(torpedoId: number) {
7
7
  await prisma.$transaction(async (tx) => {
8
8
  //
9
- // 1️⃣ COMMENTS
9
+ // COMMENTS
10
10
  //
11
11
  await tx.hMHComment.deleteMany({
12
12
  where: { torpedoId },
@@ -16,21 +16,21 @@ async function deleteTorpedo(torpedoId: number) {
16
16
  });
17
17
 
18
18
  //
19
- // 2️⃣ LADLE SURVEYS
19
+ // LADLE SURVEYS
20
20
  //
21
21
  await tx.hMHLadleSurvey.deleteMany({
22
22
  where: { torpedoId },
23
23
  });
24
24
 
25
25
  //
26
- // 3️⃣ TORPEDO TIMER
26
+ // TORPEDO TIMER
27
27
  //
28
28
  await tx.torpedoTimer.deleteMany({
29
29
  where: { torpedoId },
30
30
  });
31
31
 
32
32
  //
33
- // 4️⃣ EVENT TABLES
33
+ // EVENT TABLES
34
34
  //
35
35
  await tx.eventTorpedoCapacity.deleteMany({
36
36
  where: { torpedoId },
@@ -49,7 +49,7 @@ async function deleteTorpedo(torpedoId: number) {
49
49
  });
50
50
 
51
51
  //
52
- // 5️⃣ TORPEDO CYCLES & TRIPS
52
+ // TORPEDO CYCLES & TRIPS
53
53
  //
54
54
  await tx.torpedoCycle.deleteMany({
55
55
  where: { torpedoId },
@@ -60,7 +60,7 @@ async function deleteTorpedo(torpedoId: number) {
60
60
  });
61
61
 
62
62
  //
63
- // 6️⃣ HOT METAL + LAB RESULTS + HOT METAL POURED
63
+ // HOT METAL + LAB RESULTS + HOT METAL POURED
64
64
  //
65
65
  const hotMetals = await tx.hotMetal.findMany({
66
66
  where: { torpedoId },
@@ -84,21 +84,41 @@ async function deleteTorpedo(torpedoId: number) {
84
84
  }
85
85
 
86
86
  //
87
- // 7️⃣ TORPEDO CAMPAIGNS
87
+ // TORPEDO CAMPAIGNS
88
88
  //
89
89
  await tx.torpedoCampaign.deleteMany({
90
90
  where: { torpedoId },
91
91
  });
92
92
 
93
93
  //
94
- // 8️⃣ TORPEDO LOCATION
94
+ // TORPEDO LOCATION
95
95
  //
96
96
  await tx.torpedoLocation.deleteMany({
97
97
  where: { torpedoId },
98
98
  });
99
99
 
100
100
  //
101
- // 9️⃣ DELETE TORPEDO LAST
101
+ // NOTIFICATION + NOTIFICATION DISPLAY
102
+ //
103
+ const notifications = await tx.notification.findMany({
104
+ where: { torpedoId },
105
+ select: { id: true },
106
+ });
107
+
108
+ const notificationIds = notifications.map((n) => n.id);
109
+
110
+ if (notificationIds.length > 0) {
111
+ await tx.notificationDisplay.deleteMany({
112
+ where: { notificationId: { in: notificationIds } },
113
+ });
114
+
115
+ await tx.notification.deleteMany({
116
+ where: { torpedoId },
117
+ });
118
+ }
119
+
120
+ //
121
+ // DELETE TORPEDO LAST
102
122
  //
103
123
  await tx.torpedo.delete({
104
124
  where: { torpedoId: torpedoId },
@@ -0,0 +1,22 @@
1
+ BEGIN TRY
2
+
3
+ BEGIN TRAN;
4
+
5
+ -- DropIndex
6
+ ALTER TABLE [dbo].[HotMetal] DROP CONSTRAINT [HotMetal_castSequence_torpedoId_key];
7
+
8
+ -- AlterTable
9
+ ALTER TABLE [dbo].[HotMetal] ALTER COLUMN [torpedoId] INT NULL;
10
+
11
+ COMMIT TRAN;
12
+
13
+ END TRY
14
+ BEGIN CATCH
15
+
16
+ IF @@TRANCOUNT > 0
17
+ BEGIN
18
+ ROLLBACK TRAN;
19
+ END;
20
+ THROW
21
+
22
+ END CATCH
@@ -236,8 +236,8 @@ model HotMetal {
236
236
  mesId Int?
237
237
  cast Cast @relation(fields: [castSequence], references: [sequenceCastBlastFurnace], onDelete: NoAction, onUpdate: Cascade)
238
238
  castSequence Int
239
- torpedo Torpedo @relation(fields: [torpedoId], references: [torpedoId], onDelete: NoAction, onUpdate: Cascade)
240
- torpedoId Int
239
+ torpedo Torpedo? @relation(fields: [torpedoId], references: [torpedoId], onDelete: NoAction, onUpdate: Cascade)
240
+ torpedoId Int?
241
241
  labResult HotMetalLabResult[]
242
242
  torpedoCycle TorpedoCycle[]
243
243
  torpedoTrip TorpedoTrip[]
@@ -274,8 +274,6 @@ model HotMetal {
274
274
  hotMetalPouredCollection HotMetalPoured[]
275
275
  createdAt DateTime @default(now())
276
276
  updatedAt DateTime @updatedAt
277
-
278
- @@unique(name: "cast_torpedo_id", [castSequence, torpedoId])
279
277
  }
280
278
 
281
279
  /// **LAB RESULT**