增加typeorm

This commit is contained in:
yangjie 2023-08-08 10:08:09 +08:00
parent 50943f3fd7
commit 06be64d5b4
4 changed files with 58 additions and 3 deletions

View File

@ -1,9 +1,30 @@
import { HccId, IClient, Users, WarningInfo } from './client.types';
import db from '../utils/mysql';
import { Injectable } from '@nestjs/common/decorators';
import { BusinessException } from '../common/exceptions/business.exception';
import {BusinessException} from "../common/exceptions/business.exception";
// import { InjectRepository } from "@nestjs/typeorm";
// import {Repository} from "typeorm";
import {ClientInfo} from "../entities/client-info.entity"
@Injectable()
class ClientMapper {
async getClientInfoV2(clientId: string, clientSecret: string) {
// return await db(
// 'select * from szja_client_info where client_id = ? and client_secret = ?',
// [clientId, clientSecret],
// );
let sql= await ClientInfo.createQueryBuilder("client")
.leftJoinAndSelect("ClientToken","token","client.clientId= token.clientId")
.where("client.type = :type", { type: "3" }).getSql()
let data1= await ClientInfo.createQueryBuilder("client")
.leftJoinAndSelect("ClientToken","token","client.clientId= token.clientId")
.where("client.type = :type", { type: "3" }).getMany()
let data = await ClientInfo.find({select:["clientId","clientSecret","encodingKey"],where:{clientId:clientId,clientSecret:clientSecret}});
return data;
}
async getClientInfo(clientId: string, clientSecret: string) {
return await db(
'select * from szja_client_info where client_id = ? and client_secret = ?',

View File

@ -3,9 +3,10 @@ import { ClientService } from './client.service';
import { ClientController } from './client.controller';
import { TypeOrmModule } from "@nestjs/typeorm";
import { ClientInfo } from "../entities/client-info.entity";
import { ClientToken } from "../entities/client-token.entity";
@Module({
imports: [TypeOrmModule.forFeature([ClientInfo])],
imports: [TypeOrmModule.forFeature([ClientInfo, ClientToken])],
controllers: [ClientController],
providers: [ClientService],
})

View File

@ -15,18 +15,24 @@ import { get } from 'src/utils/axios';
import { basicToBase64, getConfig } from 'src/utils';
import { BusinessException } from 'src/common/exceptions/business.exception';
import hccMapper from 'src/hcc/hcc.mapper';
import { InjectRepository } from "@nestjs/typeorm";
import {Repository} from "typeorm";
import {ClientInfo} from "../entities/client-info.entity";
// eslint-disable-next-line @typescript-eslint/no-var-requires
const moment = require('moment');
moment.locale('zh_CN');
@Injectable()
export class ClientService {
/**
* test
* @param req
* @param res
*/
async test() {
return Base.success('success');
// let data = await this.clientInfoRepository.findBy({clientId:"1"})
// let data2 = await this.clientInfoRepository.findOne(clientid,clientScert)
return Base.success(await clientMapper.getClientInfoV2("1","8b6a8d04f42644cdbb0619904d13917c"));
}
/**

View File

@ -0,0 +1,27 @@
import {Entity, PrimaryColumn, Column, BaseEntity} from "typeorm";
/**
* ap
*/
@Entity('szja_client_token')
export class ClientToken extends BaseEntity {
//第三方Id
@PrimaryColumn({type: 'varchar', name: 'client_id'})
clientId: string;
//访问令牌
@Column({type: "varchar", name: 'token'})
token: string;
//过期时间
@Column({type: "datetime", name: 'expires_time'})
expiresTime: Date;
//绑定时间
@Column({type: "datetime", name: 'apply_time'})
applyTime: Date;
//删除时间
@Column({type: "datetime", name: 'delete_time'})
deleteTime: Date;
}