init
This commit is contained in:
116
services/sql/prod_inj.js
Normal file
116
services/sql/prod_inj.js
Normal file
@@ -0,0 +1,116 @@
|
||||
export default {
|
||||
max_date(){
|
||||
return `SELECT MAX(date(year||'-01-01', (month - 1)||' month')) as date FROM production_injections`
|
||||
},
|
||||
|
||||
devobjs(){
|
||||
return `SELECT distinct(object) as devobj FROM production_injections`
|
||||
},
|
||||
|
||||
totals(devobj){
|
||||
return `SELECT
|
||||
wells.well, wells.whx, wells.why
|
||||
,SUM(production_injections.woptm) as wopt
|
||||
,SUM(production_injections.wwptm) as wwpt
|
||||
,SUM(production_injections.wsgptv) as wgpt
|
||||
,SUM(production_injections.wwitv) as wwit
|
||||
,SUM(production_injections.days) as days
|
||||
,SUM(production_injections.wwptm)+SUM(production_injections.woptm) as wlpt
|
||||
,SUM(production_injections.wwptm)/(SUM(production_injections.wwptm)+SUM(production_injections.woptm)) as wlf
|
||||
FROM
|
||||
wells, production_injections
|
||||
WHERE
|
||||
wells.well=production_injections.well
|
||||
AND production_injections.object='${devobj}'
|
||||
GROUP BY
|
||||
wells.well
|
||||
ORDER BY
|
||||
wlpt DESC, wwit DESC`
|
||||
},
|
||||
|
||||
rates(devobj, date){
|
||||
date = new Date(date)
|
||||
const year_month = date.getFullYear()*100 + date.getMonth()
|
||||
return `SELECT
|
||||
wells.well, wells.whx, wells.why
|
||||
,SUM(production_injections.woptm)/SUM(production_injections.days) as wopr
|
||||
,SUM(production_injections.wwptm)/SUM(production_injections.days) as wwpr
|
||||
,SUM(production_injections.wsgptv)/SUM(production_injections.days) as wgpr
|
||||
,SUM(production_injections.wwitv)/SUM(production_injections.days) as wwir
|
||||
,SUM(production_injections.days) as days
|
||||
,(SUM(production_injections.wwptm)+SUM(production_injections.woptm)) / SUM(production_injections.days) as wlpr
|
||||
,SUM(production_injections.wwptm)/(SUM(production_injections.wwptm)+SUM(production_injections.woptm)) as wlf
|
||||
FROM
|
||||
wells, production_injections
|
||||
WHERE
|
||||
wells.well=production_injections.well
|
||||
AND production_injections.object='${devobj}'
|
||||
AND (year*100+month)=${year_month}
|
||||
GROUP BY
|
||||
wells.well`
|
||||
},
|
||||
|
||||
|
||||
production_injection(field, devobj, date){
|
||||
const f_date = date ? `AND year*1000+month=${date.getFullYear()*1000+date.getMonth()}` : ''
|
||||
console.log(f_date)
|
||||
|
||||
return `SELECT
|
||||
wells.well, wells.whx, wells.why
|
||||
,SUM(production_injections.woptm) as wopt
|
||||
,SUM(production_injections.wwptm) as wwpt
|
||||
,SUM(production_injections.wsgptv) as wgpt
|
||||
,SUM(production_injections.wwitv) as wwit
|
||||
,SUM(production_injections.days) as days
|
||||
,SUM(production_injections.wwptm)+SUM(production_injections.woptm) as wlpt
|
||||
,SUM(production_injections.wwptm)/(SUM(production_injections.wwptm)+SUM(production_injections.woptm)) as wlf
|
||||
FROM
|
||||
wells, production_injections
|
||||
WHERE
|
||||
AND wells.well=production_injections.well
|
||||
AND production_injections.object='${devobj}'
|
||||
AND (year*1000+month)=${max_year_month}
|
||||
GROUP BY
|
||||
wells.well`
|
||||
},
|
||||
|
||||
production_total(field, devobj){
|
||||
return `SELECT
|
||||
wells.well, wells.whx, wells.why
|
||||
,SUM(production_injections.woptm) as wopt
|
||||
,SUM(production_injections.wwptm) as wwpt
|
||||
,SUM(production_injections.wsgptv) as wgpt
|
||||
,SUM(production_injections.wwitv) as wwit
|
||||
,SUM(production_injections.wwptm)+SUM(production_injections.woptm) as wlpt
|
||||
,SUM(production_injections.wwptm)/(SUM(production_injections.wwptm)+SUM(production_injections.woptm)) as wlf
|
||||
FROM
|
||||
wells, production_injections
|
||||
WHERE
|
||||
wells.well=production_injections.well
|
||||
AND object='${devobj}'
|
||||
GROUP BY
|
||||
wells.well`
|
||||
},
|
||||
|
||||
injection_total(){
|
||||
const query_all = `SELECT
|
||||
wells.well, wells.whx, wells.why
|
||||
,SUM(production_injections.woptm) as wopt
|
||||
,SUM(production_injections.wwptm) as wwpt
|
||||
,SUM(production_injections.wsgptv) as wgpt
|
||||
,SUM(production_injections.wwitv) as wwit
|
||||
,SUM(production_injections.wwptm)+SUM(production_injections.woptm) as wlpt
|
||||
,SUM(production_injections.wwptm)/(SUM(production_injections.wwptm)+SUM(production_injections.woptm)) as wlf
|
||||
FROM
|
||||
wells, production_injections
|
||||
WHERE
|
||||
wells.well=production_injections.well
|
||||
AND object='${devobj}'
|
||||
GROUP BY
|
||||
wells.well
|
||||
HAVING
|
||||
wwit>0
|
||||
|
||||
`
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user