添加功能
This commit is contained in:
@@ -59,6 +59,8 @@
|
||||
'wizard/evaluation_plan_wizard_views.xml',
|
||||
'wizard/property_water_wizard_views.xml',
|
||||
'wizard/receivable_log_wizard_views.xml',
|
||||
'wizard/water_price_wizard.xml',
|
||||
'wizard/meter_price_wizard.xml',
|
||||
'wizard/property_statements_wizard_views.xml',
|
||||
'views/menuitem.xml',
|
||||
],
|
||||
|
||||
@@ -19,11 +19,13 @@ class PropertyMeterArchives(models.Model):
|
||||
meter_type = fields.Selection([('electric', '电表'), ('water', '水表')], string='仪表类型')
|
||||
other = fields.Char(string='其他')
|
||||
meter_date = fields.Date(string='抄表年月')
|
||||
last_dosage = fields.Float(string='上次读数')
|
||||
last_dosage = fields.Float(string='上次用量')
|
||||
last_read = fields.Float(string='上次读数')
|
||||
last_meter = fields.Date(string='上次抄表日期')
|
||||
current_meter = fields.Float(string='本次读数', tracking=True)
|
||||
current_meter = fields.Float(string='本次用量', tracking=True)
|
||||
current_read = fields.Float(string='本次读数', tracking=True)
|
||||
ratio = fields.Float(string='倍率')
|
||||
unit = fields.Float(string='单价')
|
||||
unit = fields.Float(string='当月单价')
|
||||
archives_state = fields.Selection([('stop', '停用'), ('use', '正常'), ('rent', '出租')], string='状态', compute='_compute_archives_state', store=True, default='use')
|
||||
dosage = fields.Float(string='用量')
|
||||
is_push = fields.Boolean(string='已推送')
|
||||
@@ -131,6 +133,20 @@ class PropertyMeterArchives(models.Model):
|
||||
record.last_dosage += record.current_meter
|
||||
record.current_meter = 0
|
||||
|
||||
def meter_price_wizard(self):
|
||||
meter_ids = self.env["property.meter.archives"].browse(
|
||||
self._context.get('active_ids', self._context.get('active_id')))
|
||||
return {
|
||||
'name': '电表价格调整',
|
||||
'type': 'ir.actions.act_window',
|
||||
'res_model': 'meter.price.wizard',
|
||||
'view_mode': 'form',
|
||||
'target': 'new',
|
||||
"context": {
|
||||
"default_meter_ids": meter_ids.ids,
|
||||
}
|
||||
}
|
||||
|
||||
class PropertyElectricReading(models.Model):
|
||||
_name = 'property.electric.reading'
|
||||
current_meter = fields.Float(string='本次用量', tracking=True)
|
||||
|
||||
@@ -18,10 +18,12 @@ class PropertyMeterWater(models.Model):
|
||||
meter_type = fields.Selection([('electric', '电表'), ('water', '水表')], string='仪表类型')
|
||||
other = fields.Char(string='其他')
|
||||
meter_date = fields.Date(string='抄表年月')
|
||||
last_dosage = fields.Float(string='上次读数')
|
||||
last_dosage = fields.Float(string='上次用量')
|
||||
last_read = fields.Float(string='上次读数')
|
||||
last_meter = fields.Date(string='上次抄表日期')
|
||||
unit = fields.Float(string='单价')
|
||||
current_meter = fields.Float(string='本次读数', tracking=True)
|
||||
unit = fields.Float(string='当月单价')
|
||||
current_meter = fields.Float(string='本次用量', tracking=True)
|
||||
current_read = fields.Float(string='本次读数', tracking=True)
|
||||
ratio = fields.Float(string='倍率')
|
||||
dosage = fields.Float(string='用量')
|
||||
is_push = fields.Boolean(string='已推送')
|
||||
@@ -123,6 +125,20 @@ class PropertyMeterWater(models.Model):
|
||||
record.last_dosage += record.current_meter
|
||||
record.current_meter = 0
|
||||
|
||||
def water_price_wizard(self):
|
||||
water_ids = self.env["property.meter.water"].browse(
|
||||
self._context.get('active_ids', self._context.get('active_id')))
|
||||
return {
|
||||
"type": "ir.actions.act_window",
|
||||
"name": "修改水表单价弹窗",
|
||||
"res_model": "property.water.wizard",
|
||||
"view_mode": "form",
|
||||
"target": "new",
|
||||
"context": {
|
||||
"default_water_ids": water_ids.ids,
|
||||
}
|
||||
}
|
||||
|
||||
class PropertyWaterReading(models.Model):
|
||||
_name = 'property.water.reading'
|
||||
current_meter = fields.Float(string='本次用量', tracking=True)
|
||||
@@ -87,4 +87,7 @@ access_evaluation_company,evaluation_company,model_evaluation_company,base.group
|
||||
access_evaluation_plan_wizard,evaluation_plan_wizard,model_evaluation_plan_wizard,base.group_user,1,1,1,1
|
||||
access_receivable_log_wizard, receivable.log.wizard,model_receivable_log_wizard,base.group_user,1,1,1,1
|
||||
access_amount_way,amount_way,model_amount_way,base.group_user,1,1,1,1
|
||||
access_property_summary_report, property_summary_report,model_property_summary_report,base.group_user,1,1,1,1
|
||||
access_property_summary_report, property_summary_report,model_property_summary_report,base.group_user,1,1,1,1
|
||||
|
||||
access_meter_price_wizard, meter_price_wizard,model_meter_price_wizard,base.group_user,1,1,1,1
|
||||
access_water_price_wizard, water_price_wizard,model_water_price_wizard,base.group_user,1,1,1,1
|
||||
|
@@ -16,7 +16,9 @@
|
||||
<!-- <field name="meter_date" />-->
|
||||
<field name="last_meter" />
|
||||
<field name="last_dosage"/>
|
||||
<field name="last_read"/>
|
||||
<field name="current_meter"/>
|
||||
<field name="current_read"/>
|
||||
<field name="unit_number"/>
|
||||
<field name="gauge_magnification"/>
|
||||
<field name="last_reading_time"/>
|
||||
@@ -36,6 +38,9 @@
|
||||
<field name="model">property.meter.archives</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="电表抄表" create="False" editable="bottom">
|
||||
<header>
|
||||
<button class="oe_highlight" name="meter_price_wizard" string="单价修改" type="object"/>
|
||||
</header>
|
||||
<field name="name" readonly="1"/>
|
||||
<field name="yuthon_property_id" string="地址" readonly="1"/>
|
||||
<field name="lessee_id" options="{'no_create': True}" readonly="1"/>
|
||||
@@ -69,7 +74,7 @@
|
||||
(0, 0, {'view_mode': 'tree', 'view_id': ref('yuthon_property.view_property_meter_archives_tree')})]"/>
|
||||
</record>
|
||||
<record id="action_property_meter_archives1" model="ir.actions.act_window">
|
||||
<field name="name">电表抄表</field>
|
||||
<field name="name">电表任务</field>
|
||||
<field name="res_model">property.meter.archives</field>
|
||||
<field name="view_mode">tree,search</field>
|
||||
<field name="domain">[('is_push', '=', True)]</field>
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
<!-- <field name="meter_date" />-->
|
||||
<field name="last_meter" />
|
||||
<field name="last_dosage"/>
|
||||
<field name="last_read"/>
|
||||
<field name="current_meter"/>
|
||||
<field name="current_read"/>
|
||||
<field name="unit_number"/>
|
||||
<field name="gauge_magnification"/>
|
||||
<field name="last_reading_time"/>
|
||||
@@ -38,6 +40,9 @@
|
||||
<field name="model">property.meter.water</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="水表抄表" create="False" editable="bottom">
|
||||
<header>
|
||||
<button class="oe_highlight" name="water_price_wizard" string="单价修改" type="object"/>
|
||||
</header>
|
||||
<field name="name" readonly="1"/>
|
||||
<field name="yuthon_property_id" string="地址" readonly="1"/>
|
||||
<field name="lessee_id" options="{'no_create': True}" readonly="1"/>
|
||||
@@ -70,7 +75,7 @@
|
||||
(0, 0, {'view_mode': 'tree', 'view_id': ref('yuthon_property.view_property_meter_water_tree')})]"/>
|
||||
</record>
|
||||
<record id="action_property_meter_water1" model="ir.actions.act_window">
|
||||
<field name="name">水表抄表</field>
|
||||
<field name="name">水表任务</field>
|
||||
<field name="res_model">property.meter.water</field>
|
||||
<field name="view_mode">tree,search</field>
|
||||
<field name="domain">[('is_push', '=', True)]</field>
|
||||
|
||||
@@ -5,3 +5,5 @@ from . import property_water_wizard
|
||||
from . import property_statements_wizard
|
||||
from . import evaluation_plan_wizard
|
||||
from . import receivable_log_wizard
|
||||
from . import meter_price_wizard
|
||||
from . import water_price_wizard
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
from odoo import models, fields, api
|
||||
from odoo.exceptions import UserError, ValidationError
|
||||
|
||||
|
||||
class MeterPriceWizard(models.TransientModel):
|
||||
_name = 'meter.price.wizard'
|
||||
_description = '电表修改单价弹窗'
|
||||
|
||||
meter_ids = fields.Many2many('property.meter.archives', string='关联电表')
|
||||
price = fields.Float(string='修改单价')
|
||||
|
||||
def confirm(self):
|
||||
for meter in self.meter_ids:
|
||||
meter.unit = self.price
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<odoo>
|
||||
<record id="wizard_meter_price_form" model="ir.ui.view">
|
||||
<field name="name">meter.price.wizard.form</field>
|
||||
<field name="model">meter.price.wizard</field>
|
||||
<field name="arch" type="xml">
|
||||
<form sting="电表修改单价弹窗">
|
||||
<group>
|
||||
<field name="meter_ids" widget="many2many_tags" invisible="1"/>
|
||||
<field name="price"/>
|
||||
</group>
|
||||
<footer>
|
||||
<button name="confirm" string="确定" type="object" class="oe_highlight"/>
|
||||
<button string="取消" class="oe_link" special="cancel"/>
|
||||
</footer>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
from odoo import models, fields, api
|
||||
from odoo.exceptions import UserError, ValidationError
|
||||
|
||||
|
||||
class WaterPriceWizard(models.TransientModel):
|
||||
_name = 'water.price.wizard'
|
||||
_description = '水表修改单价弹窗'
|
||||
|
||||
water_ids = fields.Many2many('property.meter.water', string='关联电表')
|
||||
price = fields.Float(string='修改单价')
|
||||
|
||||
def confirm(self):
|
||||
for water in self.water_ids:
|
||||
water.unit = self.price
|
||||
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<odoo>
|
||||
<record id="wizard_water_price_form" model="ir.ui.view">
|
||||
<field name="name">water.price.wizard.form</field>
|
||||
<field name="model">water.price.wizard</field>
|
||||
<field name="arch" type="xml">
|
||||
<form sting="水表修改单价弹窗">
|
||||
<group>
|
||||
<field name="water_ids" widget="many2many_tags" invisible="1"/>
|
||||
<field name="price"/>
|
||||
</group>
|
||||
<footer>
|
||||
<button name="confirm" string="确定" type="object" class="oe_highlight"/>
|
||||
<button string="取消" class="oe_link" special="cancel"/>
|
||||
</footer>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
||||
|
||||
@@ -153,6 +153,8 @@ class PropertyLeaseContract(models.Model):
|
||||
is_electricity = fields.Boolean(string="是否有电费", compute='_compute_lease_ids')
|
||||
is_mange = fields.Boolean(string="是否有管理费")
|
||||
miscellaneous = fields.Text(string="其他约定")
|
||||
water_price = fields.Float(string="水费单价")
|
||||
ele_price = fields.Float(string="电费单价")
|
||||
number = fields.Integer(string="次数", default=0)
|
||||
total_area = fields.Float(string="总面积", digits=(16, 4))
|
||||
not_received = fields.Float(string="未收", compute="_compute_not_received", store=True)
|
||||
|
||||
@@ -242,6 +242,8 @@
|
||||
</group>
|
||||
<group>
|
||||
<field name="miscellaneous"/>
|
||||
<field name="water_price"/>
|
||||
<field name="ele_price"/>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="租金明细" invisible="state in ['协办', '分管领导', '总经理', '二部协办']">
|
||||
@@ -660,6 +662,8 @@
|
||||
</group>
|
||||
<group>
|
||||
<field name="miscellaneous"/>
|
||||
<field name="water_price"/>
|
||||
<field name="ele_price"/>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="租金明细">
|
||||
|
||||
Reference in New Issue
Block a user