initial release

This commit is contained in:
2024-02-29 10:23:41 -06:00
commit 5146c8e919
210 changed files with 11040 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
/// <reference types="multer" />
import { FileService } from '../file/file.service.js';
export declare class AccountController {
private fileService;
constructor(fileService: FileService);
uploadFile(file: Express.Multer.File, id: string): void;
}

View File

@@ -0,0 +1,2 @@
export declare class AccountService {
}

View File

@@ -0,0 +1,6 @@
import { AppService } from './app.service.js';
export declare class AppController {
private readonly appService;
constructor(appService: AppService);
getHello(): string;
}

2
bizmatch-server/dist/app.module.d.ts vendored Normal file
View File

@@ -0,0 +1,2 @@
export declare class AppModule {
}

3
bizmatch-server/dist/app.service.d.ts vendored Normal file
View File

@@ -0,0 +1,3 @@
export declare class AppService {
getHello(): string;
}

View File

@@ -0,0 +1,66 @@
[
{
"id":"1",
"userId":"1",
"listingsCategory": "business",
"title": "Industrial Service Company In Corpus Christi For Sale - 1954",
"summary": ["Asking price: $5,500,000","Sales revenue: $1,200,000","Net profit: $650,000"],
"description": ["This company services a wide variety of industries. Asking price includes Business and the Real Estate and is approx 30,000 sq ft with room for expansion including approx 5 acres. Absentee run business."],
"type": "2",
"location": "Texas",
"price":5500000,
"salesRevenue":1200000,
"cashFlow":650000,
"brokerLicencing":"TREC Broker #516788",
"established":1954,
"realEstateIncluded":true
},
{
"id":"2",
"userId":"1",
"listingsCategory": "business",
"title": "Coastal Bend Manufacturing Business Plastic Injection For Sale - 1950",
"summary": ["Asking price: $165,000","Sales revenue: Undisclosed","Net profit: Undisclosed"],
"description": [""],
"type": "12",
"location": "Texas",
"price":165000,
"salesRevenue":null,
"cashFlow":null,
"brokerLicencing":"TREC Broker #516788",
"established":1950,
"realEstateIncluded":false
},
{
"id":"3",
"userId":"1",
"listingsCategory": "business",
"title": "Corner Property On Everhart South-side Corpus Christi For Sale - 1944",
"summary": ["Asking price: $830,000","Sales revenue: Undisclosed","Net profit: Undisclosed"],
"description": [""],
"type": "3",
"location": "Texas",
"price":830000,
"salesRevenue":null,
"cashFlow":null,
"brokerLicencing":"TREC Broker #516788",
"established":1944,
"realEstateIncluded":false
},
{
"id":"4",
"userId":"1",
"listingsCategory": "business",
"title": "Corpus Christi Dessert Business For Sale - 1941",
"summary": ["Asking price: $124,900","Sales revenue: $225,000","Net profit: $50,000"],
"description": [""],
"type": "13",
"location": "Texas",
"price":830000,
"salesRevenue":225000,
"cashFlow":50000,
"brokerLicencing":"TREC Broker #516788",
"established":1941,
"realEstateIncluded":false
}
]

View File

@@ -0,0 +1,14 @@
[{
"id":"1",
"userId":"e0811669-c7eb-4e5e-a699-e8334d5c5b01",
"level":"Business Broker",
"start":"2024-02-12T21:54:20.603Z",
"modified":"2024-02-12T21:54:20.603Z",
"end":"9999-02-12T21:54:20.603Z",
"status":"active",
"invoices":[{
"date":"2024-02-12T21:54:20.603Z",
"id":"C991853B99",
"price":0
}]
}]

View File

@@ -0,0 +1,8 @@
/// <reference types="multer" />
export declare class FileService {
private subscriptions;
constructor();
private loadSubscriptions;
getSubscriptions(): any;
storeFile(file: Express.Multer.File, id: string): Promise<void>;
}

View File

@@ -0,0 +1,13 @@
import { ListingsService } from './listings.service.js';
import { Logger } from 'winston';
export declare class ListingsController {
private readonly listingsService;
private readonly logger;
constructor(listingsService: ListingsService, logger: Logger);
findAll(): any;
findById(id: string): any;
find(criteria: any): any;
updateById(id: string, listing: any): void;
create(listing: any): void;
deleteById(id: string): void;
}

View File

@@ -0,0 +1,13 @@
import { BusinessListing, InvestmentsListing, ListingCriteria, ProfessionalsBrokersListing } from '../models/main.model.js';
import { RedisService } from '../redis/redis.service.js';
import { Logger } from 'winston';
export declare class ListingsService {
private redisService;
private readonly logger;
constructor(redisService: RedisService, logger: Logger);
setListing(value: BusinessListing | ProfessionalsBrokersListing | InvestmentsListing, id?: string): Promise<void>;
getListingById(id: string): Promise<any>;
deleteListing(id: string): void;
getAllListings(start?: number, end?: number): Promise<any>;
find(criteria: ListingCriteria): Promise<any>;
}

View File

@@ -0,0 +1,7 @@
import { MailService } from './mail.service.js';
import { MailInfo } from '../models/server.model.js';
export declare class MailController {
private mailService;
constructor(mailService: MailService);
sendEMail(id: string, mailInfo: MailInfo): any;
}

View File

@@ -0,0 +1,2 @@
export declare class MailModule {
}

View File

@@ -0,0 +1,9 @@
import { MailerService } from '@nestjs-modules/mailer';
import { AuthService } from '../auth/auth.service.js';
import { MailInfo } from '../models/server.model.js';
export declare class MailService {
private mailerService;
private authService;
constructor(mailerService: MailerService, authService: AuthService);
sendInquiry(userId: string, mailInfo: MailInfo): Promise<void>;
}

View File

@@ -0,0 +1,5 @@
<p>Hey {{ name }},</p>
<p>You got an inquiry a</p>
<p>
{{inquiry}}
</p>

1
bizmatch-server/dist/main.d.ts vendored Normal file
View File

@@ -0,0 +1 @@
export {};

View File

@@ -0,0 +1,126 @@
export interface KeyValue {
name: string;
value: string;
}
export interface KeyValueStyle {
name: string;
value: string;
icon: string;
bgColorClass: string;
textColorClass: string;
}
export type SelectOption<T = number> = {
value: T;
label: string;
};
export interface Listing {
id: string;
userId: string;
title: string;
description: Array<string>;
location: string;
favoritesForUser: Array<string>;
hideImage?: boolean;
created: Date;
updated: Date;
}
export interface BusinessListing extends Listing {
listingsCategory: 'business';
summary: Array<string>;
type: string;
price?: number;
realEstateIncluded?: boolean;
salesRevenue?: number;
cashFlow?: number;
netProfit?: number;
inventory?: string;
employees?: number;
established?: number;
reasonForSale?: string;
brokerLicencing?: string;
internals?: string;
}
export interface ProfessionalsBrokersListing extends Listing {
listingsCategory: 'professionals_brokers';
summary: string;
address?: string;
email?: string;
website?: string;
category?: 'Professionals' | 'Broker';
}
export interface InvestmentsListing extends Listing {
listingsCategory: 'investment';
email?: string;
website?: string;
phoneNumber?: string;
}
export type ListingType = BusinessListing | ProfessionalsBrokersListing | InvestmentsListing;
export interface ListingCriteria {
type: string;
location: string;
minPrice: string;
maxPrice: string;
realEstateChecked: boolean;
listingsCategory: 'business' | 'professionals_brokers' | 'investment';
category: 'professional|broker';
}
export interface User {
id: string;
username: string;
firstname: string;
lastname: string;
email: string;
}
export interface Subscription {
id: string;
userId: string;
level: string;
start: Date;
modified: Date;
end: Date;
status: string;
invoices: Array<Invoice>;
}
export interface Invoice {
id: string;
date: Date;
price: number;
}
export interface JwtToken {
exp: number;
iat: number;
auth_time: number;
jti: string;
iss: string;
aud: string;
sub: string;
typ: string;
azp: string;
nonce: string;
session_state: string;
acr: string;
realm_access: Realmaccess;
resource_access: Resourceaccess;
scope: string;
sid: string;
email_verified: boolean;
name: string;
preferred_username: string;
given_name: string;
family_name: string;
email: string;
user_id: string;
}
interface Resourceaccess {
account: Realmaccess;
}
interface Realmaccess {
roles: string[];
}
export interface PageEvent {
first: number;
rows: number;
page: number;
pageCount: number;
}
export {};

View File

@@ -0,0 +1,129 @@
export interface KeyValue {
name: string;
value: string;
}
export interface KeyValueStyle {
name: string;
value: string;
icon:string;
bgColorClass:string;
textColorClass:string;
}
export type SelectOption<T = number> = {
value: T;
label: string;
};
export interface Listing {
id: string;
userId: string;
title: string;
description: Array<string>;
location: string;//enum
favoritesForUser:Array<string>;
hideImage?:boolean;
created:Date;
updated:Date;
}
export interface BusinessListing extends Listing {
listingsCategory: 'business'; //enum
summary: Array<string>;
type: string; //enum
price?: number;
realEstateIncluded?: boolean;
salesRevenue?: number;
cashFlow?: number;
netProfit?: number;
inventory?: string;
employees?: number;
established?: number;
reasonForSale?: string;
brokerLicencing?: string;
internals?: string;
}
export interface ProfessionalsBrokersListing extends Listing {
listingsCategory: 'professionals_brokers'; //enum
summary: string;
address?: string;
email?: string;
website?: string;
category?: 'Professionals' | 'Broker';
}
export interface InvestmentsListing extends Listing {
listingsCategory: 'investment'; //enum
email?: string;
website?: string;
phoneNumber?: string;
}
export type ListingType =
| BusinessListing
| ProfessionalsBrokersListing
| InvestmentsListing;
export interface ListingCriteria {
type:string,
location:string,
minPrice:string,
maxPrice:string,
realEstateChecked:boolean,
listingsCategory:'business'|'professionals_brokers'|'investment',
category:'professional|broker'
}
export interface User {
id: string;
username: string;
firstname: string;
lastname: string;
email: string;
}
export interface Subscription {
id: string;
userId:string
level: string;
start: Date;
modified: Date;
end: Date;
status: string;
invoices: Array<Invoice>;
}
export interface Invoice {
id: string,
date: Date,
price: number
}
export interface JwtToken {
exp: number;
iat: number;
auth_time: number;
jti: string;
iss: string;
aud: string;
sub: string;
typ: string;
azp: string;
nonce: string;
session_state: string;
acr: string;
realm_access: Realmaccess;
resource_access: Resourceaccess;
scope: string;
sid: string;
email_verified: boolean;
name: string;
preferred_username: string;
given_name: string;
family_name: string;
email: string;
user_id: string;
}
interface Resourceaccess {
account: Realmaccess;
}
interface Realmaccess {
roles: string[];
}
export interface PageEvent {
first: number;
rows: number;
page: number;
pageCount: number;
}

View File

@@ -0,0 +1,11 @@
export interface MailInfo {
sender: Sender;
userId: string;
}
export interface Sender {
name: string;
email: string;
phoneNumber: string;
state: string;
comments: string;
}

View File

@@ -0,0 +1,5 @@
import { RedisService } from './redis.service.js';
export declare class RedisController {
private redisService;
constructor(redisService: RedisService);
}

View File

@@ -0,0 +1,2 @@
export declare class RedisModule {
}

View File

@@ -0,0 +1,11 @@
export declare const LISTINGS = "LISTINGS";
export declare const SUBSCRIPTIONS = "SUBSCRIPTIONS";
export declare const USERS = "USERS";
export declare class RedisService {
private redis;
setJson(id: string, value: any): Promise<void>;
delete(id: string): Promise<void>;
getJson(id: string, prefix: string): Promise<any>;
getId(prefix: 'LISTINGS' | 'SUBSCRIPTIONS' | 'USERS'): Promise<string>;
search(prefix: 'LISTINGS' | 'SUBSCRIPTIONS' | 'USERS', clause: string): Promise<any>;
}

View File

@@ -0,0 +1,6 @@
import { SelectOptionsService } from './select-options.service.js';
export declare class SelectOptionsController {
private selectOptionsService;
constructor(selectOptionsService: SelectOptionsService);
getSelectOption(): any;
}

View File

@@ -0,0 +1,10 @@
import { KeyValue, KeyValueStyle } from '../models/main.model.js';
export declare class SelectOptionsService {
constructor();
typesOfBusiness: Array<KeyValueStyle>;
prices: Array<KeyValue>;
listingCategories: Array<KeyValue>;
categories: Array<KeyValueStyle>;
private usStates;
locations: Array<any>;
}

View File

@@ -0,0 +1,6 @@
import { FileService } from '../file/file.service.js';
export declare class SubscriptionsController {
private readonly fileService;
constructor(fileService: FileService);
findAll(): any;
}

File diff suppressed because one or more lines are too long

1
bizmatch-server/dist/utils.d.ts vendored Normal file
View File

@@ -0,0 +1 @@
export declare function convertStringToNullUndefined(value: any): any;