@@ -1,5 +1,7 @@
|
||||
from odoo import models, fields, api
|
||||
from odoo.exceptions import UserError, ValidationError
|
||||
from datetime import date, datetime, time
|
||||
from datetime import timedelta
|
||||
|
||||
|
||||
class MeterPriceWizard(models.TransientModel):
|
||||
@@ -11,9 +13,19 @@ class MeterPriceWizard(models.TransientModel):
|
||||
line_loss = fields.Float(string='线损', default=0.02)
|
||||
|
||||
def confirm(self):
|
||||
year = self.price_date.year
|
||||
month = self.price_date.month
|
||||
start_date = datetime(year, month, 1).date()
|
||||
if month == 12:
|
||||
next_month = 1
|
||||
next_year = year + 1
|
||||
else:
|
||||
next_month = month + 1
|
||||
next_year = year
|
||||
end_date = (datetime(next_year, next_month, 1).date() - timedelta(days=1))
|
||||
valid_contract_lines = self.env['meter.archives.line'].search([
|
||||
('meter_date', '<=', self.price_date),
|
||||
('meter_date', '>=', self.price_date),
|
||||
('meter_date', '>=', start_date),
|
||||
('meter_date', '<=', end_date),
|
||||
])
|
||||
for valid in valid_contract_lines:
|
||||
if valid.yuthon_property_ids:
|
||||
@@ -23,8 +35,8 @@ class MeterPriceWizard(models.TransientModel):
|
||||
('end_date', '>=', self.price_date),
|
||||
], limit=1)
|
||||
if contract_id:
|
||||
if contract_id.ele_price > 0:
|
||||
unit = contract_id.ele_price
|
||||
if contract_id.lease_contract_id.ele_price > 0:
|
||||
unit = contract_id.lease_contract_id.ele_price
|
||||
else:
|
||||
unit = self.price
|
||||
else:
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
from odoo import models, fields, api
|
||||
from odoo.exceptions import UserError, ValidationError
|
||||
from datetime import date, datetime, time
|
||||
from datetime import timedelta
|
||||
|
||||
|
||||
class WaterPriceWizard(models.TransientModel):
|
||||
@@ -11,9 +13,19 @@ class WaterPriceWizard(models.TransientModel):
|
||||
line_loss = fields.Float(string='线损', default=0.05)
|
||||
|
||||
def confirm(self):
|
||||
valid_contract_lines = self.env['meter.archives.line'].search([
|
||||
('meter_date', '<=', self.price_date),
|
||||
('meter_date', '>=', self.price_date),
|
||||
year = self.price_date.year
|
||||
month = self.price_date.month
|
||||
start_date = datetime(year, month, 1).date()
|
||||
if month == 12:
|
||||
next_month = 1
|
||||
next_year = year + 1
|
||||
else:
|
||||
next_month = month + 1
|
||||
next_year = year
|
||||
end_date = (datetime(next_year, next_month, 1).date() - timedelta(days=1))
|
||||
valid_contract_lines = self.env['meter.water.line'].search([
|
||||
('meter_date', '>=', start_date),
|
||||
('meter_date', '<=', end_date),
|
||||
])
|
||||
for valid in valid_contract_lines:
|
||||
if valid.yuthon_property_ids:
|
||||
@@ -23,8 +35,8 @@ class WaterPriceWizard(models.TransientModel):
|
||||
('end_date', '>=', self.price_date),
|
||||
], limit=1)
|
||||
if contract_id:
|
||||
if contract_id.water_price > 0:
|
||||
unit = contract_id.water_price
|
||||
if contract_id.lease_contract_id.water_price > 0:
|
||||
unit = contract_id.lease_contract_id.water_price
|
||||
else:
|
||||
unit = self.price
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user