add summarize

This commit is contained in:
fro1991
2024-12-19 03:59:48 +07:00
parent b475d6c738
commit 36f5f2fef1
6 changed files with 190 additions and 37 deletions

View File

@ -1,5 +1,6 @@
import { Column, CreateDateColumn, DeleteDateColumn, Entity, JoinColumn, ManyToOne, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm';
import { Column, CreateDateColumn, DeleteDateColumn, Entity, ManyToOne, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm';
import { CategoryType } from '../types/category';
import { CategorySource } from '../types/category_source';
import { Status } from '../types/status';
import { Target } from './targets';
@ -57,10 +58,28 @@ export class Category {
})
products: string[];
@Column({
type: 'enum',
enum: CategoryType,
nullable: true,
})
type: CategoryType
@Column({
type: 'jsonb',
nullable: true,
})
condition: string[]
@Column({
nullable: true,
length: 50,
})
date_column: string
@OneToMany(() => Target, (target) => target.category)
targets: Target[];
@Column()
@CreateDateColumn()
created_at: Date;

View File

@ -0,0 +1,57 @@
import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, Index, OneToOne, ManyToOne, JoinColumn } from 'typeorm';
import { SummarizeType, SummarizeLogStatus } from '../types/summarize';
import { Category } from './categories';
@Entity('summarize_log')
export class SummarizeLog {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column({
nullable: true,
length: 256
})
position_date: string;
@Column({
type: 'enum',
enum: SummarizeType,
nullable: false,
})
type: SummarizeType;
@ManyToOne(() => Category)
@JoinColumn()
category: Category;
@Column({
type: 'enum',
enum: SummarizeLogStatus,
nullable: false,
})
status: SummarizeLogStatus;
@Column({
nullable: true,
type: 'text'
})
error_log: string;
@Column()
@CreateDateColumn()
created_at: Date;
@Column()
@UpdateDateColumn()
updated_at: Date;
@Column({
nullable: true
})
finished_at: Date;
@Column({ nullable: true })
@DeleteDateColumn()
deleted_at: Date;
}

46
src/entity/summarizes.ts Normal file
View File

@ -0,0 +1,46 @@
import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, Index, ManyToOne, JoinColumn } from 'typeorm';
import { SummarizeType } from '../types/summarize';
import { Category } from './categories';
import { Branch } from './branchs';
@Entity('summarizes')
export class Summarize {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column({
nullable: true,
length: 256
})
position_date: string;
@Column({
type: 'enum',
enum: SummarizeType,
nullable: false,
})
type: SummarizeType;
@ManyToOne(() => Category)
@JoinColumn()
category_parent: Category;
@ManyToOne(() => Category)
@JoinColumn()
category_child: Category;
@ManyToOne(() => Branch)
@JoinColumn()
branch: Branch
@Column({
nullable: false,
type: 'float8'
})
total: number;
@Column()
@CreateDateColumn()
created_at: Date;
}

View File

@ -31,41 +31,50 @@ import { Target } from "./entity/targets";
import { BankGaransi } from "./entity/bank_garansi";
import { BankGaransiType } from "./entity/bank_garansi_type";
import { BankGaransiStatus } from "./entity/bank_garansi_status";
import { CategoryType } from "./types/category";
import { Summarize } from "./entity/summarizes";
import { SummarizeLog } from "./entity/summarize_log";
import { SummarizeLogStatus, SummarizeType } from "./types/summarize";
export {
User, //
UserRole,
UserActivity,
UserRefreshToken,
TrialBalanceBranch,
TrialBalanceConsolidation,
LNKOLEK,
CifAccount,
ActivityType,
ErrorType,
ErrorValidation,
Paging,
RoleList,
Status,
EmailBody,
Product,
Branch,
Menu,
Administrativu,
Aldeia,
ClassEconomi,
District,
IncomeTier,
Munisipo,
Suco,
LogPull,
LogPullType,
StatusLogPull,
Category,
CategorySource,
PullerStatus,
Target,
BankGaransi,
BankGaransiType,
BankGaransiStatus,
User, //
UserRole,
UserActivity,
UserRefreshToken,
TrialBalanceBranch,
TrialBalanceConsolidation,
LNKOLEK,
CifAccount,
ActivityType,
ErrorType,
ErrorValidation,
Paging,
RoleList,
Status,
EmailBody,
Product,
Branch,
Menu,
Administrativu,
Aldeia,
ClassEconomi,
District,
IncomeTier,
Munisipo,
Suco,
LogPull,
LogPullType,
StatusLogPull,
Category,
CategorySource,
CategoryType,
PullerStatus,
Target,
BankGaransi,
BankGaransiType,
BankGaransiStatus,
Summarize,
SummarizeLog,
SummarizeLogStatus,
SummarizeType
};

4
src/types/category.ts Normal file
View File

@ -0,0 +1,4 @@
export enum CategoryType {
Parent = 'parent',
Child = 'child',
};

18
src/types/summarize.ts Normal file
View File

@ -0,0 +1,18 @@
export enum SummarizeType {
"ASSET" = "ASSET",
"DPK" = "DPK",
"KREDIT" = "KREDIT",
"CASA" = "CASA",
"FBI" = "FBI",
"NPL" = "NPL",
"PPAP_KHUSUS" = "PPAP_KHUSUS",
"PPAP_UMUM" = "PPAP_UMUM"
};
export enum SummarizeLogStatus {
"Waiting Schedule" = "W",
"On Going Summarize Data" = "O",
"Success Summarize Data" = "Y",
"Failed Summarize Data" = "N"
};