Feature/add user id to symbol profile database schema (#4122)
* Add userId to SymbolProfile database schema * Update changelog
This commit is contained in:
parent
57659d2c04
commit
de68841843
@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## Unreleased
|
||||
|
||||
### Added
|
||||
|
||||
- Added `userId` to the `SymbolProfile` database schema
|
||||
|
||||
## 2.128.0 - 2024-12-12
|
||||
|
||||
### Changed
|
||||
|
@ -224,7 +224,7 @@ export class ImportService {
|
||||
|
||||
for (const activity of activitiesDto) {
|
||||
if (!activity.dataSource) {
|
||||
if (activity.type === 'ITEM' || activity.type === 'LIABILITY') {
|
||||
if (['FEE', 'INTEREST', 'ITEM', 'LIABILITY'].includes(activity.type)) {
|
||||
activity.dataSource = DataSource.MANUAL;
|
||||
} else {
|
||||
activity.dataSource =
|
||||
@ -356,6 +356,7 @@ export class ImportService {
|
||||
quantity,
|
||||
type,
|
||||
unitPrice,
|
||||
Account: validatedAccount,
|
||||
accountId: validatedAccount?.id,
|
||||
accountUserId: undefined,
|
||||
createdAt: new Date(),
|
||||
@ -380,10 +381,10 @@ export class ImportService {
|
||||
symbolMapping,
|
||||
updatedAt,
|
||||
url,
|
||||
comment: assetProfile.comment,
|
||||
currency: assetProfile.currency,
|
||||
comment: assetProfile.comment
|
||||
userId: dataSource === 'MANUAL' ? user.id : undefined
|
||||
},
|
||||
Account: validatedAccount,
|
||||
symbolProfileId: undefined,
|
||||
updatedAt: new Date(),
|
||||
userId: user.id
|
||||
@ -406,7 +407,8 @@ export class ImportService {
|
||||
create: {
|
||||
dataSource,
|
||||
symbol,
|
||||
currency: assetProfile.currency
|
||||
currency: assetProfile.currency,
|
||||
userId: dataSource === 'MANUAL' ? user.id : undefined
|
||||
},
|
||||
where: {
|
||||
dataSource_symbol: {
|
||||
|
@ -93,7 +93,7 @@ export class OrderService {
|
||||
userId: string;
|
||||
}
|
||||
): Promise<Order> {
|
||||
let Account;
|
||||
let Account: Prisma.AccountCreateNestedOneWithoutOrderInput;
|
||||
|
||||
if (data.accountId) {
|
||||
Account = {
|
||||
@ -124,6 +124,7 @@ export class OrderService {
|
||||
data.SymbolProfile.connectOrCreate.create.dataSource = dataSource;
|
||||
data.SymbolProfile.connectOrCreate.create.name = name;
|
||||
data.SymbolProfile.connectOrCreate.create.symbol = id;
|
||||
data.SymbolProfile.connectOrCreate.create.userId = userId;
|
||||
data.SymbolProfile.connectOrCreate.where.dataSource_symbol = {
|
||||
dataSource,
|
||||
symbol: id
|
||||
|
@ -0,0 +1,15 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "SymbolProfile" ADD COLUMN "userId" TEXT;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "SymbolProfile" ADD CONSTRAINT "SymbolProfile_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- Set userIds in SymbolProfile for 'MANUAL' data source
|
||||
UPDATE "SymbolProfile"
|
||||
SET "userId" = (
|
||||
SELECT "userId"
|
||||
FROM "Order"
|
||||
WHERE "Order"."symbolProfileId" = "SymbolProfile"."id"
|
||||
LIMIT 1
|
||||
)
|
||||
WHERE "dataSource" = 'MANUAL';
|
@ -188,8 +188,10 @@ model SymbolProfile {
|
||||
symbol String
|
||||
symbolMapping Json?
|
||||
url String?
|
||||
userId String?
|
||||
Order Order[]
|
||||
SymbolProfileOverrides SymbolProfileOverrides?
|
||||
User User? @relation(fields: [userId], onDelete: Cascade, references: [id])
|
||||
|
||||
@@unique([dataSource, symbol])
|
||||
@@index([assetClass])
|
||||
@ -254,6 +256,7 @@ model User {
|
||||
Order Order[]
|
||||
Settings Settings?
|
||||
Subscription Subscription[]
|
||||
SymbolProfile SymbolProfile[]
|
||||
Tag Tag[]
|
||||
|
||||
@@index([accessToken])
|
||||
|
Loading…
x
Reference in New Issue
Block a user