You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							35 lines
						
					
					
						
							1.5 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							35 lines
						
					
					
						
							1.5 KiB
						
					
					
				
								from odoo import api, fields, models
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								class ResConfigSettings(models.TransientModel):
							 | 
						|
								    _inherit = 'res.config.settings'
							 | 
						|
								
							 | 
						|
								    generate_payslip = fields.Boolean(help="Automatic generation of payslip batches"
							 | 
						|
								                                           " and payslips using cron job (Monthly)")
							 | 
						|
								
							 | 
						|
								    option = fields.Selection([
							 | 
						|
								        ('first', 'Month First'),
							 | 
						|
								        ('specific', 'Specific date'),
							 | 
						|
								        ('end', 'Month End'),
							 | 
						|
								    ], string='Option', default='first', help='Option to select the date to generate payslips')
							 | 
						|
								
							 | 
						|
								    generate_day = fields.Integer(string="Day", default=1,
							 | 
						|
								                                  help="payslip generated day in a month")
							 | 
						|
								
							 | 
						|
								    @api.model
							 | 
						|
								    def get_values(self):
							 | 
						|
								        """get values from the fields"""
							 | 
						|
								        res = super(ResConfigSettings, self).get_values()
							 | 
						|
								        res.update(
							 | 
						|
								            generate_payslip=self.env['ir.config_parameter'].sudo().get_param('generate_payslip'),
							 | 
						|
								            generate_day=int(self.env['ir.config_parameter'].sudo().get_param('generate_day') or 1),
							 | 
						|
								            option=self.env['ir.config_parameter'].sudo().get_param('option') or 'first'
							 | 
						|
								        )
							 | 
						|
								        return res
							 | 
						|
								
							 | 
						|
								    def set_values(self):
							 | 
						|
								        """Set values in the fields"""
							 | 
						|
								        super(ResConfigSettings, self).set_values()
							 | 
						|
								        self.env['ir.config_parameter'].sudo().set_param('generate_payslip', self.generate_payslip)
							 | 
						|
								        self.env['ir.config_parameter'].sudo().set_param('generate_day', int(self.generate_day))
							 | 
						|
								        self.env['ir.config_parameter'].sudo().set_param("option", self.option)
							 | 
						|
								
							 |