move functional pieces into their own folders
This commit is contained in:
		
							parent
							
								
									a9b1523f93
								
							
						
					
					
						commit
						c6bf867ffc
					
				
							
								
								
									
										1
									
								
								baseline.sql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								baseline.sql
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | {"num_rows":"257845"} | ||||||
							
								
								
									
										1
									
								
								curl
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								curl
									
									
									
									
									
								
							| @ -1 +0,0 @@ | |||||||
| curl -H "Content-Type: application/json" -X GET -d@./sample_request.json https://localhost:8082/baseline --insecure > baseline.sql |  | ||||||
							
								
								
									
										4
									
								
								index.js
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								index.js
									
									
									
									
									
								
							| @ -29,7 +29,7 @@ var Postgres = new pg.Client({ | |||||||
|     port: process.env.port, |     port: process.env.port, | ||||||
|     database: process.env.database, |     database: process.env.database, | ||||||
|     ssl: false, |     ssl: false, | ||||||
|     application_name: "osm_api" |     application_name: "ps_api" | ||||||
| }); | }); | ||||||
| Postgres.connect(); | Postgres.connect(); | ||||||
| 
 | 
 | ||||||
| @ -52,7 +52,7 @@ server.get('/', (req, res) => res.send('pivotscale api is running')) | |||||||
| server.get('/baseline', bodyParser.json(), function(req, res) { | server.get('/baseline', bodyParser.json(), function(req, res) { | ||||||
| 
 | 
 | ||||||
|     var sql = ""; |     var sql = ""; | ||||||
|     var path = './route_sql/baseline.sql'; |     var path = './routes/baseline/baseline.sql'; | ||||||
|     var args = []; |     var args = []; | ||||||
| 
 | 
 | ||||||
|     fs.readFile(path, 'utf8', function(err, data) { |     fs.readFile(path, 'utf8', function(err, data) { | ||||||
|  | |||||||
							
								
								
									
										363
									
								
								routes/baseline/baseline.sql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										363
									
								
								routes/baseline/baseline.sql
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,363 @@ | |||||||
|  | DELETE FROM fc.live WHERE version = 'forecast_name'; | ||||||
|  | WITH | ||||||
|  | baseline AS ( | ||||||
|  | SELECT | ||||||
|  |     o."ddord#" | ||||||
|  |     ,o."dditm#" | ||||||
|  |     ,o."fgbol#" | ||||||
|  |     ,o."fgent#" | ||||||
|  |     ,o."diinv#" | ||||||
|  |     ,o."dilin#" | ||||||
|  |     ,o.quoten | ||||||
|  |     ,o.quotel | ||||||
|  |     ,o.dcodat | ||||||
|  |     ,o.ddqdat | ||||||
|  |     ,o.dcmdat | ||||||
|  |     ,o.fesdat | ||||||
|  |     ,o.dhidat | ||||||
|  |     ,o.fesind | ||||||
|  |     ,o.dhpost | ||||||
|  |     ,o.fspr | ||||||
|  |     ,o.ddqtoi | ||||||
|  |     ,o.ddqtsi | ||||||
|  |     ,o.fgqshp | ||||||
|  |     ,o.diqtsh | ||||||
|  |     ,o.diext | ||||||
|  |     ,o.ditdis | ||||||
|  |     ,o.discj | ||||||
|  |     ,o.dhincr | ||||||
|  |     ,o.plnt | ||||||
|  |     ,o.promo | ||||||
|  |     ,o.return_reas | ||||||
|  |     ,o.terms | ||||||
|  |     ,o.custpo | ||||||
|  |     ,o.remit_to | ||||||
|  |     ,o.bill_class | ||||||
|  |     ,o.bill_cust | ||||||
|  |     ,o.bill_rep | ||||||
|  |     ,o.bill_terr | ||||||
|  |     ,o.ship_class | ||||||
|  |     ,o.ship_cust | ||||||
|  |     ,o.ship_rep | ||||||
|  |     ,o.ship_terr | ||||||
|  |     ,o.dsm | ||||||
|  |     ,o.account | ||||||
|  |     ,o.shipgrp | ||||||
|  |     ,o.geo | ||||||
|  |     ,o.chan | ||||||
|  |     ,o.chansub | ||||||
|  |     ,o.orig_ctry | ||||||
|  |     ,o.orig_prov | ||||||
|  |     ,o.orig_post | ||||||
|  |     ,o.bill_ctry | ||||||
|  |     ,o.bill_prov | ||||||
|  |     ,o.bill_post | ||||||
|  |     ,o.dest_ctry | ||||||
|  |     ,o.dest_prov | ||||||
|  |     ,o.dest_post | ||||||
|  |     ,o.part | ||||||
|  |     ,o.styc | ||||||
|  |     ,o.colc | ||||||
|  |     ,o.colgrp | ||||||
|  |     ,o.coltier | ||||||
|  |     ,o.colstat | ||||||
|  |     ,o.sizc | ||||||
|  |     ,o.pckg | ||||||
|  |     ,o.kit | ||||||
|  |     ,o.brnd | ||||||
|  |     ,o.majg | ||||||
|  |     ,o.ming | ||||||
|  |     ,o.majs | ||||||
|  |     ,o.mins | ||||||
|  |     ,o.gldco | ||||||
|  |     ,o.gldc | ||||||
|  |     ,o.glec | ||||||
|  |     ,o.harm | ||||||
|  |     ,o.clss | ||||||
|  |     ,o.brand | ||||||
|  |     ,o.assc | ||||||
|  |     ,o.ddunit | ||||||
|  |     ,o.unti | ||||||
|  |     ,o.lbs | ||||||
|  |     ,o.plt | ||||||
|  |     ,o.plcd | ||||||
|  |     ,o.fs_line | ||||||
|  |     ,o.r_currency | ||||||
|  |     ,o.r_rate | ||||||
|  |     ,o.c_currency | ||||||
|  |     ,o.c_rate | ||||||
|  |     ,o.fb_qty | ||||||
|  |     ,o.fb_val_loc | ||||||
|  |     ,o.fb_val_loc_dis | ||||||
|  |     ,o.fb_val_loc_qt | ||||||
|  |     ,o.fb_val_loc_pl | ||||||
|  |     ,o.fb_val_loc_tar | ||||||
|  |     ,o.fb_cst_loc | ||||||
|  |     ,o.fb_cst_loc_cur | ||||||
|  |     ,o.fb_cst_loc_fut | ||||||
|  |     ,o.calc_status | ||||||
|  |     ,o.flag | ||||||
|  |     ,o.odate | ||||||
|  |     ,o.oseas | ||||||
|  |     ,o.rdate | ||||||
|  |     ,o.rseas | ||||||
|  |     ,o.sdate | ||||||
|  |     ,o.sseas | ||||||
|  |     ,'forecast_name' "version" | ||||||
|  |     ,'actuals' iter | ||||||
|  | FROM | ||||||
|  |     fc.live o | ||||||
|  | WHERE | ||||||
|  |     ( | ||||||
|  |         --base period orders booked.... | ||||||
|  |         odate BETWEEN 'app_baseline_from_date'::date AND 'app_baseline_to_date'::date | ||||||
|  |         --...or any open orders currently booked before cutoff.... | ||||||
|  |         OR (calc_status IN (app_openstatus_code) and odate <= 'app_openorder_cutoff'::date) | ||||||
|  |         --...or anything that shipped in that period | ||||||
|  |         OR (sdate BETWEEN 'app_baseline_from_date'::date AND 'app_baseline_to_date'::date) | ||||||
|  |     ) | ||||||
|  |     --be sure to pre-exclude unwanted items, like canceled orders, non-gross sales, and short-ships | ||||||
|  | UNION ALL | ||||||
|  | SELECT | ||||||
|  |     o."ddord#" | ||||||
|  |     ,o."dditm#" | ||||||
|  |     ,o."fgbol#" | ||||||
|  |     ,o."fgent#" | ||||||
|  |     ,o."diinv#" | ||||||
|  |     ,o."dilin#" | ||||||
|  |     ,o.quoten | ||||||
|  |     ,o.quotel | ||||||
|  |     ,o.dcodat | ||||||
|  |     ,o.ddqdat | ||||||
|  |     ,o.dcmdat | ||||||
|  |     ,o.fesdat | ||||||
|  |     ,o.dhidat | ||||||
|  |     ,o.fesind | ||||||
|  |     ,o.dhpost | ||||||
|  |     ,o.fspr | ||||||
|  |     ,o.ddqtoi | ||||||
|  |     ,o.ddqtsi | ||||||
|  |     ,o.fgqshp | ||||||
|  |     ,o.diqtsh | ||||||
|  |     ,o.diext | ||||||
|  |     ,o.ditdis | ||||||
|  |     ,o.discj | ||||||
|  |     ,o.dhincr | ||||||
|  |     ,o.plnt | ||||||
|  |     ,o.promo | ||||||
|  |     ,o.return_reas | ||||||
|  |     ,o.terms | ||||||
|  |     ,o.custpo | ||||||
|  |     ,o.remit_to | ||||||
|  |     ,o.bill_class | ||||||
|  |     ,o.bill_cust | ||||||
|  |     ,o.bill_rep | ||||||
|  |     ,o.bill_terr | ||||||
|  |     ,o.ship_class | ||||||
|  |     ,o.ship_cust | ||||||
|  |     ,o.ship_rep | ||||||
|  |     ,o.ship_terr | ||||||
|  |     ,o.dsm | ||||||
|  |     ,o.account | ||||||
|  |     ,o.shipgrp | ||||||
|  |     ,o.geo | ||||||
|  |     ,o.chan | ||||||
|  |     ,o.chansub | ||||||
|  |     ,o.orig_ctry | ||||||
|  |     ,o.orig_prov | ||||||
|  |     ,o.orig_post | ||||||
|  |     ,o.bill_ctry | ||||||
|  |     ,o.bill_prov | ||||||
|  |     ,o.bill_post | ||||||
|  |     ,o.dest_ctry | ||||||
|  |     ,o.dest_prov | ||||||
|  |     ,o.dest_post | ||||||
|  |     ,o.part | ||||||
|  |     ,o.styc | ||||||
|  |     ,o.colc | ||||||
|  |     ,o.colgrp | ||||||
|  |     ,o.coltier | ||||||
|  |     ,o.colstat | ||||||
|  |     ,o.sizc | ||||||
|  |     ,o.pckg | ||||||
|  |     ,o.kit | ||||||
|  |     ,o.brnd | ||||||
|  |     ,o.majg | ||||||
|  |     ,o.ming | ||||||
|  |     ,o.majs | ||||||
|  |     ,o.mins | ||||||
|  |     ,o.gldco | ||||||
|  |     ,o.gldc | ||||||
|  |     ,o.glec | ||||||
|  |     ,o.harm | ||||||
|  |     ,o.clss | ||||||
|  |     ,o.brand | ||||||
|  |     ,o.assc | ||||||
|  |     ,o.ddunit | ||||||
|  |     ,o.unti | ||||||
|  |     ,o.lbs | ||||||
|  |     ,o.plt | ||||||
|  |     ,o.plcd | ||||||
|  |     ,o.fs_line | ||||||
|  |     ,o.r_currency | ||||||
|  |     ,o.r_rate | ||||||
|  |     ,o.c_currency | ||||||
|  |     ,o.c_rate | ||||||
|  |     ,o.fb_qty | ||||||
|  |     ,o.fb_val_loc | ||||||
|  |     ,o.fb_val_loc_dis | ||||||
|  |     ,o.fb_val_loc_qt | ||||||
|  |     ,o.fb_val_loc_pl | ||||||
|  |     ,o.fb_val_loc_tar | ||||||
|  |     ,o.fb_cst_loc | ||||||
|  |     ,o.fb_cst_loc_cur | ||||||
|  |     ,o.fb_cst_loc_fut | ||||||
|  |     ,o.calc_status | ||||||
|  |     ,o.flag | ||||||
|  |     ,o.odate + interval '1 year' AS odate | ||||||
|  |     ,odate.ssyr | ||||||
|  |     ,o.rdate + interval '1 year' AS rdate | ||||||
|  |     ,rdate.ssyr | ||||||
|  |     ,o.sdate + interval '1 year' AS sdate | ||||||
|  |     ,sdate.ssyr | ||||||
|  |     ,'forecast_name' "version" | ||||||
|  |     ,'plug' iter | ||||||
|  | FROM | ||||||
|  |     fc.live o | ||||||
|  | LEFT OUTER JOIN fc.perd rdate ON | ||||||
|  |         (o.rdate + interval '1 year' )::date <@ rdate.drange | ||||||
|  | LEFT OUTER JOIN fc.perd odate ON | ||||||
|  |         (o.odate + interval '1 year' )::date <@ odate.drange | ||||||
|  | LEFT OUTER JOIN fc.perd sdate ON | ||||||
|  |         (o.sdate + interval '1 year' )::date <@ sdate.drange | ||||||
|  | WHERE | ||||||
|  |     odate BETWEEN 'app_plug_fromdate'::date AND 'app_plug_todate'::date | ||||||
|  |     --be sure to pre-exclude unwanted items, like canceled orders, non-gross sales, and short-ships | ||||||
|  | ) | ||||||
|  | ,incr AS ( | ||||||
|  | SELECT | ||||||
|  |     o."ddord#" | ||||||
|  |     ,o."dditm#" | ||||||
|  |     ,o."fgbol#" | ||||||
|  |     ,o."fgent#" | ||||||
|  |     ,o."diinv#" | ||||||
|  |     ,o."dilin#" | ||||||
|  |     ,o.quoten | ||||||
|  |     ,o.quotel | ||||||
|  |     ,o.dcodat | ||||||
|  |     ,o.ddqdat | ||||||
|  |     ,o.dcmdat | ||||||
|  |     ,o.fesdat | ||||||
|  |     ,o.dhidat | ||||||
|  |     ,o.fesind | ||||||
|  |     ,o.dhpost | ||||||
|  |     ,o.fspr | ||||||
|  |     ,o.ddqtoi | ||||||
|  |     ,o.ddqtsi | ||||||
|  |     ,o.fgqshp | ||||||
|  |     ,o.diqtsh | ||||||
|  |     ,o.diext | ||||||
|  |     ,o.ditdis | ||||||
|  |     ,o.discj | ||||||
|  |     ,o.dhincr | ||||||
|  |     ,o.plnt | ||||||
|  |     ,o.promo | ||||||
|  |     ,o.return_reas | ||||||
|  |     ,o.terms | ||||||
|  |     ,o.custpo | ||||||
|  |     ,o.remit_to | ||||||
|  |     ,o.bill_class | ||||||
|  |     ,o.bill_cust | ||||||
|  |     ,o.bill_rep | ||||||
|  |     ,o.bill_terr | ||||||
|  |     ,o.ship_class | ||||||
|  |     ,o.ship_cust | ||||||
|  |     ,o.ship_rep | ||||||
|  |     ,o.ship_terr | ||||||
|  |     ,o.dsm | ||||||
|  |     ,o.account | ||||||
|  |     ,o.shipgrp | ||||||
|  |     ,o.geo | ||||||
|  |     ,o.chan | ||||||
|  |     ,o.chansub | ||||||
|  |     ,o.orig_ctry | ||||||
|  |     ,o.orig_prov | ||||||
|  |     ,o.orig_post | ||||||
|  |     ,o.bill_ctry | ||||||
|  |     ,o.bill_prov | ||||||
|  |     ,o.bill_post | ||||||
|  |     ,o.dest_ctry | ||||||
|  |     ,o.dest_prov | ||||||
|  |     ,o.dest_post | ||||||
|  |     ,o.part | ||||||
|  |     ,o.styc | ||||||
|  |     ,o.colc | ||||||
|  |     ,o.colgrp | ||||||
|  |     ,o.coltier | ||||||
|  |     ,o.colstat | ||||||
|  |     ,o.sizc | ||||||
|  |     ,o.pckg | ||||||
|  |     ,o.kit | ||||||
|  |     ,o.brnd | ||||||
|  |     ,o.majg | ||||||
|  |     ,o.ming | ||||||
|  |     ,o.majs | ||||||
|  |     ,o.mins | ||||||
|  |     ,o.gldco | ||||||
|  |     ,o.gldc | ||||||
|  |     ,o.glec | ||||||
|  |     ,o.harm | ||||||
|  |     ,o.clss | ||||||
|  |     ,o.brand | ||||||
|  |     ,o.assc | ||||||
|  |     ,o.ddunit | ||||||
|  |     ,o.unti | ||||||
|  |     ,o.lbs | ||||||
|  |     ,o.plt | ||||||
|  |     ,o.plcd | ||||||
|  |     ,o.fs_line | ||||||
|  |     ,o.r_currency | ||||||
|  |     ,o.r_rate | ||||||
|  |     ,o.c_currency | ||||||
|  |     ,o.c_rate | ||||||
|  |     ,o.fb_qty | ||||||
|  |     ,o.fb_val_loc | ||||||
|  |     ,o.fb_val_loc_dis | ||||||
|  |     ,o.fb_val_loc_qt | ||||||
|  |     ,o.fb_val_loc_pl | ||||||
|  |     ,o.fb_val_loc_tar | ||||||
|  |     ,o.fb_cst_loc | ||||||
|  |     ,o.fb_cst_loc_cur | ||||||
|  |     ,o.fb_cst_loc_fut | ||||||
|  |     ,o.calc_status | ||||||
|  |     ,o.flag | ||||||
|  |     ,o.odate + interval '1 year' AS odate | ||||||
|  |     ,odate.ssyr | ||||||
|  |     ,o.rdate + interval '1 year' AS rdate | ||||||
|  |     ,rdate.ssyr | ||||||
|  |     ,o.sdate + interval '1 year' AS sdate | ||||||
|  |     ,sdate.ssyr | ||||||
|  |     ,'forecast_name' "version" | ||||||
|  |     ,'baseline' iter | ||||||
|  | FROM | ||||||
|  |     baseline o | ||||||
|  | LEFT OUTER JOIN fc.perd rdate ON | ||||||
|  |         (o.rdate + interval '1 year' )::date <@ rdate.drange | ||||||
|  | LEFT OUTER JOIN fc.perd odate ON | ||||||
|  |         (o.odate + interval '1 year' )::date <@ odate.drange | ||||||
|  | LEFT OUTER JOIN fc.perd sdate ON | ||||||
|  |         (o.sdate + interval '1 year' )::date <@ sdate.drange | ||||||
|  | ) | ||||||
|  | ,ins AS ( | ||||||
|  | INSERT INTO | ||||||
|  |     fc.live | ||||||
|  | SELECT | ||||||
|  |     * | ||||||
|  | FROM | ||||||
|  |     incr i | ||||||
|  | WHERE | ||||||
|  |     i.odate >= 'app_first_forecast_date'::date | ||||||
|  |     OR i.sdate >= 'app_first_forecast_date'::date | ||||||
|  | RETURNING * | ||||||
|  | ) | ||||||
|  | SELECT COUNT(*) num_rows  FROM ins | ||||||
							
								
								
									
										1
									
								
								routes/baseline/curl.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										1
									
								
								routes/baseline/curl.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | curl -H "Content-Type: application/json" -X GET -d@./routes/baseline/req.json https://localhost:8082/baseline --insecure > baseline.sql | ||||||
| @ -1,4 +1,4 @@ | |||||||
| # execure the sql for baseline which builds the sql and inserts into a table | # execure the sql for baseline which builds the sql and inserts into a table | ||||||
| $PGD -f generate_sql/gen_baseline.sql | $PGD -f routes/baseline/gen_baseline.sql | ||||||
| # pull the sql out of the table and write it to route directory | # pull the sql out of the table and write it to route directory | ||||||
| $PGD -c "SELECT t FROM fc.sql WHERE cmd = 'baseline'" -t -A -o route_sql/baseline.sql | $PGD -c "SELECT t FROM fc.sql WHERE cmd = 'baseline'" -t -A -o routes/baseline/baseline.sql | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user