현미경 대여
AI 에이전트와 함께 구축
현미경 대여 서비스 백엔드

현미경 대여 서비스 백엔드 템플릿
현미경 예약, 배율 기록, 이미지 소프트웨어 및 청소 기록

생산 준비가 완료된 현미경 대여 백엔드 Back4app에서 사무 직원, 소유자 및 고객을 위해. 현미경 자산, RentalBooking 창, MagnificationLog 항목, ImagingSoftware 프로필 및 CleaningRecord 인계를 ER 다이어그램, 데이터 사전, JSON 스키마, API 샌드박스 및 AI 에이전트 프롬프트로 추적하세요.

현미경 임대 요점

이 템플릿은 직원들이 장비, 로그 및 인계사항을 덜 수동으로 관리할 수 있도록 사용자, 현미경, 임대 예약, 배율 로그, 이미지 소프트웨어 및 청소 기록이 포함된 현미경 임대 백엔드를 제공합니다.

  1. 예약 창 제어예약 코드를 포함한 RentalBooking 모델링, 현미경, 고객, 시작 시간, 종료 시간 및 상태를 사용하여 데스크 직원이 시간 창에 따라 장비를 예약할 수 있습니다.
  2. 렌즈 배율 로그각 MagnificationLog 항목을 현미경, 예약, 렌즈 배율, 샘플 유형, 기록자 및 기록 시간과 함께 기록합니다.
  3. 이미지 소프트웨어 추적이름, 버전, 라이선스 키, 플랫폼, 현미경 및 활성 상태를 사용하여 ImagingSoftware를 저장하여 연결된 워크스테이션 프로필이 장비와 연결된 상태를 유지합니다.

현미경 대여 서비스 템플릿이란 무엇인가요?

위치별로 현미경 대여를 확장하는 것은 재고 모델을 표준화하는 것을 의미하지만, 중앙에서 볼 수 있는 지역 예외를 허용하는 것입니다. 팀은 아침 스탠드업에서 이를 가장 먼저 느낍니다. Back4app에서는 현미경, 이미징 소프트웨어, 대여 예약, 확대 기록 및 청소 기록이 견적에서 반납까지 전 과정의 현미경 대여 루프를 지원하며, 운영자가 실제로 작업하는 방식에 맞는 API를 제공합니다. 스키마는 사용자(사용자 이름, 이메일, 비밀번호, 역할, 표시 이름), 현미경(자산 태그, 브랜드, 모델, 렌즈 확대, 상태, 소유자), 이미징 소프트웨어(이름, 버전, 라이선스 키, 플랫폼, 현미경, 활성 여부), 대여 예약(예약 코드, 현미경, 고객, 시작일, 종료일, 상태, 메모), 확대 기록(현미경, 예약, 렌즈 확대, 샘플 유형, 기록자, 기록일), 청소 기록(현미경, 예약, 청소자, 청소일, 청소 방법, 상태)과 인증 및 대여 워크플로우 규칙이 내장되어 있습니다. 선호하는 프론트엔드를 연결하고 더 빠르게 배송하세요.

최고의 사용처:

현미경 대여 애플리케이션장비 예약 플랫폼자산 소유자 대시보드랩 및 스튜디오 체크아웃 도구MVP 출시렌탈 운영을 위해 BaaS를 선택하는 팀

이 현미경 렌탈 백엔드는 어떻게 구성되어 있나요

좋은 현미경 렌탈 습관은 규율처럼 보입니다: 매번 동일한 필드, 동일한 생애 주기 언어, 동일한 감사 추적이 있습니다.

이 개요를 사용하여 특정 클라이언트 프레임워크에 엔지니어링 시간을 할당하기 전에 현미경, ImagingSoftware 및 RentalBooking이 어떻게 함께 맞물리는지 확인하세요.

현미경 대여 기능

이 허브의 모든 기술 카드에는 User, Microscope, RentalBooking, MagnificationLog, ImagingSoftware, 및 CleaningRecord와 함께 동일한 현미경 대여 백엔드 스키마가 사용됩니다.

현미경 재고 관리

현미경은 자산 태그, 브랜드, 모델, 렌즈 확대, 상태 및 소유자를 저장합니다.

렌탈 예약 일정

RentalBooking은 현미경, 고객, 시작 시간, 종료 시간, 상태 및 노트를 연결합니다.

확대 세션 로그

MagnificationLog는 렌즈 확대, 예약 및 표본 유형을 기록합니다.

이미징 소프트웨어 추적

ImagingSoftware는 이름, 버전, 라이센스 키, 플랫폼, 현미경, 및 활성 상태를 저장합니다.

청소 및 전환 기록

CleaningRecord는 cleanedAt, cleanedBy, cleaningMethod, 및 상태를 저장합니다.

Back4app로 현미경 렌탈 백엔드를 구축하는 이유는 무엇인가요?

Back4app는 현미경, RentalBooking, MagnificationLog, ImagingSoftware 및 CleaningRecord 원시형을 제공하므로 팀이 백엔드 배관 대신 렌탈 및 재고 정확성에 집중할 수 있습니다.

  • 예약 및 자산 추적: RentalBooking과 현미경은 예약 코드, 자산 태그, 시작 시간, 종료 시간 및 상태를 데스크 직원이 한 곳에서 관리할 수 있도록 합니다.
  • 확대 및 소프트웨어 기록: MagnificationLog와 ImagingSoftware는 대여당 사용된 정확한 렌즈 확대, 샘플 종류, 버전 및 플랫폼을 문서화하는 데 도움을 줍니다.
  • 실시간 대여 운영: Live Queries을 사용하여 RentalBooking 및 CleaningRecord 변경 사항을 처리하면서 REST와 GraphQL을 모든 클라이언트에게 유지하세요.

모든 플랫폼에서 하나의 백엔드 계약으로 빠르게 현미경 대여 워크플로우를 구축하고 조정하세요.

현미경 대여 혜택

여러분이 예약, 로그, 소프트웨어 점검 및 청소 단계를 덜 수동 조정으로 운영하는 데 도움을 주는 현미경 대여 백엔드입니다.

더 빠른 예약 수집

RentalBooking을 사용하여 microscope, customer, startAt, endAt 및 bookingCode로 예약을 스프레드시트에서 추적하는 대신 사용하세요.

확대 기록 지우기

각 RentalBooking과 연결된 MagnificationLog 항목을 유지하여 기술자가 세션별로 lensMagnification 및 sampleType을 검토할 수 있도록 합니다.

소프트웨어 인식 전달

Microscope에 ImagingSoftware 기록을 첨부하여 직원들이 체크 아웃 전 이름, 버전, 플랫폼 및 활성 상태를 확인할 수 있도록 합니다.

신뢰할 수 있는 청소 워크플로우

CleaningRecord의 cleaningMethod, cleanedAt 및 status를 저장하여 현미경이 다음 대여를 위해 준비되었는지 보여줍니다.

자산 가시성

장비 가용성의 실시간 보기가 필요한 소유자를 위해 Microscope의 assetTag, 브랜드, 모델, lensMagnification 및 상태를 추적합니다.

AI 지원 설정

구조화된 프롬프트로 빠르게 백엔드 스캐폴딩 및 통합 가이드를 생성하세요.

현미경 대여 앱을 출시할 준비가 되셨나요?

Back4app AI 에이전트가 귀하의 현미경 대여 백엔드를 스캐폴딩하고 RentalBooking, MagnificationLog, ImagingSoftware 및 CleaningRecord 흐름을 하나의 프롬프트에서 생성하도록 하세요.

시작은 무료 — 월 50개의 AI 에이전트 프롬프트, 신용카드 필요 없음

현미경 대여 기술 스택

이 현미경 대여 백엔드 템플릿에 포함된 모든 것입니다.

프론트엔드
13개 이상의 기술
백엔드
Back4app
데이터베이스
MongoDB
인증
내장 인증 + 세션
API
REST와 GraphQL
실시간
Live Queries

현미경 렌탈 ER 맵

현미경 렌탈 백엔드 스키마의 엔티티 관계 모델.

다이어그램 소스 보기
Mermaid
erDiagram
    User ||--o{ Microscope : "owner"
    User ||--o{ RentalBooking : "customer"
    User ||--o{ MagnificationLog : "recordedBy"
    User ||--o{ CleaningRecord : "cleanedBy"
    Microscope ||--o{ ImagingSoftware : "microscope"
    Microscope ||--o{ RentalBooking : "microscope"
    Microscope ||--o{ MagnificationLog : "microscope"
    Microscope ||--o{ CleaningRecord : "microscope"
    RentalBooking ||--o{ MagnificationLog : "booking"
    RentalBooking ||--o{ CleaningRecord : "booking"

    User {
        String objectId PK
        String username
        String email
        String password
        String role
        String displayName
        Date createdAt
        Date updatedAt
    }

    Microscope {
        String objectId PK
        String assetTag
        String brand
        String model
        Number lensMagnification
        String condition
        String ownerId FK
        Date createdAt
        Date updatedAt
    }

    ImagingSoftware {
        String objectId PK
        String name
        String version
        String licenseKey
        String platform
        String microscopeId FK
        Boolean isActive
        Date createdAt
        Date updatedAt
    }

    RentalBooking {
        String objectId PK
        String bookingCode
        String microscopeId FK
        String customerId FK
        Date startAt
        Date endAt
        String status
        String notes
        Date createdAt
        Date updatedAt
    }

    MagnificationLog {
        String objectId PK
        String microscopeId FK
        String bookingId FK
        Number lensMagnification
        String sampleType
        String recordedById FK
        Date recordedAt
        Date createdAt
        Date updatedAt
    }

    CleaningRecord {
        String objectId PK
        String microscopeId FK
        String bookingId FK
        String cleanedById FK
        Date cleanedAt
        String cleaningMethod
        String status
        Date createdAt
        Date updatedAt
    }

렌탈 통합 흐름

로그인, 현미경 조회, 예약 생성, 배율 기록, 소프트웨어 검사 및 청소 기록에 대한 전형적인 실행 흐름입니다.

다이어그램 소스 보기
Mermaid
sequenceDiagram
  participant User
  participant App as Microscope Rental Service App
  participant Back4app as Back4app Cloud

  User->>App: Sign in to the rental desk
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open microscope availability
  App->>Back4app: GET /classes/Microscope?include=owner
  Back4app-->>App: Microscope list with lensMagnification and condition

  User->>App: Reserve a microscope slot
  App->>Back4app: POST /classes/RentalBooking
  Back4app-->>App: bookingCode and confirmed status

  User->>App: Record lens magnification and cleaning
  App->>Back4app: POST /classes/MagnificationLog
  App->>Back4app: POST /classes/CleaningRecord
  Back4app-->>App: Saved log entries

  App->>Back4app: Watch booking and cleaning updates
  Back4app-->>App: LiveQuery events for RentalBooking and CleaningRecord

현장 안내서

현미경 대여 스키마의 모든 클래스에 대한 전체 현장 수준 참조입니다.

현장유형설명필수
objectIdStringAuto-generated unique identifier자동
usernameStringAccount login name
emailStringEmail address for notifications and receipts
passwordStringHashed password (write-only)
roleStringUser role such as deskStaff, owner, or customer
displayNameStringVisible name for rental desk and booking screens
createdAtDateAuto-generated creation timestamp자동
updatedAtDateAuto-generated last-update timestamp자동

8 필드에서 User

접근 권한

ACL 및 CLP 전략이 사용자, 현미경, 예약, 로그 및 청소 기록을 어떻게 보호하는지.

역할 인식 대여 제어

대여 데스크 직원은 RentalBooking 기록을 생성하거나 업데이트할 수 있지만, 고객은 자신의 예약만 볼 수 있습니다.

자산 소유 보호 장치

인증된 직원이나 자산 소유자만 현미경, 이미징 소프트웨어 또는 청소 상태를 변경할 수 있습니다.

범위 읽기 접근

RentalBooking, MagnificationLog 및 CleaningRecord 읽기를 관련 고객, 직원 또는 자산 소유자로 제한합니다.

JSON Schema

Back4app에 복사할 수 있는 원시 JSON 스키마 정의 또는 구현 참조로 사용합니다.

JSON
{
  "classes": [
    {
      "className": "User",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "role": {
          "type": "String",
          "required": true
        },
        "displayName": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Microscope",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "assetTag": {
          "type": "String",
          "required": true
        },
        "brand": {
          "type": "String",
          "required": true
        },
        "model": {
          "type": "String",
          "required": true
        },
        "lensMagnification": {
          "type": "Number",
          "required": true
        },
        "condition": {
          "type": "String",
          "required": true
        },
        "owner": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "ImagingSoftware",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "name": {
          "type": "String",
          "required": true
        },
        "version": {
          "type": "String",
          "required": true
        },
        "licenseKey": {
          "type": "String",
          "required": false
        },
        "platform": {
          "type": "String",
          "required": true
        },
        "microscope": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Microscope"
        },
        "isActive": {
          "type": "Boolean",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "RentalBooking",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "bookingCode": {
          "type": "String",
          "required": true
        },
        "microscope": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Microscope"
        },
        "customer": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "startAt": {
          "type": "Date",
          "required": true
        },
        "endAt": {
          "type": "Date",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "MagnificationLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "microscope": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Microscope"
        },
        "booking": {
          "type": "Pointer",
          "required": true,
          "targetClass": "RentalBooking"
        },
        "lensMagnification": {
          "type": "Number",
          "required": true
        },
        "sampleType": {
          "type": "String",
          "required": false
        },
        "recordedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "recordedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "CleaningRecord",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "microscope": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Microscope"
        },
        "booking": {
          "type": "Pointer",
          "required": false,
          "targetClass": "RentalBooking"
        },
        "cleanedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "cleanedAt": {
          "type": "Date",
          "required": true
        },
        "cleaningMethod": {
          "type": "String",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

AI 에이전트 현미경 빌드

Back4app AI 에이전트를 사용하여 이 템플릿에서 실제 현미경 대여 앱을 생성합니다. 프런트엔드, 백엔드, 인증, 예약, 확대, 소프트웨어 및 청소 흐름을 포함합니다.

Back4app AI 에이전트
빌드할 준비가 완료됨
Back4app에서 이 정확한 스키마와 동작으로 안전한 현미경 대여 서비스 백엔드를 생성하십시오.

스키마:
1. 사용자 (내장된 Back4app 사용): 사용자 이름, 이메일, 비밀번호, 역할, 표시 이름; objectId, createdAt, updatedAt (시스템).
2. 현미경: 자산 태그 (문자열, 필수), 브랜드 (문자열, 필수), 모델 (문자열, 필수), 렌즈 배율 (숫자, 필수), 상태 (문자열, 필수), 소유자 (사용자 포인터, 필수); objectId, createdAt, updatedAt (시스템).
3. 이미징 소프트웨어: 이름 (문자열, 필수), 버전 (문자열, 필수), 라이센스 키 (문자열, 선택 사항), 플랫폼 (문자열, 필수), 현미경 (현미경 포인터, 필수), 활성화 여부 (부울, 필수); objectId, createdAt, updatedAt (시스템).
4. 대여 예약: 예약 코드 (문자열, 필수), 현미경 (현미경 포인터, 필수), 고객 (사용자 포인터, 필수), 시작 시간 (날짜, 필수), 종료 시간 (날짜, 필수), 상태 (문자열, 필수), 메모 (문자열, 선택 사항); objectId, createdAt, updatedAt (시스템).
5. 배율 기록: 현미경 (현미경 포인터, 필수), 예약 (렌탈 예약 포인터, 필수), 렌즈 배율 (숫자, 필수), 샘플 유형 (문자열, 선택 사항), 기록자 (사용자 포인터, 필수), 기록 시간 (날짜, 필수); objectId, createdAt, updatedAt (시스템).
6. 청소 기록: 현미경 (현미경 포인터, 필수), 예약 (렌탈 예약 포인터, 선택 사항), 청소한 사람 (사용자 포인터, 필수), 청소 시간 (날짜, 필수), 청소 방법 (문자열, 필수), 상태 (문자열, 필수); objectId, createdAt, updatedAt (시스템).

보안:
- 데스크 직원은 RentalBooking 항목을 생성하고 확인할 수 있습니다.
- 고객은 자신의 RentalBooking 행과 기록자가 자신의 사용자와 일치하는 MagnificationLog 항목을 볼 수 있습니다.
- 자산 소유자만 현미경 및 이미징 소프트웨어 레코드를 업데이트할 수 있습니다.
- CleaningRecord 생성은 체크인/체크아웃 후 데스크 직원 또는 소유자로 제한되어야 합니다.

동작:
- 소유자가 포함된 현미경 목록과 렌즈 배율 필터를 사용합니다.
- 예약 코드를 추적하여 대여 예약을 생성합니다.
- 예약 중에 배율 판독값을 기록합니다.
- 각 반납 후 청소 기록을 저장합니다.
- 각 현미경에 할당된 이미징 소프트웨어를 추적합니다.

전달:
- Back4app 앱과 스키마, CLP, ACL 및 현미경 재고, 예약 관리, 배율 기록, 이미징 소프트웨어 할당 및 청소 기록을 위한 대시보드 준비된 프론트엔드.

아래 버튼을 눌러 이 템플릿 프롬프트가 미리 채워진 상태로 에이전트를 엽니다.

이것은 기술 접미사가 없는 기본 프롬프트입니다. 생성된 프론트엔드 스택을 이후에 조정할 수 있습니다.

몇 분 안에 배포한 달에 50개의 무료 프롬프트신용 카드 필요 없음

API 샌드박스

GraphQL 엔드포인트 및 현미경 대여 스키마에 대해 REST를 시도하십시오. 응답은 모의 데이터를 사용하며 Back4app 계정이 필요하지 않습니다.

플레이그라운드 로드 중…

이 템플릿과 같은 스키마를 사용합니다.

스택 선택

각 카드를 확장하여 Microscope, ImagingSoftware 및 RentalBooking을 선택한 스택과 통합하는 방법을 확인하세요.

Flutter 현미경 대여 백엔드

React 현미경 대여 백엔드

React 네이티브 현미경 대여 백엔드

Next.js 현미경 대여 백엔드

JavaScript 현미경 대여 백엔드

Android 현미경 대여 백엔드

iOS 현미경 대여 백엔드

Vue 현미경 대여 백엔드

Angular 현미경 대여 백엔드

GraphQL 현미경 대여 백엔드

REST API 현미경 대여 백엔드

PHP 현미경 대여 백엔드

.NET 현미경 대여 백엔드

모든 기술로 얻는 것

모든 스택은 동일한 현미경 대여 백엔드 스키마 및 API 계약을 사용합니다.

통합된 현미경 운영 데이터

하나의 일관된 스키마로 Microscope, RentalBooking 및 CleaningRecord 데이터를 관리하세요.

대여 예약 제어

상태 추적이 명확한 startAt 및 endAt으로 현미경을 예약하세요.

배율 및 소프트웨어 기록

각 현미경에 연결된 MagnificationLog 및 ImagingSoftware 세부정보를 저장합니다.

역할 기반 임대 워크플로우

직원, 소유자 및 고객에 대한 접근 수준 정의

현미경 앱을 위한 REST/GraphQL API

유연한 API를 사용하여 웹, 모바일 및 데스크탑 클라이언트를 통합합니다.

임대를 위한 확장 가능한 백엔드

핵심 스키마를 다시 작성하지 않고 유지 보수 노트, 액세서리 또는 서비스 알림을 추가합니다.

현미경 대여 기술 비교

모든 지원되는 기술에서 설정 속도, SDK 스타일 및 AI 지원을 비교하세요.

프레임워크설정 시간현미경 대여 혜택SDK 유형AI 지원
약 5분모바일 및 웹에서 현미경 예약을 위한 단일 코드베이스.타입된 SDK전체
5분 미만대여 데스크 직원을 위한 빠른 웹 대시보드.타입된 SDK전체
~3–7분예약 및 청소 검사용 크로스 플랫폼 모바일 앱입니다.타입된 SDK전체
빠른 설정(5분)현미경 재고 및 예약을 위한 서버 렌더링 웹 앱입니다.타입된 SDK전체
~3–5분현미경 대여를 위한 경량 웹 통합입니다.타입된 SDK전체
약 5분데스크 직원 및 기술자를 위한 네이티브 Android 앱입니다.타이핑된 SDK전체
5분 이내렌탈 고객 및 직원용 네이티브 iOS 앱입니다.타이핑된 SDK전체
약 3-7분현미경 가용성을 위한 React 웹 UI입니다.타이핑된 SDK전체
신속한(5분) 설치자산 소유자를 위한 엔터프라이즈 웹 앱입니다.타이핑된 SDK전체
2분 이내예약, 확대 및 데이터를 정리하기 위한 유연한 GraphQL API입니다.GraphQL API전체
빠른(2분) 설정현미경 대여 워크플로를 위한 REST API 통합.REST API전체
약 3분대여 데스크 도구를 위한 서버 측 PHP 백엔드.REST API전체
~3–7 분.NET 재고 및 예약 운영을 위한 백엔드입니다.타입된 SDK전체

설정 시간은 프로젝트 시작부터 첫 번째 현미경 또는 예약 쿼리를 이 템플릿 스키마를 사용하여 수행하는 데 예상되는 기간을 반영합니다.

현미경 대여 질문

이 템플릿을 사용하여 현미경 대여 백엔드를 구축하는 것에 대한 일반적인 질문들.

피크 수요 시 어떤 운영 실수가 현미경 대여 브랜드에 가장 빨리 피해를 주나요?
어떤 현미경 대여 이벤트가 고객 알림을 자동으로 트리거해야 하나요?
이 현미경 대여 백엔드는 다중 사이트 재고 및 중앙 집중식 가격 규칙으로 확장할 수 있나요?
Flutter로 현미경과 예약을 어떻게 로드하나요?
Next.js에서 예약 생성을 어떻게 관리하나요?
React Native가 오프라인에서 캐시 청소 기록을 저장할 수 있나요?
예약 창이 겹치지 않도록 하려면 어떻게 해야 하나요?
Android에서 현미경 상태를 표시하는 가장 좋은 방법은 무엇인가요?

전 세계 개발자들이 신뢰합니다.

Back4app 템플릿을 사용하여 현미경 대여 제품을 더 빠르게 배송하는 팀에 합류하세요.

G2 Users Love Us Badge

현미경 대여 앱을 만들 준비가 되셨나요?

몇 분 안에 현미경 대여 프로젝트를 시작하세요. 신용 카드 필요 없음.

기술 선택