query getShiftRoleById( $shiftId: UUID! $roleId: UUID! ) @auth(level: USER) { shiftRole(key: { shiftId: $shiftId, roleId: $roleId }) { id shiftId roleId count assigned startTime endTime hours department uniform breakType totalValue createdAt role { id name costPerHour } shift{ location locationAddress description orderId order{ recurringDays permanentDays notes business{ id businessName } vendor{ id companyName } } } } } query listShiftRolesByShiftId( $shiftId: UUID! $offset: Int $limit: Int ) @auth(level: USER) { shiftRoles( where: { shiftId: { eq: $shiftId } } offset: $offset limit: $limit ) { id shiftId roleId count assigned startTime endTime hours department uniform breakType totalValue createdAt role { id name costPerHour } shift{ location locationAddress description orderId order{ recurringDays permanentDays notes business{ id businessName } vendor{ id companyName } } } } } query listShiftRolesByRoleId( $roleId: UUID! $offset: Int $limit: Int ) @auth(level: USER) { shiftRoles( where: { roleId: { eq: $roleId } } offset: $offset limit: $limit ) { id shiftId roleId count assigned startTime endTime hours department uniform breakType totalValue createdAt role { id name costPerHour } shift{ location locationAddress description orderId order{ recurringDays permanentDays notes business{ id businessName } vendor{ id companyName } } } } } query listShiftRolesByShiftIdAndTimeRange( $shiftId: UUID! $start: Timestamp! $end: Timestamp! $offset: Int $limit: Int ) @auth(level: USER) { shiftRoles( where: { shiftId: { eq: $shiftId } startTime: { ge: $start } endTime: { le: $end } } offset: $offset limit: $limit ) { id shiftId roleId count assigned startTime endTime hours department uniform breakType totalValue createdAt role { id name costPerHour } shift{ location locationAddress description orderId order{ recurringDays permanentDays notes business{ id businessName } vendor{ id companyName } } } } }