finance cpv
This commit is contained in:
120
src/entity/finance/finance_cpvs.ts
Normal file
120
src/entity/finance/finance_cpvs.ts
Normal file
@ -0,0 +1,120 @@
|
||||
import { Column, CreateDateColumn, DeleteDateColumn, Entity, JoinColumn, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from "typeorm";
|
||||
import { HrmsEmployee } from "../hrms/hrms_employee";
|
||||
import { FinanceAtividade } from "./finance_atividade";
|
||||
import { FinanceLocalizacao } from "./finance_localizacao";
|
||||
import { FinanceSubBudgetLine } from "./fincance_sub_budget_lines";
|
||||
import { FinanceCpvPaymentMethodType, FinanceCpvPaymentModelType, FinanceCpvPaymentStageType, FinanceCpvStatusType, FinanceCpvType, FinancePurchaseRequestStatusType } from "../../types/finance";
|
||||
import { FinanceAgencia } from "./finance_agencia";
|
||||
import { FinanceFundingSource } from "./finance_funding_sources";
|
||||
import { FinanceCompany } from "./finance_company";
|
||||
|
||||
@Entity("finance_cpvs", { schema: "finances" })
|
||||
export class FinanceCpv {
|
||||
@PrimaryGeneratedColumn("uuid")
|
||||
id: string;
|
||||
|
||||
@ManyToOne(() => FinanceFundingSource, { onDelete: "NO ACTION", nullable: true })
|
||||
@JoinColumn()
|
||||
funding_source: FinanceFundingSource;
|
||||
|
||||
@ManyToOne(() => FinanceAgencia, { onDelete: "NO ACTION", nullable: true })
|
||||
@JoinColumn()
|
||||
agencia: FinanceAgencia;
|
||||
|
||||
@ManyToOne(() => FinanceAtividade, { onDelete: "NO ACTION", nullable: true })
|
||||
@JoinColumn()
|
||||
atividade: FinanceAtividade;
|
||||
|
||||
@ManyToOne(() => FinanceSubBudgetLine, { onDelete: "NO ACTION", nullable: true })
|
||||
@JoinColumn()
|
||||
sub_budget_line: FinanceSubBudgetLine;
|
||||
|
||||
@ManyToOne(() => FinanceLocalizacao, { onDelete: "NO ACTION", nullable: true })
|
||||
@JoinColumn()
|
||||
localizacao: FinanceLocalizacao;
|
||||
|
||||
@Column({
|
||||
nullable: false,
|
||||
length: 128,
|
||||
})
|
||||
type: FinanceCpvType;
|
||||
|
||||
@Column({
|
||||
unique: true,
|
||||
length: 128,
|
||||
})
|
||||
code: string;
|
||||
|
||||
@Column({
|
||||
nullable: false,
|
||||
})
|
||||
cpv_at: Date;
|
||||
|
||||
@Column({
|
||||
nullable: false,
|
||||
length: 128,
|
||||
})
|
||||
payment_model: FinanceCpvPaymentModelType;
|
||||
|
||||
@Column({
|
||||
nullable: false,
|
||||
length: 128,
|
||||
})
|
||||
payment_stage: FinanceCpvPaymentStageType;
|
||||
|
||||
@Column({
|
||||
nullable: true,
|
||||
type: "float8",
|
||||
})
|
||||
amount: number;
|
||||
|
||||
@Column({
|
||||
type: "text",
|
||||
nullable: true,
|
||||
})
|
||||
amount_words: String;
|
||||
|
||||
@ManyToOne(() => FinanceCompany, { onDelete: "NO ACTION", nullable: true })
|
||||
@JoinColumn()
|
||||
company: FinanceCompany;
|
||||
|
||||
@Column({
|
||||
type: "text",
|
||||
nullable: true,
|
||||
})
|
||||
description_item: String;
|
||||
|
||||
@Column({
|
||||
nullable: false,
|
||||
length: 128,
|
||||
})
|
||||
payment_method: FinanceCpvPaymentMethodType;
|
||||
|
||||
@Column({
|
||||
nullable: false,
|
||||
default: FinanceCpvStatusType.draft,
|
||||
length: 128,
|
||||
})
|
||||
status: FinanceCpvStatusType;
|
||||
|
||||
@Column()
|
||||
@CreateDateColumn()
|
||||
created_at: Date;
|
||||
|
||||
@Column({ nullable: true, length: 256 })
|
||||
created_by: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
@UpdateDateColumn()
|
||||
updated_at: Date;
|
||||
|
||||
@Column({ nullable: true, length: 256 })
|
||||
updated_by: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
@DeleteDateColumn()
|
||||
deleted_at: Date;
|
||||
|
||||
@Column({ nullable: true, length: 256 })
|
||||
deleted_by: string;
|
||||
}
|
||||
@ -5,3 +5,38 @@ export enum FinancePurchaseRequestStatusType {
|
||||
approve = "approve",
|
||||
reject = "reject",
|
||||
}
|
||||
|
||||
export enum FinanceCpvType {
|
||||
buying_service = "buying_service",
|
||||
capital_minor = "capital_minor",
|
||||
}
|
||||
|
||||
export enum FinanceCpvPaymentModelType {
|
||||
pagamento_directo = "pagamento_directo",
|
||||
aprovisionamento_centralizado = "aprovisionamento_centralizado",
|
||||
aprovisionamento_adn = "aprovisionamento_adn",
|
||||
}
|
||||
|
||||
export enum FinanceCpvPaymentStageType {
|
||||
adiantamento = "adiantamento",
|
||||
parcial = "parcial",
|
||||
final = "final",
|
||||
adicional = "adicional",
|
||||
}
|
||||
|
||||
export enum FinanceCpvPaymentMethodType {
|
||||
cash = "cash",
|
||||
transfer = "transfer",
|
||||
cheque = "cheque",
|
||||
}
|
||||
|
||||
export enum FinanceCpvStatusType {
|
||||
draft = "draft",
|
||||
pending_finance = "pending_finance",
|
||||
pending_agency = "pending_agency",
|
||||
pending_pagemento = "pending_pagemento",
|
||||
pending_treasury = "pending_treasury",
|
||||
pending_president = "pending_president",
|
||||
approve = "approve",
|
||||
reject = "reject",
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user