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)
 | |
| 
 |