반응형
React17, Typescript 환경에서 Monorepo 관리 도구를 사용하여 vedi 프로젝트 생성하고 ancho 하위 프로젝트를 생성하고 하위에 어플리케이션은 ancho-app 폴더가 있고 ancho-biz 는 tsx 파일 또는 ts 가 있습니다.
프로젝트를 생성하고 샘플을 만들어 실행하는 방법 알려주세요.
1. 모노레포 초기 설정
# 프로젝트 루트 생성
mkdir vedi && cd vedi
yarn init -y
# Lerna 및 Workspaces 설정
npx lerna init
yarn add -W lerna
오류 발생하여 아래와 같이 조치
npm uninstall -g nx
npm cache clean --force
lerna 설치
npm install -g lerna
lerna init
cd packages/ancho-app
yarn add --dev webpack webpack-cli webpack-dev-server html-webpack-plugin ts-loader
nvm-setup.exe 설치 하고 최신 버젼으로 변경
nvm install latest
https://github.com/coreybutler/nvm-windows/releases
Releases · coreybutler/nvm-windows
A node.js version management utility for Windows. Ironically written in Go. - coreybutler/nvm-windows
github.com
PS C:\myfront\vedi> npm uninstall -g lerna
PS C:\myfront\vedi> npm install --save-dev lerna
Value & Versatile & Validated Electronic Data Interface
데이터 통합을 통해 가치를 높이고 다양한 검증된 데이터를 송수신 인터페이스 서비스를 제공하는 시스템
npx create-react-app . --template typescript
TMS (Tenant Management System) 분석 및 설계 문서
1. 시스템 개요
TMS는 다중 테넌트 환경에서 사용자, 메시지, 메뉴 및 권한을 관리하는 시스템입니다. 이 시스템은 각 테넌트가 독립적으로 운영될 수 있도록 하며, 사용자 관리 및 권한 부여를 통해 보안을 강화합니다.
2. 요구사항 분석
2.1 기능적 요구사항
사용자 관리
사용자 등록, 수정, 삭제 기능
사용자 역할 및 권한 설정
테넌트 관리
테넌트 생성, 수정, 삭제 기능
각 테넌트에 대한 정보 관리
메시지 관리
메시지 전송 및 수신 기능
메시지 기록 조회 기능
메뉴 관리
메뉴 항목 추가, 수정, 삭제 기능
사용자별 메뉴 접근 권한 설정
2.2 비기능적 요구사항
보안: 사용자 인증 및 권한 부여를 통한 데이터 보호
성능: 다수의 테넌트와 사용자를 지원할 수 있는 확장성
가용성: 시스템의 높은 가용성 및 장애 복구 기능
3. 시스템 설계
3.1 아키텍처
클라이언트-서버 아키텍처: 웹 기반 클라이언트와 RESTful API 서버로 구성
데이터베이스: 각 테넌트의 데이터를 분리하여 저장할 수 있는 다중 테넌트 데이터베이스 설계
3.2 데이터베이스 설계
테이블 구조
Users: 사용자 정보 (user_id, username, password, role, tenant_id)
Tenants: 테넌트 정보 (tenant_id, tenant_name, created_at)
Messages: 메시지 정보 (message_id, sender_id, receiver_id, content, timestamp)
Menus: 메뉴 정보 (menu_id, menu_name, tenant_id, permissions)
3.3 사용자 인터페이스
대시보드: 각 테넌트의 사용자 및 메시지 현황을 보여주는 대시보드
사용자 관리 페이지: 사용자 추가, 수정, 삭제 기능을 제공하는 페이지
메시지 관리 페이지: 메시지 전송 및 기록 조회 기능을 제공하는 페이지
메뉴 관리 페이지: 메뉴 항목을 관리하고 권한을 설정하는 페이지
4. 보안 설계
인증: JWT(JSON Web Token)를 사용한 사용자 인증
권한 관리: 역할 기반 접근 제어(RBAC)를 통해 사용자 권한 관리
5. 테스트 계획
단위 테스트: 각 모듈별 기능 테스트
통합 테스트: 모듈 간의 상호작용 테스트
성능 테스트: 다중 사용자 및 테넌트 환경에서의 성능 테스트
vedi-project/
├── anchor/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── vedi/
│ │ │ │ └── anchor/
│ │ │ │ ├── controller/
│ │ │ │ ├── service/
│ │ │ │ ├── repository/
│ │ │ │ └── model/
│ │ │ ├── resources/
│ │ │ │ ├── mapper/
│ │ │ │ └── application.properties
│ │ ├── test/
│ │ └── java/
│ │ └── com/
│ │ └── vedi/
│ │ └── anchor/
│ ├── pom.xml
├── edi/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── vedi/
│ │ │ │ └── edi/
│ │ │ │ ├── controller/
│ │ │ │ ├── service/
│ │ │ │ ├── repository/
│ │ │ │ └── model/
│ │ │ ├── resources/
│ │ │ │ ├── mapper/
│ │ │ │ └── application.properties
│ │ ├── test/
│ │ └── java/
│ │ └── com/
│ │ └── vedi/
│ │ └── edi/
│ ├── pom.xml
├── wms/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── vedi/
│ │ │ │ └── wms/
│ │ │ │ ├── controller/
│ │ │ │ ├── service/
│ │ │ │ ├── repository/
│ │ │ │ └── model/
│ │ │ ├── resources/
│ │ │ │ ├── mapper/
│ │ │ │ └── application.properties
│ │ ├── test/
│ │ └── java/
│ │ └── com/
│ │ └── vedi/
│ │ └── wms/
│ ├── pom.xml
├── crm/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── vedi/
│ │ │ │ └── crm/
│ │ │ │ ├── controller/
│ │ │ │ ├── service/
│ │ │ │ ├── repository/
│ │ │ │ └── model/
│ │ │ ├── resources/
│ │ │ │ ├── mapper/
│ │ │ │ └── application.properties
│ │ ├── test/
│ │ └── java/
│ │ └── com/
│ │ └── vedi/
│ │ └── crm/
│ ├── pom.xml
├── bop/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── vedi/
│ │ │ │ └── bop/
│ │ │ │ ├── controller/
│ │ │ │ ├── service/
│ │ │ │ ├── repository/
│ │ │ │ └── model/
│ │ │ ├── resources/
│ │ │ │ ├── mapper/
│ │ │ │ └── application.properties
│ │ ├── test/
│ │ └── java/
│ │ └── com/
│ │ └── vedi/
│ │ └── bop/
│ ├── pom.xml
├── sign/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── vedi/
│ │ │ │ └── sign/
│ │ │ │ ├── controller/
│ │ │ │ ├── service/
│ │ │ │ ├── repository/
│ │ │ │ └── model/
│ │ │ ├── resources/
│ │ │ │ ├── mapper/
│ │ │ │ └── application.properties
│ │ ├── test/
│ │ └── java/
│ │ └── com/
│ │ └── vedi/
│ │ └── sign/
│ ├── pom.xml
├── shared/
│ ├── components/
│ ├── core/
│ ├── lib/
│ ├── mid/
│ ├── ui/
├── pom.xml
React 17, TypeScript, java, Spring, ibatis, mariadb 환경에서 vedi 프로젝트에 하위 시스템으로 anchor, edi, wms, crm, bop, sign 시스템이 있습니다.
vedi 프로젝트에 shared 폴더는 하위 시스템에서 모두 사용 할 수 있습니다.
shared 폴더는 components, core, lib, mid, ui 폴더로 구성되어 있습니다.
anchor 시스템은 Tenant 관리, Tenant 사용자 관리, 시스템 관리, Tenant 사용자 권한 관리, 시스템 메뉴 관리, 시스템 코드 관리, 시스템 메시지 관리를 합니다.
edi는 Electronic Data Interchange 시스템으로 대시보드, 문서관리, 문서 전송, 설정 및 관리 화면이 있습니다.
wms는 창고관리 시스템으로 대시보드 화면, 입고 예정 목록 조회, 도착 처리, 입고 처리, 출고 관리화면, 재고 관리 화면, 창고위치 관리, 품목 설정 관리가 있습니다.
crm은 고객관리, 영업기회관리, 견적관리, 주문관리 있습니다.
bop는 salesforce 주문 수신, EDI 주문 수신, 자사 제품 및 관련 정보 매핑하여 자사 ERP 전송하는 시스템 입니다.
sign는 electronic approval system으로 결제선 관리, 결재 요청, 결재 승인를 처리 합니다.
프로젝트 개발 소스를 생성해 주세요.
React 17, TypeScript 기반으로 vedi 프로젝트 생성하려고 합니다.
vedi는 Electronic Data Interchange 시스템 입니다.
대시보드, 문서관리, 문서 전송, 설정 및 관리 화면 예제를 생성해주세요.
반응형
'개발자정보' 카테고리의 다른 글
AI 중 로컬 PC에서 다운 받아 별도 학습하여 별도의 서비스를 만들 수 있는 AI (0) | 2025.04.26 |
---|---|
DeepSeek의 AI 모델을 활용해 슈퍼에이전트와 같은 지능형 에이전트 플랫폼을 구축하기 (1) | 2025.04.24 |
무료 AI (0) | 2025.04.20 |
오픈 오피스 (1) | 2025.04.19 |
Java 소스와 SQL Map를 분석하여 매핑 관계 자동 추출 (1) | 2025.04.16 |