9595
9696< ol class ="breadcrumb ">
9797 < li class ="breadcrumb-item "> Classes</ li >
98- < li class ="breadcrumb-item " > EmployeeNumber1729092660 </ li >
98+ < li class ="breadcrumb-item " > EmployeeNumber1729517173 </ li >
9999</ ol >
100100
101101< ul class ="nav nav-tabs " role ="tablist ">
119119 < h3 > File</ h3 >
120120 </ p >
121121 < p class ="comment ">
122- < code > src/migrations/jobs/1729092660 -employee-number.ts</ code >
122+ < code > src/migrations/jobs/1729517173 -employee-number.ts</ code >
123123 </ p >
124124
125125
@@ -131,6 +131,22 @@ <h3>File</h3>
131131 < h3 id ="index "> Index</ h3 >
132132 < table class ="table table-sm table-bordered index-table ">
133133 < tbody >
134+ < tr >
135+ < td class ="col-md-4 ">
136+ < h6 > < b > Properties</ b > </ h6 >
137+ </ td >
138+ </ tr >
139+ < tr >
140+ < td class ="col-md-4 ">
141+ < ul class ="index-list ">
142+ < li >
143+ < span class ="modifier "> Private</ span >
144+ < span class ="modifier "> Readonly</ span >
145+ < a href ="#logger " > logger</ a >
146+ </ li >
147+ </ ul >
148+ </ td >
149+ </ tr >
134150
135151 < tr >
136152 < td class ="col-md-4 ">
@@ -141,9 +157,9 @@ <h6><b>Methods</b></h6>
141157 < td class ="col-md-4 ">
142158 < ul class ="index-list ">
143159 < li >
144- < span class ="modifier "> Public </ span >
160+ < span class ="modifier "> Private </ span >
145161 < span class ="modifier "> Async</ span >
146- < a href ="#down " > down </ a >
162+ < a href ="#_migrateEmployeeNumberToArray " > _migrateEmployeeNumberToArray </ a >
147163 </ li >
148164 < li >
149165 < span class ="modifier "> Public</ span >
@@ -169,12 +185,12 @@ <h3 id="constructor">Constructor</h3>
169185 < tr >
170186 < td class ="col-md-4 ">
171187 < span class ="modifier "> Public</ span >
172- < code > constructor(connection : Connection)</ code >
188+ < code > constructor(mongo : Connection)</ code >
173189 </ td >
174190 </ tr >
175191 < tr >
176192 < td class ="col-md-4 ">
177- < div class ="io-line "> Defined in < a href ="" data-line ="5 " class ="link-to-prism "> src/migrations/jobs/1729092660 -employee-number.ts:5 </ a > </ div >
193+ < div class ="io-line "> Defined in < a href ="" data-line ="6 " class ="link-to-prism "> src/migrations/jobs/1729517173 -employee-number.ts:6 </ a > </ div >
178194 </ td >
179195 </ tr >
180196
@@ -192,7 +208,7 @@ <h3 id="constructor">Constructor</h3>
192208 </ thead >
193209 < tbody >
194210 < tr >
195- < td > connection </ td >
211+ < td > mongo </ td >
196212
197213 < td >
198214 < code > Connection</ code >
@@ -212,6 +228,39 @@ <h3 id="constructor">Constructor</h3>
212228 </ table >
213229</ section >
214230
231+ < section data-compodoc ="block-properties ">
232+
233+ < h3 id ="inputs ">
234+ Properties
235+ </ h3 >
236+ < table class ="table table-sm table-bordered ">
237+ < tbody >
238+ < tr >
239+ < td class ="col-md-4 ">
240+ < a name ="logger "> </ a >
241+ < span class ="name ">
242+ < span class ="modifier "> Private</ span >
243+ < span class ="modifier "> Readonly</ span >
244+ < span > < b > logger</ b > </ span >
245+ < a href ="#logger "> < span class ="icon ion-ios-link "> </ span > </ a >
246+ </ span >
247+ </ td >
248+ </ tr >
249+ < tr >
250+ < td class ="col-md-4 ">
251+ < i > Default value : </ i > < code > new Logger(EmployeeNumber1729517173.name)</ code >
252+ </ td >
253+ </ tr >
254+ < tr >
255+ < td class ="col-md-4 ">
256+ < div class ="io-line "> Defined in < a href ="" data-line ="6 " class ="link-to-prism "> src/migrations/jobs/1729517173-employee-number.ts:6</ a > </ div >
257+ </ td >
258+ </ tr >
259+
260+
261+ </ tbody >
262+ </ table >
263+ </ section >
215264
216265 < section data-compodoc ="block-methods ">
217266
@@ -222,27 +271,27 @@ <h3 id="methods">
222271 < tbody >
223272 < tr >
224273 < td class ="col-md-4 ">
225- < a name ="down "> </ a >
274+ < a name ="_migrateEmployeeNumberToArray "> </ a >
226275 < span class ="name ">
227- < span class ="modifier "> Public </ span >
276+ < span class ="modifier "> Private </ span >
228277 < span class ="modifier "> Async</ span >
229- < span > < b > down </ b > </ span >
230- < a href ="#down "> < span class ="icon ion-ios-link "> </ span > </ a >
278+ < span > < b > _migrateEmployeeNumberToArray </ b > </ span >
279+ < a href ="#_migrateEmployeeNumberToArray "> < span class ="icon ion-ios-link "> </ span > </ a >
231280 </ span >
232281 </ td >
233282 </ tr >
234283 < tr >
235284 < td class ="col-md-4 ">
236285 < span class ="modifier-icon icon ion-ios-reset "> </ span >
237- < code > down ()</ code >
286+ < code > _migrateEmployeeNumberToArray ()</ code >
238287 </ td >
239288 </ tr >
240289
241290
242291 < tr >
243292 < td class ="col-md-4 ">
244- < div class ="io-line "> Defined in < a href ="" data-line ="29 "
245- class ="link-to-prism "> src/migrations/jobs/1729092660 -employee-number.ts:29 </ a > </ div >
293+ < div class ="io-line "> Defined in < a href ="" data-line ="19 "
294+ class ="link-to-prism "> src/migrations/jobs/1729517173 -employee-number.ts:19 </ a > </ div >
246295 </ td >
247296 </ tr >
248297
@@ -281,8 +330,8 @@ <h3 id="methods">
281330
282331 < tr >
283332 < td class ="col-md-4 ">
284- < div class ="io-line "> Defined in < a href ="" data-line ="10 "
285- class ="link-to-prism "> src/migrations/jobs/1729092660 -employee-number.ts:10 </ a > </ div >
333+ < div class ="io-line "> Defined in < a href ="" data-line ="13 "
334+ class ="link-to-prism "> src/migrations/jobs/1729517173 -employee-number.ts:13 </ a > </ div >
286335 </ td >
287336 </ tr >
288337
@@ -309,35 +358,37 @@ <h3 id="methods">
309358
310359 < div class ="tab-pane fade tab-source-code " id ="source ">
311360 < pre class ="line-numbers compodoc-sourcecode "> < code class ="language-typescript "> import { Logger } from "@nestjs/common"
312- import { InjectConnection } from "@nestjs/mongoose"
313- import { Connection } from "mongoose"
361+ import { InjectConnection, InjectModel } from "@nestjs/mongoose"
362+ import { Connection, Model } from "mongoose"
314363
315- export default class EmployeeNumber1729092660 {
316- public constructor(@InjectConnection() private connection: Connection) {
364+ export default class EmployeeNumber1729517173 {
365+ private readonly logger = new Logger(EmployeeNumber1729517173.name)
317366
367+ public constructor(
368+ @InjectConnection() private mongo: Connection,
369+ ) {
318370 }
319371
320372 public async up(): Promise<void> {
321- Logger. log('EmployeeNumber1729092660 up')
373+ this.logger. log('EmployeeNumber1729092660 up started ')
322374
323- Logger.log('this.connection.readyState', this.connection.readyState)
375+ await this._migrateEmployeeNumberToArray()
376+ }
324377
325- return new Promise((resolve) => {
326- const interval = setInterval(() => {
327- Logger.log('EmployeeNumber1729092660 up in progress')
328- }, 1_000)
378+ private async _migrateEmployeeNumberToArray(): Promise<void> {
379+ const identities = await this.mongo.collection('identities').find();
329380
330- setTimeout(() => {
331- clearInterval(interval)
332- Logger.log('EmployeeNumber1729092660 up done')
381+ for await (const identity of identities) {
382+ const employeeNumber = identity.inetOrgPerson.employeeNumber;
333383
334- resolve()
335- }, 5_000)
336- })
337- }
384+ if (typeof employeeNumber === 'string') {
385+ this.logger.log(`Migrating employeeNumber for identity ${identity._id}`);
386+ identity.inetOrgPerson.employeeNumber = [employeeNumber];
387+ this.mongo.collection('identities').updateOne({ _id: identity._id }, { $set: { 'inetOrgPerson.employeeNumber': [employeeNumber] } });
388+ }
389+ }
338390
339- public async down(): Promise<void> {
340- Logger.log('EmployeeNumber1729092660 down')
391+ this.logger.log('Migration terminée avec succès');
341392 }
342393}
343394</ code > </ pre >
@@ -378,7 +429,7 @@ <h1 class="search-results-title">No results matching "<span class='search-query'
378429 < script >
379430 var COMPODOC_CURRENT_PAGE_DEPTH = 1 ;
380431 var COMPODOC_CURRENT_PAGE_CONTEXT = 'class' ;
381- var COMPODOC_CURRENT_PAGE_URL = 'EmployeeNumber1729092660 .html' ;
432+ var COMPODOC_CURRENT_PAGE_URL = 'EmployeeNumber1729517173 .html' ;
382433 var MAX_SEARCH_RESULTS = 15 ;
383434 </ script >
384435
0 commit comments