complete first version of main proccess
This commit is contained in:
		
							parent
							
								
									6ff4740d04
								
							
						
					
					
						commit
						f2fc2362a7
					
				
					 61 changed files with 3280 additions and 28 deletions
				
			
		
							
								
								
									
										36
									
								
								contracts/models.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								contracts/models.py
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,36 @@
 | 
			
		|||
from django.db import models
 | 
			
		||||
from django.contrib.auth import get_user_model
 | 
			
		||||
from common.models import NameSlugModel, BaseModel
 | 
			
		||||
from accounts.models import Company
 | 
			
		||||
 | 
			
		||||
User = get_user_model()
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class ContractTemplate(NameSlugModel):
 | 
			
		||||
    body = models.TextField(verbose_name='متن قرارداد')
 | 
			
		||||
    company = models.ForeignKey(Company, on_delete=models.SET_NULL, null=True, blank=True, verbose_name='شرکت')
 | 
			
		||||
 | 
			
		||||
    class Meta:
 | 
			
		||||
        verbose_name = 'قالب قرارداد'
 | 
			
		||||
        verbose_name_plural = 'قالبهای قرارداد'
 | 
			
		||||
 | 
			
		||||
    def __str__(self):
 | 
			
		||||
        return self.name
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class ContractInstance(BaseModel):
 | 
			
		||||
    process_instance = models.ForeignKey('processes.ProcessInstance', on_delete=models.CASCADE, related_name='contracts', verbose_name='نمونه فرآیند')
 | 
			
		||||
    template = models.ForeignKey(ContractTemplate, on_delete=models.SET_NULL, null=True, blank=True, verbose_name='قالب مورد استفاده')
 | 
			
		||||
    rendered_body = models.TextField(verbose_name='متن نهایی قرارداد')
 | 
			
		||||
    approved = models.BooleanField(default=False, verbose_name='تایید شده')
 | 
			
		||||
    approved_at = models.DateTimeField(null=True, blank=True, verbose_name='تاریخ تایید')
 | 
			
		||||
    created_by = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, blank=True, verbose_name='ایجاد کننده')
 | 
			
		||||
 | 
			
		||||
    class Meta:
 | 
			
		||||
        verbose_name = 'قرارداد'
 | 
			
		||||
        verbose_name_plural = 'قراردادها'
 | 
			
		||||
        ordering = ['-created']
 | 
			
		||||
 | 
			
		||||
    def __str__(self):
 | 
			
		||||
        return f"Contract for {self.process_instance}"
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue