Tighten KamoCRMAgeReqUpdateRunner per review
- Restore Javadoc paragraph explaining @Order(10) rationale. - Test now references the UPDATE_SQL constant directly instead of duplicating the SQL string, so ...
정직 마케팅 - 실제 플랫폼 기능에 대한 정렬 페이지
실제 KamoCRM 제품 기능에 대한 마케팅 페이지의 전체 리뷰. 오늘 건축하지 않은 기능에 대한 제거 된 직물 청구, 및 재조합 산업별 및 통합별 제작 가능 새로운 기능 요청 시스템을 통해 기능. KamoCRM은 실제로 제공 (지금 정확하게 반영) : - customizable 파이...
APIService를 통해 대신 k8s DNS를 통해 직접 청구
Next.js 서버 측 프록시는 이제 BillingService를 호출 *************** 직접 건너뛰기 APIService를 통한 불필요한 hop. 사용 BILLING SERVICE URL env var k8s 내부 DNS를 기본으로 합니다.
Remove translate config from application.yml — belongs in k8s/configmap.yaml
Remove redundant translation table SQL — Hibernate ddl-auto handles them
SettingsSignersTab에서 범위/assocType 제거, Doc로 이름을 변경 Description, Active Member Signer 추가
엠에디터 플러그 인 참조:Rename TemplateName
MemberType 필드를 Member entity discriminator 컬럼에 추가 user-info API 응답 및 useUserInfo Hook. TemplateName 이름 TemplateSettingsStore의 docDescription는 일반 문서와 일치합니다. 용어를 ...
SecurityService에서 ConversionService/DocsService로 모든 이미징 API 경로 마이그레이션
지금 변환 경로를 업로드 CONVERSION SERVICE URL을 통해 직접 호출: - POST /api/imaging/upload → /api/conversion/imaging/upload - POST /api/imaging/templates/upload → *********** ...
ImagingController 및 Bean/imaging 제거 — ConversionService 및 DocsService로 이동
Upload endpoints now live 에 ConversionService 에 /api/conversion/imaging/*. 모든 관리 및 다운로드 엔드포인트 지금 DocsService에서 /api/docs/imaging/*.
Delegate thumbnail generation to ConversionService, remove PDFBox dependency
ThumbnailGenerationJob now POSTs the converted PDF to ConversionService **************** unzips the response, and stores each thumb_p{n}.png in MinIO. PDFBox re...
Delegate thumbnail 세대를 변환 서비스, PDFBox 의존성을 제거
generateAndStoreThumbnails 이제 변환 PDF 변환 서비스 *************** 응답을 압축, 각 상점 thumb p{n}.png in MinIO, 페이지 WS 진행 상황을 게시합니다. PDFBox 제거.
구독 계획 ID 배열을 위한 JSON 파싱 workaround 제거
Backend 이제 JSON 문자열 대신 적절한 배열을 반환합니다. try/parse/catch fallback 논리는 더 이상 add-on, 뭉치에서 필요로 하지 않습니다, and Promotion 그리드 셀 렌더링.
Use List<String> instead of manual JSON strings for promotion plan/cycle IDs
Update KamoCRMPricingLoader to use List.of() for applicablePlanIds and applicableBillingCycles, matching the shared library's migration from JSON strings to ent...
엔터프라이즈 기반 @ManyToMany 관계로 JSON 필드를 마이그레이션
Jsonb 문자열 열을 대체 (compatiblePlanIds, includeInPlanIds, 적용 가능한PlanIds, 적당한 JPA @ManyToMany가 테이블과 @ElementCollection에 참여한 적용 가능한BillingCycles). serializing JSON 대신...
Redesign 웹 세미나 설정에서 하위 페이지 탐색을 기반으로
팝업 대화 상자를 대체하고 2단계로 별도의 accordion 섹션 inline 항법 교류: - 레벨 1: 클릭-to-navigate를 가진 깨끗한 웹 세미나 유형 테이블 - Level 2 : 탭 인터페이스 (Details, 선물, 알림, 가용성 슬롯) 모든 형태는 인라인입니다 — 더 m...
회원 레벨 지원 페이지의 별도 지원 설정 전용 설정 페이지
- /support 페이지에서 설정 탭을 제거하고, 티켓 및 분석만 유지 - Analytics에 하위 태그 추가 : 개요 및 상태 및 응답 시간 (설정에서 이동) - Topics, 분석, 계획된 지원 탭을 가진 /settings/features/support 구축 - Update Set...
계정 엔드포인트는 직접 연락처 필드를 사용하며, 요구되는 사용자 없음
POST /customers는 지금 firstName, lastName, 이메일, 전화, 주소를 직접 저장합니다 계정으로 PUT /customers/{uid} 모든 직접 필드를 업데이트합니다. 표시 이름, 이메일, 전화 해상도는 사용자 fallback과 직접 필드를 우선화합니다. 계정...
TeamMemberManager의 별도 계정 관리자 /account 페이지
3 페이지 수준 탭: 클라이언트 & 고객, 회원, 팀 구성원. - 탭 0: 새로운 AccountManager 구성 요소 — 독립, fetches 실제 계정 accountApi, ag-grid 테이블, 검색, 클릭 /account/view/{uid} - 탭 1/2: 기존 TeamMembe...
계정을 사용하려면 고객 엔드포인트를 업데이트하십시오 (Long uid), 주소 엔드포인트를 제거
고객/그룹 @PathVariable은 UUID에서 Account entity에 맞게 변경됩니다. Address endpoints 제거 - 주소는 계정의 1 차 회원 (Member entity)에서 제공됩니다.
계정 기반 고객 모델로 RetailCustomer 교체
Account.java는 이미 커머스 고객 기업이지만 너무 최소한이었습니다. RetailCustomer는 이 개념을 복제합니다. 이 커밋: - 상업 분야의 계정 강화 : 회사, 메모, acceptsMarketing, taxExempt, 총주문, 총통화, 통화, ExternalId/Pr...
사이트 전반에 걸쳐 브랜드 이름 지정 — Kamo → KamoCRM / KamoCRM 주요사업.
법적 페이지 (terms, privacy, GDPR, footer저작권) 지금 사용 "KamoCRM Inc." 법인 법인. 제품/브랜드 참조 마케팅 복사, 메타데이터, FAQ, 블로그, 가격, 페이지 자막은 이제 "KamoCRM"을 사용합니다. 캐주얼 UI 컨텍스트 (chat 위젯, K...
CommerceMarketApi에서 commerceApi의 모든 파이프라인 구성 요소
삭제 된 대신 commerceApi에서 직접 가져올 10 파일 업데이트 시장 정보 호환성 shim 및 죽은 CommerceMarketManager 제거 구성 요소 (1117 라인, 더 이상 수입).
Deterministic 배치 엔진을 가진 HexHead 배치 체계를 씁니다
버그 충돌 방지 시스템 교체 (spiralSearch, resolveCollisions, flyToHomeRow, 단 하나 deterministic 썰물 () 기능을 가진 선창/그룹 RAF 반복. 도구 창 뒤에 나타나는 hexheads 수정 (z:100→250), 각 다른 overlap...
Strip SchemaCleanupRunner to only post-Hibernate fixups
Hibernate ddl-auto: update handles all table/column creation from JPA entities. Removed all redundant CREATE TABLE/ADD COLUMN statements that duplicated what Hi...
Split mailboxes tab into sub-tabs for primary, aliases, shared
Primary Mailboxes, Email Aliases, and Shared Mailboxes are now each under their own sub-tab within the Mailboxes settings page, matching the existing sub-tab pa...
Remove notes code, moved to KBService
Notes management (controller, service, encryption) has been relocated to KBService where it better aligns with knowledge and content management responsibilities...
Update internal entity ID types from number to string for UUID migration
Updates TypeScript types, hooks, and components to use string IDs for entities converted to UUID on the backend. User-facing entity IDs (User, Organization, Mem...
Update commerce product and market ID references from Long to UUID
Update version ID references from Long to UUID
Article IDs remain Long. Version IDs now use UUID.
Update KB media and version ID references from Long to UUID
Article IDs (KbArticle) remain Long. Version, media, pin, and review IDs now use UUID for improved CockroachDB write performance.
Update AI entity ID references from Long to UUID
Updates all controllers, services, and WebSocket handler to use UUID for AI entity IDs (providers, models, sessions, messages, folders, policies, MCP configs). ...
Update controllers and services for UUID entity IDs
Updates all controller @PathVariable and service method signatures to use UUID instead of Long for internal entity IDs (avatars, backgrounds, roles, departments...
Long/unique rowid()에서 UUID/gen random uuid()로 내부 법인 ID를 변환합니다
CockroachDB는 무작위로 분산 된 UUID를 사용하여 성능을 작성합니다. sequential unique rowid() 값 대신 내부 엔티티티티 키에 사용됩니다. User-facing entities (사용자, 조직, 회원, 계정, 리드, 연락처, ContactBook, 응용 프...
연락처 소스를 관리하기 위한 소스를 바꾸기
- 이름 AddSourceDialog → ManageSourcesDialog 전체 CRUD (리스트) 상태의 기존 소스 + 제거, 플러스 인라인 추가 양식) - 왼쪽 패널의 하단에 "Manage Contact Sources"버튼을 이동, 핀 위에 sync footer (또는 소스가 존재...
Remove Client ID and Secret fields from RingCentral UI
These are platform-level credentials set once in the K8s secret. Customers only need to provide their JWT Key and main phone number.
Read RingCentral client-id/secret from platform config, not per-org DB
Client ID and Secret identify the Kamo app on RingCentral's platform — they are shared across all orgs. Inject them from Spring Boot properties (backed by the K...
VoipProviderConfig에서 clientId/clientSecret 제거
이 플랫폼 수준의 자격은 모든 orgs에서 공유됩니다. jwtKey 및 mainPhoneNumber는 per-org입니다.
