[IMP] Improve ospp_slide modules
parent
9969c573e6
commit
7344869e5d
|
@ -27,6 +27,7 @@
|
||||||
'security/security_groups.xml',
|
'security/security_groups.xml',
|
||||||
'security/ir.model.access.csv',
|
'security/ir.model.access.csv',
|
||||||
'data/ir_sequence_data.xml',
|
'data/ir_sequence_data.xml',
|
||||||
|
'data/ir_cron_data.xml',
|
||||||
'views/views.xml',
|
'views/views.xml',
|
||||||
'views/templates.xml',
|
'views/templates.xml',
|
||||||
],
|
],
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo><data noupdate="1">
|
||||||
|
<record forcecreate="True" id="ir_cron_update_slide_channel" model="ir.cron">
|
||||||
|
<field name="name">Update Slide Channel</field>
|
||||||
|
<field name="model_id" ref="website_slides.model_slide_channel"/>
|
||||||
|
<field name="state">code</field>
|
||||||
|
<field name="code">model.update_slide_channel()</field>
|
||||||
|
<field name="active" eval="False"/>
|
||||||
|
<field name="user_id" ref="base.user_root"/>
|
||||||
|
<field name="interval_number">1</field>
|
||||||
|
<field name="interval_type">hours</field>
|
||||||
|
<field name="numbercall">-1</field>
|
||||||
|
<field name="doall" eval="False"/>
|
||||||
|
</record>
|
||||||
|
</data></odoo>
|
|
@ -24,7 +24,29 @@ class SlideChannel(models.Model):
|
||||||
shared_instance_demo_data = fields.Boolean('Shared Instance Demo Data', default=True)
|
shared_instance_demo_data = fields.Boolean('Shared Instance Demo Data', default=True)
|
||||||
excluded_instance_demo_data = fields.Boolean('Excluded Instance Demo Data', default=False)
|
excluded_instance_demo_data = fields.Boolean('Excluded Instance Demo Data', default=False)
|
||||||
|
|
||||||
# @api.depends('slide_partner_ids')
|
@api.model
|
||||||
|
def update_slide_channel(self):
|
||||||
|
channel_obj = self.env['slide.channel'].sudo()
|
||||||
|
instance_obj = self.env['channel.instance'].sudo()
|
||||||
|
|
||||||
|
channel_ids = channel_obj.search([('instance_arrangement', 'not in', ['no_need']), ('instance_base', '!=', False)])
|
||||||
|
for channel_id in channel_ids:
|
||||||
|
channel_id.action_generate_instance()
|
||||||
|
|
||||||
|
self.env.cr.commit()
|
||||||
|
|
||||||
|
instance_ids = instance_obj.search([('instance_created', '!=', True)])
|
||||||
|
for instance_id in instance_ids:
|
||||||
|
instance_id.action_generate_instance()
|
||||||
|
|
||||||
|
self.env.cr.commit()
|
||||||
|
|
||||||
|
instance_ids = instance_obj.search([('instance_created', '=', True), ('is_notified', '!=', True)])
|
||||||
|
for instance_id in instance_ids:
|
||||||
|
instance_id.action_post_instance()
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
def action_generate_instance(self):
|
def action_generate_instance(self):
|
||||||
instance_obj = self.env['channel.instance'].sudo()
|
instance_obj = self.env['channel.instance'].sudo()
|
||||||
partner_obj = self.env['slide.channel.partner'].sudo()
|
partner_obj = self.env['slide.channel.partner'].sudo()
|
||||||
|
|
Loading…
Reference in New Issue