This repository was archived by the owner on Mar 13, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +49
-16
lines changed Expand file tree Collapse file tree 2 files changed +49
-16
lines changed Original file line number Diff line number Diff line change 1+ const _ = require ( 'lodash' ) ;
12const logger = require ( './logger' ) ;
23
34/*
@@ -47,6 +48,36 @@ async function scan(model, scanParams) {
4748 } ) ;
4849}
4950
51+ /**
52+ * Get single data by query parameters
53+ * @param {Object } model The dynamoose model to query
54+ * @param {Object } params The parameters object
55+ * @returns {Promise<void> }
56+ */
57+ async function queryOne ( model , params ) {
58+ logger . debug ( 'Enter queryOne.' ) ;
59+
60+ return await new Promise ( ( resolve , reject ) => {
61+ const queryParams = { } ;
62+
63+ _ . forOwn ( params , ( value , key ) => {
64+ queryParams [ key ] = { eq : value } ;
65+ } ) ;
66+
67+ logger . debug ( `${ JSON . stringify ( queryParams ) } ` ) ;
68+ model . queryOne ( queryParams ) . exec ( ( err , result ) => {
69+ if ( err ) {
70+ logger . debug ( `queryOne. Error. ${ err } ` ) ;
71+ return reject ( err ) ;
72+ }
73+ logger . debug ( 'queryOne. Result.' ) ;
74+ logger . debug ( result ) ;
75+
76+ return resolve ( result ) ;
77+ } ) ;
78+ } ) ;
79+ }
80+
5081/**
5182 * Get single data by scan parameters
5283 * @param {Object } model The dynamoose model to scan
@@ -136,4 +167,5 @@ module.exports = {
136167 create,
137168 update,
138169 remove,
170+ queryOne
139171} ;
Original file line number Diff line number Diff line change @@ -238,22 +238,6 @@ async function recreate(issue, currentUser) {
238238 } ,
239239 } ;
240240
241- const dbIssue = await dbHelper . scanOne ( models . Issue , {
242- number : issueNumber ,
243- projectId : issue . projectId
244- } ) ;
245-
246- if ( ! issue . recreate ) {
247- if ( dbIssue ) dbIssue . delete ( ) ;
248- return {
249- success : true
250- } ;
251- }
252-
253- if ( ! dbIssue ) {
254- createEvent . event = 'issue.created' ;
255- }
256-
257241 const labels = [ ] ;
258242
259243 if ( provider === 'github' ) {
@@ -315,6 +299,23 @@ async function recreate(issue, currentUser) {
315299 }
316300 }
317301
302+ const dbIssue = await dbHelper . scanOne ( models . Issue , {
303+ number : issueNumber ,
304+ provider,
305+ repositoryId : createEvent . data . repository . id
306+ } ) ;
307+
308+ if ( ! issue . recreate ) {
309+ if ( dbIssue ) dbIssue . delete ( ) ;
310+ return {
311+ success : true
312+ } ;
313+ }
314+
315+ if ( ! dbIssue ) {
316+ createEvent . event = 'issue.created' ;
317+ }
318+
318319 if ( labels . length > 0 ) {
319320 createEvent . data . issue . labels = labels ;
320321 }
You can’t perform that action at this time.
0 commit comments