From 93ae5c1edc57174dcb58f4403524a7ea76e67b04 Mon Sep 17 00:00:00 2001
From: jsabban <jules.sabban@inrae.fr>
Date: Mon, 25 Nov 2024 14:37:57 +0100
Subject: [PATCH] Add ressources to create Illumina NGSRG readset treatment

	Ref: #59
---
 modules/local/module_NGL-Bi.nf | 24 ++++++++++++++++++++++++
 sub-workflows/local/ngl.nf     |  6 +++++-
 workflow/short_reads_qc.nf     |  7 +++++--
 3 files changed, 34 insertions(+), 3 deletions(-)

diff --git a/modules/local/module_NGL-Bi.nf b/modules/local/module_NGL-Bi.nf
index 995ebf5..7fde2fa 100644
--- a/modules/local/module_NGL-Bi.nf
+++ b/modules/local/module_NGL-Bi.nf
@@ -70,4 +70,28 @@ process FILE_RENAME {
 			$args \\
 			1> ${fileType}_rename.log
 	"""
+}
+
+process NGSRG {
+	label 'ngl'
+
+	input:
+		path nglFile
+		path file
+		val level
+
+	output:
+		path("*.log"), emit: log
+
+	script:
+	def args = task.ext.args ?: ''
+	def statFileOpt = file.endsWith('Stats.json') ? "--demuxStatFile $file" : ''
+	"""
+		perl ${params.ngl_bi_client}/GeT/perl/illumina/createNGL-BiTreatmentNGSRG.pl \\
+			--objectFile $nglFile \\
+			--level $level \\
+			$statFileOpt \\
+			1> treatment_ngsrg_${level}.log
+	
+	"""
 }
\ No newline at end of file
diff --git a/sub-workflows/local/ngl.nf b/sub-workflows/local/ngl.nf
index 968e899..a677806 100644
--- a/sub-workflows/local/ngl.nf
+++ b/sub-workflows/local/ngl.nf
@@ -20,7 +20,8 @@ include {	UPDATE_NGLBI_STATE_FROM_FILE as UPDATE_STATE_FQC;
 			CREATE_ANALYSIS									} from "${params.shared_modules}/ngl_bi.nf"
 
 include {	FILE_RENAME as RENAME_FASTQ;
-			FILE_RENAME as RENAME_INDEX						} from "$baseDir/modules/local/module_NGL-Bi.nf"
+			FILE_RENAME as RENAME_INDEX;
+			NGSRG as NGSRG_READSET;							} from "$baseDir/modules/local/module_NGL-Bi.nf"
 // -------------------------------------------------
 // 					WORKFLOW
 // -------------------------------------------------
@@ -36,6 +37,7 @@ workflow NGL {
 		project
 		project_hash
 		is_single_cell
+		demux_stat_json
 
 	main:
 		// First steps
@@ -45,6 +47,8 @@ workflow NGL {
 		readsets_created = BEGIN.out.readsets_created
 		ready = BEGIN.out.ready
 		
+		NGSRG_READSET(readsets_created, demux_stat_json, 'readsets')
+
 		bi_run_code = nglBiRunCode.collect().map { it.toString() }
 
 		// Compute results
diff --git a/workflow/short_reads_qc.nf b/workflow/short_reads_qc.nf
index adac025..3518b06 100644
--- a/workflow/short_reads_qc.nf
+++ b/workflow/short_reads_qc.nf
@@ -62,6 +62,8 @@ ch_sortmerna_db = Channel.from(
 	params.sortmerna_db_path + '/silva-euk-28s-id98.fasta',
 )
 
+ch_demux_stat_json = Channel.fromPath("${params.inputdir}/Stats/Stats.json")
+
 mismatchNumber = params.sequencer == 'MiSeq'? 0 : 1
 //banksForConta = params.addBankForConta ? params.genomesRefForConta << params.addBankForConta : params.genomesRefForConta
 
@@ -116,7 +118,7 @@ workflow SHORT_READS_QC {
 	CORE(fastq)
 	ch_versions = ch_versions.mix(CORE.out.versions)
 
-	if (params.data_nature =~ 'DNA|GENOMIC') {
+	if (params.data_nature =~ 'DNA|GENOMIC|WGS') {
 		DNA_QC(CORE.out.subset_fastq
 			.collect{it[1]}
 			.flatten()
@@ -192,7 +194,8 @@ workflow SHORT_READS_QC {
 			MULTIQC.out.html,
 			params.project,
 			params.project_hash,
-			params.single_cell
+			params.single_cell,
+			ch_demux_stat_json
 		)
 
 		// Add demultiplexStat treatments
-- 
GitLab