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 CardGroupSchema(BaseSchema):
 | 
						|
    id: int
 | 
						|
    name: Optional[str] = None
 | 
						|
    lexorank: str
 | 
						|
    bill_request: Optional[GroupBillRequestSchema] = None
 | 
						|
 | 
						|
 | 
						|
# endregion
 | 
						|
 | 
						|
# region Requests
 | 
						|
 | 
						|
class CardGroupUpdateRequest(BaseSchema):
 | 
						|
    data: CardGroupSchema
 | 
						|
 | 
						|
 | 
						|
class CreateCardGroupRequest(BaseSchema):
 | 
						|
    dragging_card_id: int
 | 
						|
    hovered_card_id: int
 | 
						|
 | 
						|
 | 
						|
class CardGroupChangeStatusRequest(BaseSchema):
 | 
						|
    group_id: int
 | 
						|
    new_status: int
 | 
						|
 | 
						|
 | 
						|
class CardAddToGroupRequest(BaseSchema):
 | 
						|
    card_id: int
 | 
						|
    group_id: int
 | 
						|
 | 
						|
 | 
						|
class CardRemoveFromGroupRequest(BaseSchema):
 | 
						|
    card_id: int
 | 
						|
 | 
						|
 | 
						|
# endregion
 | 
						|
 | 
						|
# region Responses
 | 
						|
 | 
						|
class CardCreateGroupResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class CardGroupUpdateResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class CardGroupChangeStatusResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class CardAddToGroupResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
class CardRemoveFromGroupResponse(OkMessageSchema):
 | 
						|
    pass
 | 
						|
 | 
						|
# endregion
 |