Add mid price value field

This commit is contained in:
2026-07-13 16:52:53 +02:00
parent ddd88cd840
commit f2fe626d72
8 changed files with 67 additions and 50 deletions

View File

@@ -35,10 +35,11 @@ class PriceValue(
}), 'get_price_index')
price_date = fields.Date("Price date")
price_value = fields.Float("Price value")
open_price = fields.Float("Open price")
low_price = fields.Float("Low price")
high_price = fields.Float("High price")
price_value = fields.Float("Price value")
open_price = fields.Float("Open price")
low_price = fields.Float("Low price")
mid_price = fields.Float("Mid price")
high_price = fields.Float("High price")
def get_price_index(self, name):
if self.price:
@@ -55,9 +56,10 @@ class PriceValueReport(
r_price_desc = fields.Char("Description")
r_price_date = fields.Date("Price date")
r_price_value = fields.Float("Price")
r_open_price = fields.Float("Open price")
r_low_price = fields.Float("Low price")
r_high_price = fields.Float("High price")
r_open_price = fields.Float("Open price")
r_low_price = fields.Float("Low price")
r_mid_price = fields.Float("Mid price")
r_high_price = fields.Float("High price")
@classmethod
def table_query(cls):
@@ -86,10 +88,11 @@ class PriceValueReport(
pp.price_desc.as_('r_price_desc'),
pv.price_date.as_('r_price_date'),
pv.price_value.as_('r_price_value'),
pv.open_price.as_('r_open_price'),
pv.low_price.as_('r_low_price'),
pv.high_price.as_('r_high_price'),
where=wh)
pv.open_price.as_('r_open_price'),
pv.low_price.as_('r_low_price'),
pv.mid_price.as_('r_mid_price'),
pv.high_price.as_('r_high_price'),
where=wh)
return query
@@ -116,9 +119,10 @@ class PriceValueReport2(
r_price_desc = fields.Char("Description")
r_price_date = fields.Date("Price date")
r_price_value = fields.Float("Price")
r_open_price = fields.Float("Open price")
r_low_price = fields.Float("Low price")
r_high_price = fields.Float("High price")
r_open_price = fields.Float("Open price")
r_low_price = fields.Float("Low price")
r_mid_price = fields.Float("Mid price")
r_high_price = fields.Float("High price")
r_naphta_fob_low = fields.Float("Naph F Med l", digits=(1,2), help="Naphta Fob PAAAI00 low")
r_naphta_fob_high = fields.Float("Naph F Med h", digits=(1,2), help="Naphta Fob PAAAI00 high")
r_naphta_fob_mid = fields.Float("Naph F Med m", digits=(1,2), help="Naphta Fob PAAAI00 mid")
@@ -171,9 +175,10 @@ class PriceValueReport2(
Max(pp.price_desc).as_('r_price_desc'),
pv.price_date.as_('r_price_date'),
Max(pv.price_value).as_('r_price_value'),
Max(pv.open_price).as_('r_open_price'),
Max(pv.low_price).as_('r_low_price'),
Max(pv.high_price).as_('r_high_price'),
Max(pv.open_price).as_('r_open_price'),
Max(pv.low_price).as_('r_low_price'),
Max(pv.mid_price).as_('r_mid_price'),
Max(pv.high_price).as_('r_high_price'),
Max(Case((pv.price==15, pv.low_price),else_=0)).as_('r_naphta_fob_low'),
Max(Case((pv.price==15, pv.high_price),else_=0)).as_('r_naphta_fob_high'),
Max(Case((pv.price==15, (pv.high_price-pv.low_price)/2 + pv.low_price),else_=0)).as_('r_naphta_fob_mid'),

View File

@@ -2,8 +2,9 @@
<tree>
<field name="r_price_index"/>
<field name="r_price_desc"/>
<field name="r_price_date"/>
<field name="r_price_value"/>
<field name="r_low_price"/>
<field name="r_high_price"/>
</tree>
<field name="r_price_date"/>
<field name="r_price_value"/>
<field name="r_low_price"/>
<field name="r_mid_price"/>
<field name="r_high_price"/>
</tree>

View File

@@ -8,10 +8,12 @@
<label name="price_value"/>
<field name="price_value"/>
<label name="open_price"/>
<field name="open_price"/>
<label name="low_price"/>
<field name="low_price"/>
<label name="high_price"/>
<field name="high_price"/>
<field name="open_price"/>
<label name="low_price"/>
<field name="low_price"/>
<label name="mid_price"/>
<field name="mid_price"/>
<label name="high_price"/>
<field name="high_price"/>
</group>
</form>

View File

@@ -9,6 +9,7 @@ this repository contains the full copyright notices and license terms. -->
<field name="price_value" fill="1" empty="0"/>
<field name="open_price" fill="1" empty="0"/>
<field name="low_price" fill="1" empty="0"/>
<field name="mid_price" fill="1" empty="0"/>
<field name="high_price" fill="1" empty="0"/>
</y>
</graph>

View File

@@ -2,8 +2,9 @@
<tree>
<field name="price_index"/>
<field name="price_date"/>
<field name="price_value"/>
<field name="open_price"/>
<field name="low_price"/>
<field name="high_price"/>
</tree>
<field name="price_value"/>
<field name="open_price"/>
<field name="low_price"/>
<field name="mid_price"/>
<field name="high_price"/>
</tree>

View File

@@ -2,8 +2,9 @@
<tree editable="1">
<field name="price_index"/>
<field name="price_date"/>
<field name="price_value"/>
<field name="open_price"/>
<field name="low_price"/>
<field name="high_price"/>
</tree>
<field name="price_value"/>
<field name="open_price"/>
<field name="low_price"/>
<field name="mid_price"/>
<field name="high_price"/>
</tree>