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.
		
		
		
		
		
			
		
			
				
					
					
						
							64 lines
						
					
					
						
							2.8 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							64 lines
						
					
					
						
							2.8 KiB
						
					
					
				
								# -*- coding: utf-8 -*-
							 | 
						|
								################################################################################
							 | 
						|
								#
							 | 
						|
								#    Cybrosys Technologies Pvt. Ltd.
							 | 
						|
								#
							 | 
						|
								#    Copyright (C) 2024-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
							 | 
						|
								#    Author: Gayathri V (odoo@cybrosys.com)
							 | 
						|
								#
							 | 
						|
								#    You can modify it under the terms of the GNU AFFERO
							 | 
						|
								#    GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
							 | 
						|
								#
							 | 
						|
								#    This program is distributed in the hope that it will be useful,
							 | 
						|
								#    but WITHOUT ANY WARRANTY; without even the implied warranty of
							 | 
						|
								#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
							 | 
						|
								#    GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details.
							 | 
						|
								#
							 | 
						|
								#    You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
							 | 
						|
								#    (AGPL v3) along with this program.
							 | 
						|
								#    If not, see <http://www.gnu.org/licenses/>.
							 | 
						|
								#
							 | 
						|
								################################################################################
							 | 
						|
								from odoo import api, fields, models
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								class EducationFeeStructureLines(models.Model):
							 | 
						|
								    """Creating model 'education.fee.structure.lines'"""
							 | 
						|
								    _name = 'education.fee.structure.lines'
							 | 
						|
								    _description = 'Education Fee Structure Lines'
							 | 
						|
								
							 | 
						|
								    @api.onchange('fee_type_id')
							 | 
						|
								    def _onchange_fee_type(self):
							 | 
						|
								        """Function to return Fee type ids"""
							 | 
						|
								        return {
							 | 
						|
								            'domain': {
							 | 
						|
								                'fee_type_id': [('category_id', '=',
							 | 
						|
								                                 self.fee_structure_id.category_id.id)]
							 | 
						|
								            }
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								    fee_type_id = fields.Many2one('education.fee.type', string='Fee',
							 | 
						|
								                                  required=True,
							 | 
						|
								                                  help='Fee Type of fee structure')
							 | 
						|
								    fee_structure_id = fields.Many2one('education.fee.structure',
							 | 
						|
								                                       string='Fee Structure',
							 | 
						|
								                                       ondelete='cascade', index=True,
							 | 
						|
								                                       help='Education fee structure of lines')
							 | 
						|
								    fee_amount = fields.Float('Amount', required=True,
							 | 
						|
								                              related='fee_type_id.lst_price',
							 | 
						|
								                              help='Corresponding fee amount.')
							 | 
						|
								    payment_type = fields.Selection([
							 | 
						|
								        ('onetime', 'One Time'),
							 | 
						|
								        ('permonth', 'Per Month'),
							 | 
						|
								        ('peryear', 'Per Year'),
							 | 
						|
								        ('sixmonth', '6 Months'),
							 | 
						|
								        ('threemonth', '3 Months')
							 | 
						|
								    ], string='Payment Type', related="fee_type_id.payment_type",
							 | 
						|
								        help='Payment type describe how much a payment effective Like,'
							 | 
						|
								             ' bus fee per month is 30 dollar, sports fee per year'
							 | 
						|
								             ' is 40 dollar, etc')
							 | 
						|
								    interval = fields.Char(related="fee_type_id.interval", string="Interval",
							 | 
						|
								                           help='Specify the interval.')
							 | 
						|
								    fee_description = fields.Text('Description',
							 | 
						|
								                                  related='fee_type_id.description_sale',
							 | 
						|
								                                  help='Give the fee description.')
							 | 
						|
								
							 |