Files
yara724api/src/expert-claim/dto/claim-list-perId-rs.dto.ts

81 lines
2.6 KiB
TypeScript

import { UserObjectionDto } from "src/claim-request-management/dto/user-objection.dto";
import {
ClaimRequestManagementModel,
SubmitReply,
UserComment,
UserResendDocuments,
PriceDrop,
} from "src/claim-request-management/entites/schema/claim-request-management.schema";
export class ClaimPerIdRs {
requestDetail: any;
bankDamageUserInformation: {};
accidentLocation: {};
blameFile: any;
aiImages: any;
carPartDamage: any;
imageRequired: any;
carGreenCard: any;
nationalCodeOfInsurer: string;
otherParts: any;
sheba: any;
expertSubmitReply: any;
damageExpertResend: any;
damageExpertReply: SubmitReply;
damageExpertReplyFinal: SubmitReply;
lockFile: boolean;
videoCaptureId: any;
signDetails: UserComment;
lockTime: string | number | Date;
unlockTime: number | Date;
userResendDocuments: UserResendDocuments;
objection: UserObjectionDto;
dropPrice: PriceDrop;
type: string;
requiredDocuments: any;
constructor(request: ClaimRequestManagementModel) {
request.imageRequired.aroundTheCar = request.imageRequired.aroundTheCar.map(
(v) => {
//@ts-ignore
delete v.aiReport;
return v;
},
);
request.imageRequired.aroundTheCar =
request.imageRequired.selectPartOfCar.map((v) => {
//@ts-ignore
delete v.aiReport;
return v;
});
this.requestDetail = {
createdDate: request.createdAt.toLocaleDateString("fa-IR"),
createdTime: request.createdAt.toLocaleTimeString("fa-IR"),
status: request.claimStatus,
};
delete request.blameFile.actorsChecker;
this.bankDamageUserInformation = {
fullName: request.fullName,
numberOfSheba: request.sheba,
};
this.blameFile = request.blameFile;
this.videoCaptureId = request?.videoCaptureId;
this.damageExpertResend = request.damageExpertResend;
this.damageExpertReply = request.damageExpertReply;
this.damageExpertReplyFinal = request.damageExpertReplyFinal;
this.lockFile = request.lockFile;
this.lockTime = request.lockTime;
this.unlockTime = request.unlockTime;
this.userResendDocuments = request.userResendDocuments;
this.objection = request.objection as UserObjectionDto;
this.carPartDamage = request.carPartDamage;
this.imageRequired = request.imageRequired;
this.carGreenCard = request.carGreenCard;
this.nationalCodeOfInsurer = request.nationalCodeOfInsurer;
this.otherParts = request.otherParts;
this.sheba = request.sheba;
this.dropPrice = request.priceDrop;
this.type = request.blameFile?.type || "THIRD_PARTY"; // Include type field from blameFile
this.requiredDocuments = request.requiredDocuments;
}
}