Commit 9f29edbd by Ooh-Ao

model

parent 6a6af773
......@@ -118,8 +118,8 @@ export class UserSettingComponent {
ngOnInit(): void {
this.userService.getLists().subscribe(result => {
this.itemsList = result.filter(e => e.role != 99)
this.userService.getListsProfile().subscribe(result => {
this.itemsList = result
this.updatePagedItems()
})
}
......
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
import { JobModel } from "./job.model";
export interface JobRegisterBookMarkModel {
allowExam: number
applicationDate: string
applyStatus: number
applyStatusCompany: number
applyStatusProfile: number
candidatesStatus: number
processStatus: number
companyView: number
companyViewDate: string
expiringOn: string
jobPost: JobModel
jobTitle: string
}
export class JobRegisterBookMarkModel extends BaseModel implements JobRegisterBookMarkModel {
allowExam: number
applicationDate: string
applyStatus: number
applyStatusCompany: number
applyStatusProfile: number
candidatesStatus: number
processStatus: number
companyView: number
companyViewDate: string
expiringOn: string
jobPost: JobModel
jobTitle: string
constructor(data?: Partial<JobRegisterBookMarkModel>, translateService?: TranslateService) {
super(data, translateService)
this.allowExam = checkData(data?.allowExam)
this.applicationDate = checkData(data?.applicationDate)
this.candidatesStatus = checkData(data?.candidatesStatus)
this.applyStatus = checkData(data?.applyStatus)
this.applyStatusCompany = checkData(data?.applyStatusCompany)
this.applyStatusProfile = checkData(data?.applyStatusProfile)
this.processStatus = checkData(data?.processStatus)
this.companyView = checkData(data?.companyView)
this.companyViewDate = checkData(data?.companyViewDate)
this.expiringOn = checkData(data?.expiringOn)
this.jobPost = data?.jobPost ? new JobModel(data.jobPost, translateService) : new JobModel()
this.jobTitle = checkData(data?.jobTitle)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface RegionModel {
regionId: string
thName: string
engName: string
}
export class RegionModel extends BaseModel implements RegionModel {
regionId: string
thName: string
engName: string
constructor(data?: Partial<RegionModel>, translateService?: TranslateService) {
super(data, translateService)
this.regionId = checkData(data?.regionId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
\ No newline at end of file
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface AnswerModel {
answerId: string
correct: number
engName: string
thName: string
}
export class AnswerModel extends BaseModel implements AnswerModel {
answerId: string
correct: number
engName: string
thName: string
constructor(data?: Partial<AnswerModel>, translateService?: TranslateService) {
super(data, translateService)
this.answerId = checkData(data?.answerId)
this.correct = data?.correct ? data.correct : 0 ;
this.engName = checkData(data?.engName)
this.thName = checkData(data?.thName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface AnswerMatchModel {
answerId: string
engAnswerName: string
engName: string
thAnswerName: string
thName: string
}
export class AnswerMatchModel extends BaseModel implements AnswerMatchModel {
answerId: string
engAnswerName: string
engName: string
thAnswerName: string
thName: string
constructor(data?: Partial<AnswerMatchModel>, translateService?: TranslateService) {
super(data, translateService)
this.answerId = checkData(data?.answerId)
this.thAnswerName = checkData(data?.thAnswerName)
this.engAnswerName = checkData(data?.engAnswerName)
this.engName = checkData(data?.engName)
this.thName = checkData(data?.thName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
getAnwserName() {
return baseGetName(this.thAnswerName, this.engAnswerName, this.translateService.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData, } from "./base.model";
export interface AnswerSequenceModel {
answerId: string
engName: string
sequence: number
thName: string
}
export class AnswerSequenceModel extends BaseModel implements AnswerSequenceModel {
answerId: string
engName: string
sequence: number
thName: string
constructor(data?: Partial<AnswerSequenceModel>, translateService?: TranslateService) {
super(data, translateService)
this.answerId = checkData(data?.answerId)
this.sequence = checkData(data?.sequence)
this.engName = checkData(data?.engName)
this.thName = checkData(data?.thName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core"
import { BaseModel } from "./base.model"
import { RoleModel } from "./role.model"
export interface AuthModel {
username: string
password: string
role: RoleModel
}
export class AuthModel extends BaseModel implements AuthModel {
username: string
password: string
role: RoleModel
constructor(data?: Partial<AuthModel>, translateService?: TranslateService) {
super(data, translateService)
this.username = data?.username!
this.password = data?.password!
this.role = data?.role ? new RoleModel(data.role, translateService) : data?.role!
}
}
export class LoginResponseModel {
public username: string = "";
public accessToken: string = "";
public refreshToken: string = "";
}
// export interface resetPasswordModel {
// email: string
// }
// export class resetPasswordModel extends BaseModel implements resetPasswordModel {
// email: string
// constructor(data?: Partial<resetPasswordModel>, translateService?: TranslateService) {
// super(data, translateService)
// this.email = data?.email!
// }
// }
import { BaseModel, dataToArray, checkData, baseGetName } from "./base.model";
import { CategoryModel } from "./category.model";
import { CountryModel } from "./country.model";
import { SubDistrictModel } from "./subdistrict.model";
import { ProvinceModel } from "./province.model";
import { TranslateService } from "@ngx-translate/core";
export interface CandidateModel {
profileId: string
thFirstname: string
thLastname: string
engFirstname: string
engLastname: string
sex: string
birthday: string
status: number
thFullName: string
engFullName: string
latitude: string
longitude: string
video: string
getFullname?(): string
}
export class CandidateModel extends BaseModel implements CandidateModel {
status: number
constructor(data?: Partial<CandidateModel>, translateService?: TranslateService) {
super(data, translateService)
this.profileId = checkData(data?.profileId)
this.thFirstname = checkData(data?.thFirstname)
this.thLastname = checkData(data?.thLastname)
this.engFirstname = checkData(data?.engFirstname)
this.engLastname = checkData(data?.engLastname)
this.sex = checkData(data?.sex)
this.birthday = checkData(data?.birthday)
this.latitude = checkData(data?.latitude)
this.longitude = checkData(data?.longitude)
this.thFullName = checkData(data?.thFullName)
this.engFullName = checkData(data?.engFullName)
this.video = checkData(data?.video)
this.status = checkData(data?.status)
}
getFullname?(): string {
return this.translateService.currentLang == 'th' ? this.thFullName : this.engFullName
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface CareerClusterModel {
careerClusterId: string
thName: string
engName: string
}
export class CareerClusterModel extends BaseModel implements CareerClusterModel {
careerClusterId: string
thName: string
engName: string
constructor(data?: Partial<CareerClusterModel>, translateService?: TranslateService) {
super(data, translateService)
this.careerClusterId = checkData(data?.careerClusterId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface CategoryModel {
categoryId: string
thName: string
engName: string
}
export class CategoryModel extends BaseModel implements CategoryModel {
categoryId: string
thName: string
engName: string
constructor(data?: Partial<CategoryModel>, translateService?: TranslateService) {
super(data, translateService)
this.categoryId = checkData(data?.categoryId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
\ No newline at end of file
import { TranslateService } from "@ngx-translate/core";
import { BaseModel } from "./base.model";
export interface CompanyExamModel {
examId: string
examThName: string
examEngName: string
jobPostId: string
profileId: string
round: number
complete: number
duration: number
startDate: string
endDate: string
score: number
scorePercent: number
pass: number
}
export class CompanyExamModel extends BaseModel implements CompanyExamModel {
examId: string
examThName: string
examEngName: string
jobPostId: string
profileId: string
round: number
complete: number
duration: number
startDate: string
endDate: string
score: number
scorePercent: number
pass: number
constructor(data: Partial<CompanyExamModel>, translateService?: TranslateService) {
super(data, translateService)
this.examId = data.examId ? data.examId : ""
this.examThName = data.examThName ? data.examThName : ""
this.examEngName = data.examEngName ? data.examEngName : ""
this.jobPostId = data.jobPostId ? data.jobPostId : ""
this.profileId = data.profileId ? data.profileId : ""
this.round = data.round ? data.round : 0
this.complete = data.complete ? data.complete : 0
this.duration = data.duration ? data.duration : 0
this.startDate = data.startDate ? data.startDate : ""
this.endDate = data.endDate ? data.endDate : ""
this.score = data.score ? data.score : 0
this.scorePercent = data.scorePercent ? data.scorePercent : 0
this.pass = data.pass ? data.pass : 0
}
getName() {
return this.translateService?.currentLang == 'th' ? (this.examThName ? this.examThName : (this.examEngName ? this.examEngName : '')) : (this.examEngName ? this.examEngName : (this.examThName ? this.examThName : ''))
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface CountryModel {
countryId: string
thName: string
engName: string
}
export class CountryModel extends BaseModel implements CountryModel {
countryId: string
thName: string
engName: string
constructor(data?: Partial<CountryModel>, translateService?: TranslateService) {
super(data, translateService)
this.countryId = checkData(data?.countryId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
\ No newline at end of file
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface DegreeModel {
degreeId: string
engName: string
higher: string
thName: string
}
export class DegreeModel extends BaseModel implements DegreeModel {
degreeId: string
engName: string
higher: string
thName: string
constructor(data?: Partial<DegreeModel>, translateService?: TranslateService) {
super(data, translateService)
this.degreeId = checkData(data?.degreeId)
this.engName = checkData(data?.engName)
this.higher = checkData(data?.higher)
this.thName = checkData(data?.thName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { ProvinceModel } from './province.model';
import { SubDistrictModel } from './subdistrict.model';
export interface DistrictIssuedModel {
districtId: string
thName: string
engName: string
province: ProvinceModel
subDistrict: SubDistrictModel[]
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName, dataToArray } from "./base.model";
import { ProvinceModel } from "./province.model";
import { SubDistrictModel } from "./subdistrict.model";
export interface DistrictModel {
districtId: string
engName: string
province: ProvinceModel | null
subDistrictList: SubDistrictModel[]
thName: string
}
export class DistrictModel extends BaseModel implements DistrictModel {
districtId: string
engName: string
province: ProvinceModel | null
subDistrictList: SubDistrictModel[]
thName: string
constructor(data?: Partial<DistrictModel>, translateService?: TranslateService) {
super(data, translateService)
this.districtId = checkData(data?.districtId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
this.province = data?.province ? new ProvinceModel(data.province, translateService) : null
this.subDistrictList = dataToArray(data?.subDistrictList).map((x: SubDistrictModel) => new SubDistrictModel(x, translateService))
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface DisabilityCategoryModel {
code: string
edesc: string
tdesc: string
}
export class DisabilityCategoryModel extends BaseModel implements DisabilityCategoryModel {
code: string
edesc: string
tdesc: string
constructor(data?: Partial<DisabilityCategoryModel>, translateService?: TranslateService) {
super(data, translateService)
this.code = checkData(data?.code)
this.tdesc = checkData(data?.tdesc)
this.edesc = checkData(data?.edesc)
}
getName() {
return this.translateService.currentLang == 'th' ? this.tdesc : this.edesc
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface EducationLevelModel {
educationLevelId: string
thName: string
engName: string
}
export class EducationLevelModel extends BaseModel implements EducationLevelModel {
educationLevelId: string
thName: string
engName: string
constructor(data?: Partial<EducationLevelModel>, translateService?: TranslateService) {
super(data, translateService)
this.educationLevelId = checkData(data?.educationLevelId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData, dataToArray } from "./base.model";
import { JobModel } from "./job.model";
import { QuestionModel } from "./question.model";
import { CompanyModel } from "./company.model";
export interface ExamModel {
answerShuffle: number
engName: string
engObjective: string
examAnswerType: number
examDuration: number
examId: string
examPass: number
examPercent: number
examTimes: number
examType: number
image: string
jobPost: JobModel | null
question: QuestionModel[]
questionShuffle: number
sampleVideo: string
thName: string
thObjective: string
video: string
company: CompanyModel | null
}
export class ExamModel extends BaseModel implements ExamModel {
answerShuffle: number
engName: string
engObjective: string
examAnswerType: number
examDuration: number
examId: string
examPass: number
examPercent: number
examTimes: number
examType: number
image: string
jobPost: JobModel | null
question: QuestionModel[]
questionShuffle: number
sampleVideo: string
thName: string
thObjective: string
video: string
company: CompanyModel | null
constructor(data?: Partial<ExamModel>, translateService?: TranslateService) {
super(data, translateService)
this.answerShuffle = checkData(data?.answerShuffle)
this.engName = checkData(data?.engName)
this.engObjective = checkData(data?.engObjective)
this.examAnswerType = checkData(data?.examAnswerType)
this.examDuration = checkData(data?.examDuration)
this.examId = checkData(data?.examId)
this.examPass = checkData(data?.examPass)
this.examPercent = checkData(data?.examPercent)
this.examTimes = checkData(data?.examTimes)
this.examType = checkData(data?.examType)
this.image = checkData(data?.image)
this.jobPost = data?.jobPost ? new JobModel(data.jobPost, translateService) : null
this.question = dataToArray(data?.question).map((x: QuestionModel) => new QuestionModel(x, translateService))
this.questionShuffle = checkData(data?.questionShuffle)
this.sampleVideo = checkData(data?.sampleVideo)
this.thName = checkData(data?.thName)
this.thObjective = checkData(data?.thObjective)
this.video = checkData(data?.video)
this.company = data?.company ? new CompanyModel(data.company, translateService) : null
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
import { JobModel } from "./job.model";
import { CompanyModel } from "./company.model";
export interface ExamsModel {
examId: string
company: CompanyModel| null
thName: string
engName: string
thObjective: string
engObjective: string
image: string
video: string
sampleVideo: string
examType: number
examPass: number
examPercent: number
examTimes: number
examDuration: number
examAnswerType: number
questionShuffle: number
answerShuffle: number
}
export class ExamsModel extends BaseModel implements ExamsModel {
answerShuffle: number
engName: string
engObjective: string
examAnswerType: number
examDuration: number
examId: string
examPass: number
examPercent: number
examTimes: number
examType: number
image: string
company: CompanyModel | null
questionShuffle: number
sampleVideo: string
thName: string
thObjective: string
video: string
constructor(data?: Partial<ExamsModel>, translateService?: TranslateService) {
super(data, translateService)
this.answerShuffle = checkData(data?.answerShuffle)
this.engName = checkData(data?.engName)
this.engObjective = checkData(data?.engObjective)
this.examAnswerType = checkData(data?.examAnswerType)
this.examDuration = checkData(data?.examDuration)
this.examId = checkData(data?.examId)
this.examPass = checkData(data?.examPass)
this.examPercent = checkData(data?.examPercent)
this.examTimes = checkData(data?.examTimes)
this.examType = checkData(data?.examType)
this.image = checkData(data?.image)
this.company = data?.company ? new CompanyModel(data.company, translateService) : null
this.questionShuffle = checkData(data?.questionShuffle)
this.sampleVideo = checkData(data?.sampleVideo)
this.thName = checkData(data?.thName)
this.thObjective = checkData(data?.thObjective)
this.video = checkData(data?.video)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService.currentLang)
}
getObjectiveName() {
return baseGetName(this.thObjective, this.engObjective, this.translateService.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface JobAbilitiesModel {
abilitiesId: string
abilitiesName: string
}
export class JobAbilitiesModel extends BaseModel implements JobAbilitiesModel {
abilitiesId: string
abilitiesName: string
constructor(data?: Partial<JobAbilitiesModel>, translateService?: TranslateService) {
super(data, translateService)
this.abilitiesId = checkData(data?.abilitiesId)
this.abilitiesName = checkData(data?.abilitiesName)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface JobDocumentModel {
documentId: string
documentName: string
}
export class JobDocumentModel extends BaseModel implements JobDocumentModel {
documentId: string
documentName: string
constructor(data?: Partial<JobDocumentModel>, translateService?: TranslateService) {
super(data, translateService)
this.documentId = checkData(data?.documentId)
this.documentName = checkData(data?.documentName)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface JobExamModel {
examChoice: string
examId: string
}
export class JobExamModel extends BaseModel implements JobExamModel {
examChoice: string
examId: string
constructor(data?: Partial<JobExamModel>, translateService?: TranslateService) {
super(data, translateService)
this.examChoice = checkData(data?.examChoice)
this.examId = checkData(data?.examId)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface JobQualificationModel {
qualificationId: string
qualificationName: string
}
export class JobQualificationModel extends BaseModel implements JobQualificationModel {
qualificationId: string
qualificationName: string
constructor(data?: Partial<JobQualificationModel>, translateService?: TranslateService) {
super(data, translateService)
this.qualificationId = checkData(data?.qualificationId)
this.qualificationName = checkData(data?.qualificationName)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, dataToArray, checkData, } from "./base.model";
export interface JobSearchModel {
provinceId: string[]
districtId: string[]
careerClusterId: string[]
positionId: string[]
skillName: string[]
categoryId: string[]
companyName: string
jobTypeId: string[]
minSalary: string
maxSalary: string
}
export class JobSearchModel extends BaseModel implements JobSearchModel {
provinceId: string[]
districtId: string[]
careerClusterId: string[]
positionId: string[]
skillName: string[]
categoryId: string[]
companyName: string
jobTypeId: string[]
minSalary: string
maxSalary: string
constructor(data?: Partial<JobSearchModel>, translateService?: TranslateService) {
super(data, translateService)
this.provinceId = dataToArray(data?.provinceId)
this.districtId = dataToArray(data?.districtId)
this.careerClusterId = dataToArray(data?.careerClusterId)
this.positionId = dataToArray(data?.positionId)
this.skillName = dataToArray(data?.skillName)
this.jobTypeId = dataToArray(data?.jobTypeId)
this.categoryId = dataToArray(data?.categoryId)
this.companyName = checkData(data?.companyName)
this.maxSalary = checkData(data?.maxSalary)
this.minSalary = checkData(data?.minSalary)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, } from "./base.model";
export interface JobSpecialModel {
range: number
skillName: string
specialId: string
}
export class JobSpecialModel extends BaseModel implements JobSpecialModel {
range: number
skillName: string
specialId: string
constructor(data?: Partial<JobSpecialModel>, translateService?: TranslateService) {
super(data, translateService)
this.range = checkData(data?.range)
this.skillName = checkData(data?.skillName)
this.specialId = checkData(data?.specialId)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface JobTypeModel {
jobTypeId: string
thName: string
engName: string
}
export class JobTypeModel extends BaseModel implements JobTypeModel {
jobTypeId: string
thName: string
engName: string
constructor(data?: Partial<JobTypeModel>, translateService?: TranslateService) {
super(data, translateService)
this.jobTypeId = checkData(data?.jobTypeId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, dataToArray, checkData, baseGetName, } from "./base.model";
import { CareerClusterModel } from "./career-cluster.model";
import { JobAbilitiesModel } from "./job-abilities.model";
import { JobDocumentModel } from "./job-document.model";
import { JobExamModel } from "./job-exam.model";
import { JobQualificationModel } from "./job-qualification.model";
import { JobSpecialModel } from "./job-special.model";
import { JobTypeModel } from "./job-type.model";
import { SubDistrictModel } from "./subdistrict.model";
import { PositionModel } from "./position.model";
import { environment } from "src/environments/environment";
export interface ExamsList {
examId: string
}
export interface JobModel {
announcementId: string
careerCluster: CareerClusterModel | null
challengesBenefits: string
companyEngName: string
companyId: string
companyImage: string
companyThName: string
description: string
detail: string
endDate: string
jobExternal: string
jobPostAbilitiesList: JobAbilitiesModel[]
jobPostDocumentList: JobDocumentModel[]
jobPostExamList: JobExamModel[]
jobPostId: string
jobPostQualificationList: JobQualificationModel[]
jobPostSpecialList: JobSpecialModel[]
jobSimilar: string
jobTitle: string
jobType: JobTypeModel | null
latitude: string
locationDefault: number
longitude: string
map: string
maxSalary: number
minSalary: number
numCandidates: string
positions: PositionModel | null
startDate: string
status: number
subDistrict: SubDistrictModel | null
video: string
viewCount: number,
examsList: ExamsList[]
companyAffiliated?: {
"companyId": string;
"companyThName": string;
"companyEngName": string;
}
}
export class JobModel extends BaseModel implements JobModel {
announcementId: string
careerCluster: CareerClusterModel | null
challengesBenefits: string
companyEngName: string
companyId: string
companyImage: string
companyThName: string
description: string
detail: string
endDate: string
jobExternal: string
jobPostAbilitiesList: JobAbilitiesModel[]
jobPostDocumentList: JobDocumentModel[]
jobPostExamList: JobExamModel[]
jobPostId: string
jobPostQualificationList: JobQualificationModel[]
jobPostSpecialList: JobSpecialModel[]
jobSimilar: string
jobTitle: string
jobType: JobTypeModel | null
latitude: string
locationDefault: number
longitude: string
map: string
maxSalary: number
minSalary: number
numCandidates: string
positions: PositionModel | null
startDate: string
status: number
subDistrict: SubDistrictModel | null
video: string
viewCount: number
examsList: ExamsList[]
phone: string
constructor(data?: Partial<JobModel>, translateService?: TranslateService) {
super(data, translateService)
this.announcementId = checkData(data?.announcementId)
this.careerCluster = data?.careerCluster ? new CareerClusterModel(data.careerCluster, translateService) : null
this.challengesBenefits = checkData(data?.challengesBenefits)
this.companyEngName = checkData(data?.companyEngName)
this.companyId = checkData(data?.companyId)
this.companyImage = data?.companyImage!
this.companyThName = checkData(data?.companyThName)
this.description = checkData(data?.description)
this.detail = checkData(data?.detail)
this.endDate = checkData(data?.endDate)
this.jobExternal = checkData(data?.jobExternal)
this.numCandidates = checkData(data?.numCandidates)
this.endDate = checkData(data?.endDate)
this.jobPostAbilitiesList = dataToArray(data?.jobPostAbilitiesList).map((x: JobAbilitiesModel) => new JobAbilitiesModel(x, translateService))
this.jobPostDocumentList = dataToArray(data?.jobPostDocumentList).map((x: JobDocumentModel) => new JobDocumentModel(x, translateService))
this.jobPostExamList = dataToArray(data?.jobPostExamList).map((x: JobExamModel) => new JobExamModel(x, translateService))
this.jobPostId = checkData(data?.jobPostId)
this.jobPostQualificationList = dataToArray(data?.jobPostQualificationList).map((x: JobQualificationModel) => new JobQualificationModel(x, translateService))
this.jobPostSpecialList = dataToArray(data?.jobPostSpecialList).map((x: JobSpecialModel) => new JobSpecialModel(x, translateService))
this.jobSimilar = checkData(data?.jobSimilar)
this.jobTitle = checkData(data?.jobTitle)
this.jobType = data?.jobType ? new JobTypeModel(data?.jobType, translateService) : null
this.latitude = checkData(data?.latitude)
this.locationDefault = checkData(data?.locationDefault)
this.longitude = checkData(data?.longitude)
this.map = checkData(data?.map)
this.maxSalary = checkData(data?.maxSalary)
this.minSalary = checkData(data?.minSalary)
this.positions = data?.positions ? new PositionModel(data?.positions, translateService) : null
this.startDate = checkData(data?.startDate)
this.status = checkData(data?.status)
this.subDistrict = data?.subDistrict ? new SubDistrictModel(data?.subDistrict, translateService) : null
this.video = checkData(data?.video)
this.viewCount = checkData(data?.viewCount)
this.examsList = dataToArray(data?.examsList)
this.phone = data?.phone!
this.companyAffiliated = data?.companyAffiliated
? {
companyId: checkData(data?.companyAffiliated.companyId),
companyThName: checkData(data?.companyAffiliated.companyThName),
companyEngName: checkData(data?.companyAffiliated.companyEngName)
}
: undefined
}
getCompanyName() {
return baseGetName(this.companyThName, this.companyEngName, this.translateService.currentLang)
}
getPicture() {
return environment.url + "/files/image/" + this.companyImage
}
getNumStartdate() {
let beforeDate = "-"
if (this.startDate) {
beforeDate = Math.round
((new Date().getTime() - new Date(this.startDate).getTime()) / (1000 * 3600 * 24)).toString();
}
return beforeDate
}
}
export interface LanguageSkillsModel {
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface LanguagesModel {
engName: string
languagesId: string
thName: string
}
export class LanguagesModel extends BaseModel implements LanguagesModel {
engName: string
languagesId: string
thName: string
constructor(data?: Partial<LanguagesModel>, translateService?: TranslateService) {
super(data, translateService)
this.languagesId = checkData(data?.languagesId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface LanguagesModel {
languagesId: string
thName: string
engName: string
}
export class LanguagesModel extends BaseModel implements LanguagesModel {
languagesId: string
thName: string
engName: string
constructor(data?: Partial<LanguagesModel>, translateService?: TranslateService) {
super(data, translateService)
this.languagesId = checkData(data?.languagesId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel } from "./base.model";
export interface AnswerChoiceModel {
answerId: string;
thName: string;
engName: string;
choose: number;
correct: number;
getName(): string;
}
export class MyAnswerChoiceModel extends BaseModel implements AnswerChoiceModel {
answerId: string;
thName: string;
engName: string;
choose: number;
correct: number;
constructor(data?: Partial<AnswerChoiceModel>, translateService?: TranslateService) {
super(data, translateService);
this.answerId = data?.answerId!
this.thName = data?.thName!
this.engName = data?.engName!
this.choose = data?.choose!
this.correct = data?.correct!
}
getName(): string {
return this.translateService.currentLang == "th"
? this.thName
: this.engName;
}
}
export interface AnswerSequenceModel {
answerId: string;
thName: string;
engName: string;
chooseSequence: number;
sequence: number;
getName(): string;
}
export class MyAnswerSequenceModel extends BaseModel implements AnswerSequenceModel {
answerId: string;
thName: string;
engName: string;
chooseSequence: number;
sequence: number;
constructor(data?: Partial<AnswerSequenceModel>, translateService?: TranslateService) {
super(data, translateService);
this.answerId = data?.answerId!
this.thName = data?.thName!
this.engName = data?.engName!
this.chooseSequence = data?.chooseSequence!
this.sequence = data?.sequence!
}
getName(): string {
return this.translateService.currentLang == "th"
? this.thName
: this.engName;
}
}
export interface AnswerMatchModel {
answerId: string;
thName: string;
engName: string;
chooseSequence: number;
getName(): string;
}
export class MyAnswerMatchModel extends BaseModel implements AnswerMatchModel {
answerId: string;
thName: string;
engName: string;
chooseSequence: number;
constructor(data?: Partial<AnswerMatchModel>, translateService?: TranslateService) {
super(data, translateService);
this.answerId = data?.answerId!
this.thName = data?.thName!
this.engName = data?.engName!
this.chooseSequence = data?.chooseSequence!
}
getName(): string {
return this.translateService.currentLang == "th"
? this.thName
: this.engName;
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel } from "./base.model";
import { environment } from "src/environments/environment";
import { AnswerChoiceModel, AnswerMatchModel, AnswerSequenceModel, MyAnswerChoiceModel, MyAnswerMatchModel, MyAnswerSequenceModel } from "./learning-exam-answer.model";
export interface QuestionModel {
questionId: string;
thName: string;
engName: string;
image: string;
questionType: number;
chooseTrueFalse: number;
answerTrueFalse: number;
answerChoice: AnswerChoiceModel[];
answerMultiChoice: AnswerChoiceModel[];
answerSequence: AnswerSequenceModel[];
questionMatch: AnswerMatchModel[];
answerMatch: AnswerMatchModel[];
getName(): string;
getPictureUrl(): string;
}
export class MyQuestionModel extends BaseModel implements QuestionModel {
questionId: string;
thName: string;
engName: string;
image: string;
questionType: number;
chooseTrueFalse: number;
answerTrueFalse: number;
answerChoice: AnswerChoiceModel[];
answerMultiChoice: AnswerChoiceModel[];
answerSequence: AnswerSequenceModel[];
questionMatch: AnswerMatchModel[];
answerMatch: AnswerMatchModel[];
constructor(data?: Partial<QuestionModel>, translateService?: TranslateService) {
super(data, translateService);
this.questionId = data?.questionId!
this.thName = data?.thName!
this.engName = data?.engName!
this.image = data?.image!
this.questionType = data?.questionType!
this.chooseTrueFalse = data?.chooseTrueFalse!
this.answerTrueFalse = data?.answerTrueFalse!
this.answerChoice = data?.answerChoice?.map((e) => new MyAnswerChoiceModel(e, this.translateService))!
this.answerMultiChoice = data?.answerMultiChoice?.map((e) => new MyAnswerChoiceModel(e, this.translateService))!
this.answerSequence = data?.answerSequence?.map((e) => new MyAnswerSequenceModel(e, this.translateService))!
this.questionMatch = data?.questionMatch?.map((e) => new MyAnswerMatchModel(e, this.translateService))!
this.answerMatch = data?.answerMatch?.map((e) => new MyAnswerMatchModel(e, this.translateService))!
}
getName(): string {
return this.translateService.currentLang == "th"
? this.thName
: this.engName;
}
getPictureUrl(): string {
if (this.image) {
return environment.url + "/files/image/" + this.image;
} else {
return "";
}
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel } from "./base.model";
import { environment } from "src/environments/environment";
import { MyQuestionModel, QuestionModel } from "./learning-exam-question.model";
export interface ExamListQuestionModel {
examsId: string
jobPostId: string
companyId: string
round: number
thName: string
engName: string
thObjective: string
engObjective: string
image: string
video: string
sampleVideo: string
examType: number
examPass: number
examPercent: number
examTimes: number
examDuration: number
examAnswerType: number
questionShuffle: number
answerShuffle: number
questionTotal: number
complete: number
duration: number
examDate: any
startDate: any
endDate: any
score: number
scorePercent: number
pass: number
question: QuestionModel[]
getDate(): string;
getDateToPipe(): string;
getName(): string;
getObjective(): string;
getPictureUrl(): string;
}
export class MyExamListQuestionModel extends BaseModel implements ExamListQuestionModel {
examsId: string
jobPostId: string
companyId: string
round: number
thName: string
engName: string
thObjective: string
engObjective: string
image: string
video: string
sampleVideo: string
examType: number
examPass: number
examPercent: number
examTimes: number
examDuration: number
examAnswerType: number
questionShuffle: number
answerShuffle: number
questionTotal: number
complete: number
duration: number
examDate: any
startDate: any
endDate: any
score: number
scorePercent: number
pass: number
question: QuestionModel[]
constructor(data?: Partial<ExamListQuestionModel>, translateService?: TranslateService) {
super(data, translateService);
this.startDate = data?.startDate!
this.endDate = data?.endDate!
this.duration = data?.duration!
this.pass = data?.pass!
this.score = data?.score!
this.scorePercent = data?.scorePercent!
this.examDate = data?.examDate!
this.examsId = data?.examsId!
this.round = data?.round!
this.thName = data?.thName!
this.engName = data?.engName!
this.thObjective = data?.thObjective!
this.engObjective = data?.engObjective!
this.image = data?.image!
this.video = data?.video!
this.sampleVideo = data?.sampleVideo!
this.examType = data?.examType!
this.examPass = data?.examPass!
this.examPercent = data?.examPercent!
this.examTimes = data?.examTimes!
this.examDuration = data?.examDuration!
this.examAnswerType = data?.examAnswerType!
this.questionShuffle = data?.questionShuffle!
this.answerShuffle = data?.answerShuffle!
this.questionTotal = data?.questionTotal!
this.complete = data?.complete!
this.question = data?.question?.map((e) => new MyQuestionModel(e, this.translateService))!
}
getDate(): string {
if (this.examDate) {
return new Date(this.examDate).getFullYear() + "-" + (new Date(this.examDate).getMonth() + 1) + "-" + new Date(this.examDate).getDate()
}
return ""
}
getDateToPipe(): string {
if (this.examDate) {
return new Date(this.examDate).toString()
}
return ""
}
getName(): string {
return this.translateService.currentLang == "th"
? this.thName
: this.engName;
}
getObjective(): string {
return this.translateService.currentLang == "th"
? this.thObjective
: this.engObjective;
}
getPictureUrl(): string {
if (this.image) {
return environment.url + "/files/image/" + this.image;
} else {
return "";
}
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
import { ExamModel } from "./exam.model";
import { JobModel } from "./job.model";
import { ProfileLoginModel, ProfileModel } from "./profile.model";
export interface ManageJobModel {
applicationDate: string
applyStatus: number
applyStatusCompany: number
applyStatusProfile: number
candidatesStatus: number
processStatus: number
companyView: number
allowExam: number
companyViewDate: string
exam: ExamModel | null
expiringOn: string
jobPost: JobModel | null
jobTitle: string
profile: ProfileLoginModel | null
}
export class ManageJobModel extends BaseModel implements ManageJobModel {
applicationDate: string
applyStatus: number
applyStatusCompany: number
applyStatusProfile: number
candidatesStatus: number
processStatus: number
companyView: number
allowExam: number
companyViewDate: string
exam: ExamModel | null
expiringOn: string
jobPost: JobModel | null
jobTitle: string
profile: ProfileLoginModel | null
constructor(data?: Partial<ManageJobModel>, translateService?: TranslateService) {
super(data, translateService)
this.profile = data?.profile ? new ProfileLoginModel(data.profile, translateService) : data?.profile!
this.jobPost = data?.jobPost ? new JobModel(data.jobPost, translateService) : data?.jobPost!
this.applyStatusCompany = checkData(data?.applyStatusCompany)
this.applyStatusProfile = checkData(data?.applyStatusProfile)
this.jobTitle = checkData(data?.jobTitle)
this.candidatesStatus = checkData(data?.candidatesStatus)
this.applyStatus = checkData(data?.applyStatus)
this.processStatus = checkData(data?.processStatus)
this.companyView = checkData(data?.companyView)
this.allowExam = checkData(data?.allowExam)
this.exam = data?.exam ? new ExamModel(data.exam) : null
this.applicationDate = checkData(data?.applicationDate)
this.expiringOn = checkData(data?.expiringOn)
this.companyViewDate = checkData(data?.companyViewDate)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface MaritalStatusModel {
engName: string
statusId: string
thName: string
}
export class MaritalStatusModel extends BaseModel implements MaritalStatusModel {
statusId: string;
thName: string;
engName: string;
constructor(data?: Partial<MaritalStatusModel>, translateService?: TranslateService) {
super(data, translateService)
this.statusId = checkData(data?.statusId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
\ No newline at end of file
import { TranslateService } from "@ngx-translate/core"
import { BaseModel } from "./base.model"
import { ProfileModel } from "./profile.model"
import { JobModel } from "./job.model"
export interface MessageModel {
profile: ProfileModel;
company: JobModel;
unread: number;
contentLast?: string;
detail: Detail[];
}
export interface Detail {
messageId: string;
content: string;
createdDate: string;
profileStatus: number;
profileRead: number;
jobStatus: number;
jobRead: number;
readDate: string;
}
export interface SentMessageModel{
content : string
profile: {
profileId : string
};
company: {
companyId : string
jobPostId? : string
};
}
export class MessageModel extends BaseModel implements MessageModel {
profile: ProfileModel;
company: JobModel;
unread: number;
contentLast?: string;
lastModifiedDate: string;
detail: Detail[];
constructor(data?: Partial<MessageModel>, translateService?: TranslateService) {
super(data, translateService)
this.profile = data?.profile ? new ProfileModel(data.profile, this.translateService) : data?.profile!
this.company = new JobModel(data?.company, this.translateService)
this.unread = data?.unread!
this.contentLast = data?.contentLast!
this.detail = data?.detail!
this.lastModifiedDate = data?.lastModifiedDate!
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface NationalityModel {
engName: string
nationalityId: string
thName: string
}
export class NationalityModel extends BaseModel implements NationalityModel {
nationalityId: string;
thName: string;
engName: string;
constructor(data?: Partial<NationalityModel>, translateService?: TranslateService) {
super(data, translateService)
this.nationalityId = checkData(data?.nationalityId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
export interface SortModel {
empty: boolean;
unsorted: boolean;
sorted: boolean;
}
export interface PageableModel {
offset: number;
sort: SortModel;
unpaged: boolean;
paged: boolean;
pageNumber: number;
pageSize: number;
}
export interface PageResponseModel<T> {
totalPages: number;
totalElements: number;
size: number;
content: T[];
number: number;
sort: SortModel;
pageable: PageableModel;
numberOfElements: number;
first: boolean;
last: boolean;
empty: boolean;
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface ProfileActivityModel {
activityId: string
degree: string
description: string
endDate: string
engFirstname: string
engLastname: string
role: string
startDate: string
thFirstname: string
thLastname: string
}
export class ProfileActivityModel extends BaseModel implements ProfileActivityModel {
activityId: string
degree: string
description: string
endDate: string
engFirstname: string
engLastname: string
role: string
startDate: string
thFirstname: string
thLastname: string
constructor(data?: Partial<ProfileActivityModel>, translateService?: TranslateService) {
super(data, translateService)
this.activityId = checkData(data?.activityId)
this.degree = checkData(data?.degree)
this.description = checkData(data?.description)
this.endDate = checkData(data?.endDate)
this.engFirstname = checkData(data?.engFirstname)
this.engLastname = checkData(data?.engLastname)
this.role = checkData(data?.role)
this.startDate = checkData(data?.startDate)
this.thFirstname = checkData(data?.thFirstname)
this.thLastname = checkData(data?.thLastname)
}
getName() {
return baseGetName(this.getNameTh(), this.getNameEng(), this.translateService.currentLang)
}
getFirstName() {
return baseGetName(this.thFirstname, this.engFirstname, this.translateService.currentLang)
}
getLastName() {
return baseGetName(this.thLastname, this.engLastname, this.translateService.currentLang)
}
getNameTh(): string {
let name = ""
if (this.thFirstname) {
name = this.thFirstname
if (this.thLastname) {
name = name + " " + this.thLastname
}
} else if (this.thLastname) {
name = this.thLastname
}
return name
}
getNameEng(): string {
let name = ""
if (this.engFirstname) {
name = this.engFirstname
if (this.engLastname) {
name = name + " " + this.engLastname
}
} else if (this.engLastname) {
name = this.engLastname
}
return name
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface ProfileChangeNameModel {
change: number
changeId: string
engFirstname: string
engLastname: string
thFirstname: string
thLastname: string
changeDate: string
}
export class ProfileChangeNameModel extends BaseModel implements ProfileChangeNameModel {
change: number
changeId: string
engFirstname: string
engLastname: string
thFirstname: string
thLastname: string
changeDate: string
constructor(data?: Partial<ProfileChangeNameModel>, translateService?: TranslateService) {
super(data, translateService)
this.change = checkData(data?.change)
this.changeId = checkData(data?.changeId)
this.engFirstname = checkData(data?.engFirstname)
this.engLastname = checkData(data?.engLastname)
this.thFirstname = checkData(data?.thFirstname)
this.thLastname = checkData(data?.thLastname)
this.changeDate = checkData(data?.changeDate)
}
getName() {
return baseGetName(this.getNameTh(), this.getNameEng(), this.translateService.currentLang)
}
getFirstName() {
return baseGetName(this.thFirstname, this.engFirstname, this.translateService.currentLang)
}
getLastName() {
return baseGetName(this.thLastname, this.engLastname, this.translateService.currentLang)
}
getNameTh(): string {
let name = ""
if (this.thFirstname) {
name = this.thFirstname
if (this.thLastname) {
name = name + " " + this.thLastname
}
} else if (this.thLastname) {
name = this.thLastname
}
return name
}
getNameEng(): string {
let name = ""
if (this.engFirstname) {
name = this.engFirstname
if (this.engLastname) {
name = name + " " + this.engLastname
}
} else if (this.engLastname) {
name = this.engLastname
}
return name
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface ProfileDocumentModel {
browseFile: string
document: string
documentId: string
}
export class ProfileDocumentModel extends BaseModel implements ProfileDocumentModel {
browseFile: string
document: string
documentId: string
constructor(data?: Partial<ProfileDocumentModel>, translateService?: TranslateService) {
super(data, translateService)
this.browseFile = checkData(data?.browseFile)
this.document = checkData(data?.document)
this.documentId = checkData(data?.documentId)
}
}
export interface ProfileDocumentlistModel {
documentId: string
browseFile: string
document: string
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
import { DegreeModel } from "./degree.model";
export interface ProfileEducationModel {
degree: DegreeModel | null
educationalId: string
educationalStatus: number
faculty: string
gpa: number
graduationYear: string
honors: number
institution: string
majorSubject: string
tranScript: string
tranScriptFileName: string
}
export class ProfileEducationModel extends BaseModel implements ProfileEducationModel {
degree: DegreeModel | null
educationalId: string
educationalStatus: number
faculty: string
gpa: number
graduationYear: string
honors: number
institution: string
majorSubject: string
tranScript: string
tranScriptFileName: string
constructor(data?: Partial<ProfileEducationModel>, translateService?: TranslateService) {
super(data, translateService)
this.degree = data?.degree ? new DegreeModel(data.degree, translateService) : null
this.educationalId = checkData(data?.educationalId)
this.educationalStatus = checkData(data?.educationalStatus)
this.faculty = checkData(data?.faculty)
this.gpa = checkData(data?.gpa)
this.graduationYear = checkData(data?.graduationYear)
this.honors = checkData(data?.honors)
this.institution = checkData(data?.institution)
this.majorSubject = checkData(data?.majorSubject)
this.tranScript = checkData(data?.tranScript)
}
}
export interface ProfileEducationlistModel {
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface ProfileExperienceModel {
companyName: string
description: string
endDate: string
experienceId: string
position: string
reasonLeaving: string
salary: string
startDate: string
}
export class ProfileExperienceModel extends BaseModel implements ProfileExperienceModel {
companyName: string
description: string
endDate: string
experienceId: string
position: string
reasonLeaving: string
salary: string
startDate: string
constructor(data?: Partial<ProfileExperienceModel>, translateService?: TranslateService) {
super(data, translateService)
this.companyName = checkData(data?.companyName)
this.description = checkData(data?.description)
this.endDate = checkData(data?.endDate)
this.experienceId = checkData(data?.experienceId)
this.position = checkData(data?.position)
this.reasonLeaving = checkData(data?.reasonLeaving)
this.salary = checkData(data?.salary)
this.startDate = checkData(data?.startDate)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface ProfileExpertiseModel {
engExpertise: string
expertiseId: string
thExpertise: string
}
export class ProfileExpertiseModel extends BaseModel implements ProfileExpertiseModel {
engExpertise: string
expertiseId: string
thExpertise: string
constructor(data?: Partial<ProfileExpertiseModel>, translateService?: TranslateService) {
super(data, translateService)
this.engExpertise = checkData(data?.engExpertise)
this.expertiseId = checkData(data?.expertiseId)
this.thExpertise = checkData(data?.thExpertise)
}
getName() {
return baseGetName(this.thExpertise, this.engExpertise, this.translateService.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
import { RelationShipModel } from "./relationship.model";
export interface ProfileFamilyMembersModel {
age: string
engFirstname: string
engLastname: string
familyId: string
jobTitle: string
occupation: string
phone: string
relationShipFamily?: RelationShipModel
status: number
thFirstname: string
thLastname: string
workingArea: string
}
export class ProfileFamilyMembersModel extends BaseModel implements ProfileFamilyMembersModel {
age: string
engFirstname: string
engLastname: string
familyId: string
jobTitle: string
occupation: string
phone: string
relationShipFamily?: RelationShipModel
status: number
thFirstname: string
thLastname: string
workingArea: string
constructor(data?: Partial<ProfileFamilyMembersModel>, translateService?: TranslateService) {
super(data, translateService)
this.age = checkData(data?.age)
this.engFirstname = checkData(data?.engFirstname)
this.engLastname = checkData(data?.engLastname)
this.familyId = checkData(data?.familyId)
this.jobTitle = checkData(data?.jobTitle)
this.occupation = checkData(data?.occupation)
this.phone = checkData(data?.phone)
this.relationShipFamily = data?.relationShipFamily ? new RelationShipModel(data.relationShipFamily, this.translateService) : data?.relationShipFamily
this.status = checkData(data?.status)
this.thFirstname = checkData(data?.thFirstname)
this.thLastname = checkData(data?.thLastname)
this.workingArea = checkData(data?.workingArea)
}
getName() {
return baseGetName(this.getNameTh(), this.getNameEng(), this.translateService.currentLang)
}
getFirstName() {
return baseGetName(this.thFirstname, this.engFirstname, this.translateService.currentLang)
}
getLastName() {
return baseGetName(this.thLastname, this.engLastname, this.translateService.currentLang)
}
getNameTh(): string {
let name = ""
if (this.thFirstname) {
name = this.thFirstname
if (this.thLastname) {
name = name + " " + this.thLastname
}
} else if (this.thLastname) {
name = this.thLastname
}
return name
}
getNameEng(): string {
let name = ""
if (this.engFirstname) {
name = this.engFirstname
if (this.engLastname) {
name = name + " " + this.engLastname
}
} else if (this.engLastname) {
name = this.engLastname
}
return name
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface ProfileHobbiesModel {
engHobbies: string
hobbiesId: string
thHobbies: string
}
export class ProfileHobbiesModel extends BaseModel implements ProfileHobbiesModel {
engHobbies: string
hobbiesId: string
thHobbies: string
constructor(data?: Partial<ProfileHobbiesModel>, translateService?: TranslateService) {
super(data, translateService)
this.engHobbies = checkData(data?.engHobbies)
this.hobbiesId = checkData(data?.hobbiesId)
this.thHobbies = checkData(data?.thHobbies)
}
getName() {
return baseGetName(this.thHobbies, this.engHobbies, this.translateService.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
import { LanguagesModel } from "./languages.model";
export interface ProfileLanguageSkillsModel {
languageSkillsId: string
languagesSkills?: LanguagesModel
listening: number
reading: number
speaking: number
writing: number
}
export class ProfileLanguageSkillsModel extends BaseModel implements ProfileLanguageSkillsModel {
languageSkillsId: string
languagesSkills?: LanguagesModel
listening: number
reading: number
speaking: number
writing: number
constructor(data?: Partial<ProfileLanguageSkillsModel>, translateService?: TranslateService) {
super(data, translateService)
this.languageSkillsId = checkData(data?.languageSkillsId)
this.languagesSkills = data?.languagesSkills ? new LanguagesModel(data.languagesSkills, this.translateService) : data?.languagesSkills
this.listening = checkData(data?.listening)
this.reading = checkData(data?.reading)
this.speaking = checkData(data?.speaking)
this.writing = checkData(data?.writing)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface ProfileOtherExplainModel {
accepted: string
anyReason: number
applied: number
arrested: number
association: number
ceremony: number
clarify: string
colorBlind: number
drinking: number
employers: number
employing: string
explain: string
explainId: string
guarantee: number
handicapped: number
jobLike: string
newsFrom: number
overtime: number
pregnant: number
remark: string
workCountry: number
workShift: number
}
export class ProfileOtherExplainModel extends BaseModel implements ProfileOtherExplainModel {
accepted: string
anyReason: number
applied: number
arrested: number
association: number
ceremony: number
clarify: string
colorBlind: number
drinking: number
employers: number
employing: string
explain: string
explainId: string
guarantee: number
handicapped: number
jobLike: string
newsFrom: number
overtime: number
pregnant: number
remark: string
workCountry: number
workShift: number
constructor(data?: Partial<ProfileOtherExplainModel>, translateService?: TranslateService) {
super(data, translateService)
this.accepted = checkData(data?.accepted)
this.anyReason = checkData(data?.anyReason)
this.applied = checkData(data?.applied)
this.arrested = checkData(data?.arrested)
this.association = checkData(data?.association)
this.ceremony = checkData(data?.ceremony)
this.clarify = checkData(data?.clarify)
this.colorBlind = checkData(data?.colorBlind)
this.drinking = checkData(data?.drinking)
this.employers = checkData(data?.employers)
this.employing = checkData(data?.employing)
this.explain = checkData(data?.explain)
this.explainId = checkData(data?.explainId)
this.guarantee = checkData(data?.guarantee)
this.handicapped = checkData(data?.handicapped)
this.jobLike = checkData(data?.jobLike)
this.newsFrom = checkData(data?.newsFrom)
this.overtime = checkData(data?.overtime)
this.pregnant = checkData(data?.pregnant)
this.remark = checkData(data?.remark)
this.workCountry = checkData(data?.workCountry)
this.workShift = checkData(data?.workShift)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface ProfilePrivacyModel {
address: number
areas: number
close: number
email: number
firstName: number
hideAll: number
lastName: number
mobile: number
companyId: string
profileId: string
resume: number
showAll: number
telephone: number
}
export class ProfilePrivacyModel extends BaseModel implements ProfilePrivacyModel {
address: number
areas: number
close: number
email: number
firstName: number
hideAll: number
lastName: number
mobile: number
companyId: string
profileId: string
resume: number
showAll: number
telephone: number
constructor(data?: Partial<ProfilePrivacyModel>, translateService?: TranslateService) {
super(data, translateService)
this.address = checkData(data?.address)
this.areas = checkData(data?.areas)
this.close = checkData(data?.close)
this.email = checkData(data?.email)
this.firstName = checkData(data?.firstName)
this.hideAll = checkData(data?.hideAll)
this.lastName = checkData(data?.lastName)
this.mobile = checkData(data?.mobile)
this.profileId = checkData(data?.profileId)
this.companyId = checkData(data?.companyId)
this.resume = checkData(data?.resume)
this.showAll = checkData(data?.showAll)
this.telephone = checkData(data?.telephone)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface ProfileReferencesModel {
accessPerson: number
company: string
engFirstname: string
engLastname: string
jobTitle: string
phone: string
referencesId: string
thFirstname: string
thLastname: string
}
export class ProfileReferencesModel extends BaseModel implements ProfileReferencesModel {
accessPerson: number
company: string
engFirstname: string
engLastname: string
jobTitle: string
phone: string
referencesId: string
thFirstname: string
thLastname: string
constructor(data?: Partial<ProfileReferencesModel>, translateService?: TranslateService) {
super(data, translateService)
this.accessPerson = checkData(data?.accessPerson)
this.company = checkData(data?.company)
this.engFirstname = checkData(data?.engFirstname)
this.engLastname = checkData(data?.engLastname)
this.jobTitle = checkData(data?.jobTitle)
this.phone = checkData(data?.phone)
this.referencesId = checkData(data?.referencesId)
this.thFirstname = checkData(data?.thFirstname)
this.thLastname = checkData(data?.thLastname)
}
getName() {
return baseGetName(this.getNameTh(), this.getNameEng(), this.translateService.currentLang)
}
getFirstName() {
return baseGetName(this.thFirstname, this.engFirstname, this.translateService.currentLang)
}
getLastName() {
return baseGetName(this.thLastname, this.engLastname, this.translateService.currentLang)
}
getNameTh(): string {
let name = ""
if (this.thFirstname) {
name = this.thFirstname
if (this.thLastname) {
name = name + " " + this.thLastname
}
} else if (this.thLastname) {
name = this.thLastname
}
return name
}
getNameEng(): string {
let name = ""
if (this.engFirstname) {
name = this.engFirstname
if (this.engLastname) {
name = name + " " + this.engLastname
}
} else if (this.engLastname) {
name = this.engLastname
}
return name
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
import { RelationShipModel } from "./relationship.model";
export interface ProfileRelativeModel {
department: string
engFirstname: string
engLastname: string
major: string
position: string
relationShip: RelationShipModel | null
relativeId: string
thFirstname: string
thLastname: string
}
export class ProfileRelativeModel extends BaseModel implements ProfileRelativeModel {
department: string
engFirstname: string
engLastname: string
major: string
position: string
relationShip: RelationShipModel | null
relativeId: string
thFirstname: string
thLastname: string
constructor(data?: Partial<ProfileRelativeModel>, translateService?: TranslateService) {
super(data, translateService)
this.department = checkData(data?.department)
this.engFirstname = checkData(data?.engFirstname)
this.engLastname = checkData(data?.engLastname)
this.major = checkData(data?.major)
this.position = checkData(data?.position)
this.relationShip = data?.relationShip ? new RelationShipModel(data.relationShip, this.translateService) : null
this.relativeId = checkData(data?.relativeId)
this.thFirstname = checkData(data?.thFirstname)
this.thLastname = checkData(data?.thLastname)
}
getName() {
return baseGetName(this.getNameTh(), this.getNameEng(), this.translateService.currentLang)
}
getFirstName() {
return baseGetName(this.thFirstname, this.engFirstname, this.translateService.currentLang)
}
getLastName() {
return baseGetName(this.thLastname, this.engLastname, this.translateService.currentLang)
}
getNameTh(): string {
let name = ""
if (this.thFirstname) {
name = this.thFirstname
if (this.thLastname) {
name = name + " " + this.thLastname
}
} else if (this.thLastname) {
name = this.thLastname
}
return name
}
getNameEng(): string {
let name = ""
if (this.engFirstname) {
name = this.engFirstname
if (this.engLastname) {
name = name + " " + this.engLastname
}
} else if (this.engLastname) {
name = this.engLastname
}
return name
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface ProfileSpecialModel {
engSpecial: string
range: number
specialId: string
thSpecial: string
}
export class ProfileSpecialModel extends BaseModel implements ProfileSpecialModel {
engSpecial: string
range: number
specialId: string
thSpecial: string
constructor(data?: Partial<ProfileSpecialModel>, translateService?: TranslateService) {
super(data, translateService)
this.engSpecial = checkData(data?.engSpecial)
this.range = checkData(data?.range)
this.specialId = checkData(data?.specialId)
this.thSpecial = checkData(data?.thSpecial)
}
getName() {
return baseGetName(this.thSpecial, this.engSpecial, this.translateService.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface ProfileTrainingCertExperienceModel {
browseFile: string
certDiploma: string
certId: string
course: string
endDate: string
insOrCom: string
startDate: string
}
export class ProfileTrainingCertExperienceModel extends BaseModel implements ProfileTrainingCertExperienceModel {
browseFile: string
browseFileName: string
certDiploma: string
certId: string
course: string
endDate: string
insOrCom: string
startDate: string
constructor(data?: Partial<ProfileTrainingCertExperienceModel>, translateService?: TranslateService) {
super(data, translateService)
this.browseFile = checkData(data?.browseFile)
this.certDiploma = checkData(data?.certDiploma)
this.certId = checkData(data?.certId)
this.course = checkData(data?.course)
this.endDate = checkData(data?.endDate)
this.insOrCom = checkData(data?.insOrCom)
this.startDate = checkData(data?.startDate)
}
}
export interface ProfileVehicleModel {
}
import { CountryModel } from './country.model';
import { Region2Model } from './region2.model';
export interface ProvinceIssuedModel {
provinceId: string
shortTname: string
shortEname: string
thName: string
engName: string
country: CountryModel
region: Region2Model
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
import { CountryModel } from "./country.model";
import { RegionModel } from "./region.model";
export interface ProvinceModel {
provinceId: string
shortTname: string
shortEname: string
thName: string
engName: string
country: CountryModel | null
regio: RegionModel | null
}
export class ProvinceModel extends BaseModel implements ProvinceModel {
provinceId: string
shortTname: string
shortEname: string
thName: string
engName: string
country: CountryModel | null
region: RegionModel | null
constructor(data?: Partial<ProvinceModel>, translateService?: TranslateService) {
super(data, translateService)
this.provinceId = checkData(data?.provinceId)
this.shortTname = checkData(data?.shortTname)
this.shortEname = checkData(data?.shortEname)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
this.country = data?.country ? new CountryModel(data.country, translateService) : null
this.region = data?.region ? new RegionModel(data.region, translateService) : null
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
getShortName() {
return baseGetName(this.shortTname, this.shortEname, this.translateService.currentLang)
}
}
\ No newline at end of file
import { TranslateService } from "@ngx-translate/core";
import { AnswerModel } from "./answer.model";
import { AnswerMatchModel } from "./answermatch.model";
import { AnswerSequenceModel } from "./answersequence.model";
import { BaseModel, dataToArray, checkData, baseGetName } from "./base.model";
import { ExamModel } from "./exam.model";
export interface QuestionModel {
answerChoice: AnswerModel[]
answerMatch: AnswerMatchModel[]
answerMultiChoice: AnswerModel[]
answerSequence: AnswerSequenceModel[]
answerTrueFalse: number
engName: string
exam: ExamModel | null
image: string
questionId: string
questionType: number
thName: string
}
export class QuestionModel extends BaseModel implements QuestionModel {
answerChoice: AnswerModel[]
answerMatch: AnswerMatchModel[]
answerMultiChoice: AnswerModel[]
answerSequence: AnswerSequenceModel[]
answerTrueFalse: number
engName: string
exam: ExamModel | null
image: string
questionId: string
questionType: number
thName: string
constructor(data?: Partial<QuestionModel>, translateService?: TranslateService) {
super(data, translateService)
this.answerChoice = dataToArray(this.answerChoice).map((x: AnswerModel) => new AnswerModel(x, translateService))
this.answerMatch = dataToArray(this.answerMatch).map((x: AnswerMatchModel) => new AnswerMatchModel(x, translateService))
this.answerMultiChoice = dataToArray(this.answerMultiChoice).map((x: AnswerModel) => new AnswerModel(x, translateService))
this.answerSequence = dataToArray(this.answerSequence).map((x: AnswerSequenceModel) => new AnswerSequenceModel(x, translateService))
this.answerTrueFalse = checkData(data?.answerTrueFalse)
this.engName = checkData(data?.engName)
this.exam = data?.exam ? new ExamModel(data.exam, translateService) : null
this.image = checkData(data?.image)
this.questionId = checkData(data?.questionId)
this.questionType = checkData(data?.questionType)
this.thName = checkData(data?.thName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
getTypeName(): string {
if (this.questionType == 0) {
return "Sorting";
} else if (this.questionType == 1) {
return "True/False";
} else if (this.questionType == 2) {
return "Single answer";
} else if (this.questionType == 3) {
return "Multiple answers";
} else if (this.questionType == 4) {
return "Matching";
}
return ""
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface RaceModel {
engName: string
raceId: string
thName: string
}
export class RaceModel extends BaseModel implements RaceModel {
engName: string
raceId: string
thName: string
constructor(data?: Partial<RaceModel>, translateService?: TranslateService) {
super(data, translateService)
this.raceId = checkData(data?.raceId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
export interface Region2Model {
}
export interface Region3Model {
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface RelationShipModel {
engName: string
relationId: string
thName: string
}
export class RelationShipModel extends BaseModel implements RelationShipModel {
engName: string
relationId: string
thName: string
constructor(data?: Partial<RelationShipModel>, translateService?: TranslateService) {
super(data, translateService)
this.engName = checkData(data?.engName)
this.relationId = checkData(data?.relationId)
this.thName = checkData(data?.thName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
export interface Relationship2Model {
relationId: string
thName: string
engName: string
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface ReligionModel {
engName: string
religionId: string
thName: string
}
export class ReligionModel extends BaseModel implements ReligionModel {
engName: string
religionId: string
thName: string
constructor(data?: Partial<ReligionModel>, translateService?: TranslateService) {
super(data, translateService)
this.religionId = checkData(data?.religionId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core"
import { BaseModel, checkData } from "./base.model"
export interface ResponseModel {
message: string
statusCode: number
resultObject?: {}
fail?: boolean
actionStatus: string
none?: boolean
success?: boolean
state?: string
}
export class MyResponseModel extends BaseModel implements ResponseModel {
message: string
statusCode: number
resultObject?: {}
fail?: boolean
actionStatus: string
none?: boolean
success?: boolean
state?: string
constructor(data?: Partial<ResponseModel>, translateService?: TranslateService) {
super(data, translateService)
this.message = checkData(data?.message)
this.statusCode = checkData(data?.resultObject)
this.resultObject = data?.resultObject
this.fail = data?.fail
this.actionStatus = checkData(data?.actionStatus)
this.none = data?.none
this.success = data?.success
this.state = checkData(data?.state)
}
}
import { TranslateService } from "@ngx-translate/core"
import { BaseModel } from "./base.model"
export interface RoleModel {
roleId: string
thName: string
engName: string
menu: string
}
export class RoleModel extends BaseModel implements RoleModel {
roleId: string
thName: string
engName: string
menu: string
constructor(data?: Partial<RoleModel>, translateService?: TranslateService) {
super(data, translateService)
this.roleId = data?.roleId!
this.thName = data?.thName!
this.engName = data?.engName!
this.menu = data?.menu!
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface SearchJobModel {
position: string
careerCluster: string
district: string
province: string
}
export class SearchJobModel extends BaseModel implements SearchJobModel {
position: string
careerCluster: string
district: string
province: string
constructor(data?: Partial<SearchJobModel>) {
super(data)
this.position = data?.position?data?.position:''
this.careerCluster = data?.careerCluster?data?.careerCluster:''
this.district = data?.district?data?.district:''
this.province = data?.province?data?.province:''
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData } from "./base.model";
export interface SkillModel {
value: string
}
export class SkillModel extends BaseModel implements SkillModel {
value: string
constructor(data?: Partial<SkillModel>, translateService?: TranslateService) {
super(data, translateService)
this.value = checkData(data?.value)
}
}
import { BaseModel, dataToArray, checkData } from "./base.model";
export interface StatusModel {
statusId: string
thName: string
engName: string
}
export class MyStatusModel extends BaseModel implements StatusModel {
statusId: string
thName: string
engName: string
constructor(data?: Partial<StatusModel>) {
super(data)
this.statusId = checkData(data?.statusId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
}
export interface SubdistrictCurrentModel {
districtId: string
subDistrictId: string
zipCodeId: string
thName: string
engName: string
}
export interface SubdistrictEmergencyModel {
}
export interface SubdistrictHomeModel {
districtId: string
subDistrictId: string
zipCodeId: string
thName: string
engName: string
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface SubDistrictModel {
districtId: string
subDistrictId: string
zipCodeId: string
thName: string
engName: string
}
export class SubDistrictModel extends BaseModel implements SubDistrictModel {
districtId: string
subDistrictId: string
zipCodeId: string
thName: string
engName: string
constructor(data?: Partial<SubDistrictModel>, translateService?: TranslateService) {
super(data, translateService)
this.districtId = checkData(data?.districtId)
this.subDistrictId = checkData(data?.subDistrictId)
this.zipCodeId = checkData(data?.zipCodeId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface TagSearchModel {
display: string
value: string
}
export class TagSearchModel extends BaseModel implements TagSearchModel {
display: string
value: string
constructor(data?: Partial<TagSearchModel>, translateService?: TranslateService) {
super(data, translateService)
this.display = checkData(data?.display)
this.value = checkData(data?.value)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, baseGetName, checkData } from "./base.model";
export interface TopSearchModel {
display: string
value: string
amount: number
}
export class TopSearchModel extends BaseModel implements TopSearchModel {
display: string
value: string
amount: number
constructor(data?: Partial<TopSearchModel>, translateService?: TranslateService) {
super(data, translateService)
this.display = checkData(data?.display)
this.value = checkData(data?.value)
this.amount = checkData(data?.amount)
}
}
import { TranslateService } from "@ngx-translate/core";
import { BaseModel, checkData, baseGetName } from "./base.model";
export interface WelfareModel {
companyWelfareId: string
thName: string
engName: string
}
export class WelfareModel extends BaseModel implements WelfareModel {
companyWelfareId: string
thName: string
engName: string
constructor(data?: Partial<WelfareModel>, translateService?: TranslateService) {
super(data, translateService)
this.companyWelfareId = checkData(data?.companyWelfareId)
this.thName = checkData(data?.thName)
this.engName = checkData(data?.engName)
}
getName() {
return baseGetName(this.thName, this.engName, this.translateService?.currentLang)
}
}
......@@ -11,7 +11,7 @@ import { forkJoin, Observable } from 'rxjs';
providedIn: 'root'
})
export class UserService {
apiBaseUrl = "/members";
apiBaseUrl = "/admin";
constructor(
private http: HttpClient,
private translateService: TranslateService
......@@ -37,6 +37,15 @@ export class UserService {
);
}
getListsProfile() {
return this.http
.get<UserProfileModel[]>(this.apiBaseUrl+'/manage-profile/lists')
// .pipe(
// map((e) => e.map((e) => new UserProfileModel(e, this.translateService)))
// );
}
getListByPageSize(body: { page: number; size: number }) {
return this.http
.get<PageResponseModel<UserProfileModel>>(this.apiBaseUrl, {
......
......@@ -42,7 +42,7 @@
<!-- start header country -->
<div
<!-- <div
class="header-element py-[1rem] md:px-[0.65rem] px-2 header-country hs-dropdown ti-dropdown hidden sm:block [--placement:bottom-left]">
<button id="dropdown-flag" type="button"
......@@ -81,7 +81,7 @@
</div>
</div>
</div>
</div>
</div> -->
<!-- end header country -->
<!-- light and dark theme -->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment