67 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
from typing import Optional
 | 
						|
 | 
						|
from schemas.base import BaseSchema, OkMessageSchema
 | 
						|
from schemas.billing import GroupBillRequestSchema
 | 
						|
 | 
						|
 | 
						|
# region Entities
 | 
						|
 | 
						|
class DealGroupSchema(BaseSchema):
 | 
						|
    id: int
 | 
						|
    name: Optional[str] = None
 | 
						|
    lexorank: str
 | 
						|
    bill_request: Optional[GroupBillRequestSchema] = None
 | 
						|
 | 
						|
 | 
						|
# endregion
 | 
						|
 | 
						|
# region Requests
 | 
						|
 | 
						|
class DealGroupUpdateRequest(BaseSchema):
 | 
						|
    data: DealGroupSchema
 | 
						|
 | 
						|
 | 
						|
class DealCreateGroupRequest(BaseSchema):
 | 
						|
    dragging_deal_id: int
 | 
						|
    hovered_deal_id: int
 | 
						|
 | 
						|
 | 
						|
class DealGroupChangeStatusRequest(BaseSchema):
 | 
						|
    group_id: int
 | 
						|
    new_status: int
 | 
						|
 | 
						|
 | 
						|
class DealAddToGroupRequest(BaseSchema):
 | 
						|
    deal_id: int
 | 
						|
    group_id: int
 | 
						|
 | 
						|
 | 
						|
class DealRemoveFromGroupRequest(BaseSchema):
 | 
						|
    deal_id: int
 | 
						|
 | 
						|
 | 
						|
# endregion
 | 
						|
 | 
						|
# region Responses
 | 
						|
 | 
						|
class DealCreateGroupResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class DealGroupUpdateResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class DealGroupChangeStatusResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class DealAddToGroupResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class DealRemoveFromGroupResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
# endregion
 |