[IMP] Improve ospp_slide modules
							parent
							
								
									9969c573e6
								
							
						
					
					
						commit
						7344869e5d
					
				|  | @ -27,6 +27,7 @@ | |||
|         'security/security_groups.xml', | ||||
|         'security/ir.model.access.csv', | ||||
|         'data/ir_sequence_data.xml', | ||||
|         'data/ir_cron_data.xml', | ||||
|         'views/views.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) | ||||
|     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): | ||||
|         instance_obj = self.env['channel.instance'].sudo() | ||||
|         partner_obj = self.env['slide.channel.partner'].sudo() | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Oliver Yuan
						Oliver Yuan