forked from Yara724/api
update the fanavaran for both tejarat no and parsian clients , dont forget about the env files
This commit is contained in:
@@ -1,14 +1,18 @@
|
||||
import { Controller, Get, Param, Query } from "@nestjs/common";
|
||||
import { Controller, Get, Param, ParseIntPipe, Query, UseGuards } from "@nestjs/common";
|
||||
import {
|
||||
ApiBearerAuth,
|
||||
ApiOkResponse,
|
||||
ApiOperation,
|
||||
ApiParam,
|
||||
ApiQuery,
|
||||
ApiTags,
|
||||
} from "@nestjs/swagger";
|
||||
import { AuthGuard } from "src/common/auth/guards";
|
||||
import { LookupsService } from "./lookups.service";
|
||||
|
||||
@ApiTags("lookups")
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(AuthGuard)
|
||||
@Controller("lookups")
|
||||
export class LookupsController {
|
||||
constructor(private readonly lookupsService: LookupsService) {}
|
||||
@@ -210,6 +214,30 @@ export class LookupsController {
|
||||
return await this.lookupsService.getPersonRole();
|
||||
}
|
||||
|
||||
@Get("file-types")
|
||||
@ApiOperation({
|
||||
summary: "Fanavaran file types lookup",
|
||||
description:
|
||||
"Returns file type codes from common/base-info/file-types. Use FileTypeId in attachment uploads.",
|
||||
})
|
||||
@ApiOkResponse({
|
||||
description: "Returns Fanavaran file types lookup data",
|
||||
schema: {
|
||||
type: "array",
|
||||
items: {
|
||||
type: "object",
|
||||
properties: {
|
||||
Caption: { type: "string" },
|
||||
Id: { type: "number" },
|
||||
IsActive: { type: "number" },
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
async getFileTypes() {
|
||||
return await this.lookupsService.getFileTypes();
|
||||
}
|
||||
|
||||
@Get("inquiry-by-vin")
|
||||
@ApiOperation({
|
||||
summary: "Fanavaran vehicle inquiry by VIN",
|
||||
@@ -371,4 +399,75 @@ export class LookupsController {
|
||||
async getAccidentFields() {
|
||||
return await this.lookupsService.getAccidentFields();
|
||||
}
|
||||
|
||||
@Get("my-policies")
|
||||
@ApiOperation({
|
||||
summary: "My policies inquiry",
|
||||
description:
|
||||
"Returns the list of policies for the given national code via common/Policies/inquiry-my-policies.",
|
||||
})
|
||||
@ApiQuery({
|
||||
name: "nationalCode",
|
||||
description: "National code of the insured person",
|
||||
example: "0012345678",
|
||||
})
|
||||
@ApiQuery({
|
||||
name: "insuranceLineId",
|
||||
description: "Insurance line ID (default: 5 for car)",
|
||||
required: false,
|
||||
example: 5,
|
||||
})
|
||||
@ApiOkResponse({
|
||||
description: "Returns list of policies",
|
||||
schema: { type: "array", items: { type: "object" } },
|
||||
})
|
||||
async myPolicies(
|
||||
@Query("nationalCode") nationalCode: string,
|
||||
@Query("insuranceLineId") insuranceLineId?: number,
|
||||
) {
|
||||
return await this.lookupsService.myPolicies(
|
||||
nationalCode,
|
||||
insuranceLineId ?? 5,
|
||||
);
|
||||
}
|
||||
|
||||
@Get("third-party-policy/:policyId")
|
||||
@ApiOperation({
|
||||
summary: "Third-party car policy inquiry by policy ID",
|
||||
description:
|
||||
"Returns third-party car insurance policy details for the given policy ID via car/third-party-car-policies/{policyId}.",
|
||||
})
|
||||
@ApiParam({
|
||||
name: "policyId",
|
||||
description: "Fanavaran policy ID",
|
||||
example: 12345,
|
||||
})
|
||||
@ApiOkResponse({
|
||||
description: "Returns third-party policy details",
|
||||
schema: { type: "object" },
|
||||
})
|
||||
async thirdPartyPolicyById(
|
||||
@Param("policyId", ParseIntPipe) policyId: number,
|
||||
) {
|
||||
return await this.lookupsService.thirdPartyPolicyById(policyId);
|
||||
}
|
||||
|
||||
@Get("body-policy/:policyId")
|
||||
@ApiOperation({
|
||||
summary: "Vehicle hull (body) policy inquiry by policy ID",
|
||||
description:
|
||||
"Returns vehicle hull (body) insurance policy details for the given policy ID via car/vehicle-hull-policies/{policyId}.",
|
||||
})
|
||||
@ApiParam({
|
||||
name: "policyId",
|
||||
description: "Fanavaran policy ID",
|
||||
example: 12345,
|
||||
})
|
||||
@ApiOkResponse({
|
||||
description: "Returns body policy details",
|
||||
schema: { type: "object" },
|
||||
})
|
||||
async bodyPolicyById(@Param("policyId", ParseIntPipe) policyId: number) {
|
||||
return await this.lookupsService.bodyPolicyById(policyId);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user