postgresql – Converting quarterly reports to monthly values ​​with Postgres 10

I'm trying to turn the quarterly calendar data into monthly reports and I have a hard time understanding what is actually matching the quarters to the appropriate month. What I want is an end-of-quarter report value to be applied to the following 3 months. For example, December 31st would apply to the months of January, February and March.

I've made a violin here that describes the data model. It looks pretty much like:

    org_id | report_date | value
-------- + ------------- + -------
| 1 | 2017-12-31 | 111
| 1 | 2018-03-31 | 222
| 1 | 2018-06-30 | 333
| 1 | 2018-09-30 | 444
| 1 | 2018-12-31 | 555
| 1 | 2019-03-31 | 666

The expected release would be something like:

    org_id | report_date | value
-------- + ------------- + -------
| 1 | 2018-01-01 | 111
| 1 | 2018-02-01 | 111
| 1 | 2018-03-01 | 111
| 1 | 2018-04-01 | 222
| 1 | 2018-05-01 | 222
| 1 | 2018-06-01 | 222
| 1 | 2018-07-01 | 333
...

I started the query (indicated in the violin) and I can generate a monthly series and the associated quarter, but I have to "shift" this quarter so that months fit on the month. following 3 months of a reported quarter. Not the months that are in the quarter reported.

Any help or advice to direct me directly to the law would be greatly appreciated.