种子组织.is Kamocrm 和 OWNER UNLIMITED 自我协作计划
- 数据记录器: 放下组织 来自创建Org 的参数, 设置为 Toplevel= true on kamocrm - KamoCRMAGEReq UpdateRunner + 测试:在 IS TOP LEVEL 上匹配 = TYPE - Type RemovalRunner组织:单电表型 - Owner PlanSee...
主模型适用于所有三种成员类型
profile Maxed Out Master Model 现在的设置适用于会员,适用于团队会员, 并应用 ToOwners 全部真实,所以每个成员类型都可以看到主模型的 分支类型作为/网络上的创建选项。 署长模板 继续授予每个角色权利类型,包括新的 CREATE CHILD ORG right (id 131) ,...
管理员默认角色模板从所有权利 GRANTED 开始
profileMaxed OutMasterModel 现在将管理员模板填入 每个角色权利Type 设置到GRANDTED。 其他三个模板(小组成员: 捍卫民主阵线(DEFAULT)成员仍然以零权利实现(NOT Specified for ),与非管理员角色的预定空白基线相匹配. 为什么GRANTED(不是FORCE...
启用时为 KamoCRM 提供最大输出主安全模型
数据Loader 现在创建并指派一个主机 ChildOrg Security Model 到 org 创建后立即创建 KamoCRM, 每个设置最大 最允许/强制值: - 允许Owners View OtherOrgs / 允许Owners PrivateOrgs / 允许Sub Childorgs = 真实 - 身...
Add FEATURE_REQUESTS to Support category and all plan-feature mappings
Free: Community vote, Starter: Vote & request, Business: Priority requests, Enterprise: Custom dev included
SP5 migrate KamoCRM agereq to ALL_WORK_ELIGIBLE
Add KamoCRMAgeReqUpdateRunner (order 10) — conditional idempotent UPDATE on startup; WHERE clause checks old value so re-runs are no-ops. Errors are swallowed s...
Add SP4 email_verification_tokens DDL + User alias/email_verified columns
Add SP3 recovery table DDL + User column additions to SchemaCleanupRunner
Add EmailTemplateSeedRunner for SYSTEM + per-org seeding
Runs at @Order(20) on KamoInitializerService startup. Loads canonical templates from kamo-shared-library resources; upserts SYSTEM rows (no clobber); backfills ...
Add partial unique indexes + CHECK constraints for email_templates
Hibernate ddl-auto can't generate partial unique indexes or computed-CHECK constraints. This commit adds them via the existing idempotent DDL runner pattern aft...
Seed KamoCRM with ALL_WORK_ELIGIBLE on fresh installs
The createOrg() helper applies this single argument to both ageReqTypeMember and ageReqTypeTeamMember; consistent with platform convention. Pairs with KamoCRMAg...
Add one-time runner to migrate KamoCRM agereq to ALL_WORK_ELIGIBLE
Conditional idempotent UPDATE runs on service startup; WHERE clause checks the expected old value so re-runs are no-ops. Errors are logged and swallowed — start...
Add verification_token and ownership_verified columns to org_domains
Add ssl_confirmed and ssl_confirmed_at columns to org_domains
Adds idempotent ALTER TABLE statements to provision the two new columns needed for DNS setup SSL confirmation tracking.
Add billing config initialization to KamoCRMPricingLoader
Seeds a default BillingConfig (ORG_PAYS_ALL, SOFT_LOCK, 7-day grace) for the KamoCRM organization during pricing loader startup. Supports the new Stripe billing...
Add translation tables for commit logs, KB articles, and subscription plans
Update KamoCRM pricing to production go-to-market rates
- Starter: $34/mo ($28 annual), Business: $72/mo ($59 annual), Enterprise: from $109/mo ($99 annual) - Business plan expanded from 50 to 100 users - Added eSign...
Use createOrganizationOwner for admin members, rename INTERNAL to TEAM_MEMBER
Update owner creation to use new createOrganizationOwner method which handles admin role assignment and PRIVILEGED access level automatically. Replace all Image...
Add webinar type and lead market seed data for KamoCRM demo
Adds seed data initialization for the webinar scheduling system: - "KamoCRM Software Introduction Demo" webinar type (45min, PRIORITY strategy) - Reminder inter...
Add KamoCRMPricingLoader with full marketing pricing model
Preloads the complete KamoCRM subscription pricing structure into the KamoCRM organization, mirroring the /pricing page on kamo-marketing: - 4 plans: Free, Sta...
Seed support topics and website-contact system member for KamoCRM org
Drop deprecated who_can_create and email_invites_enabled columns
Migrate Everyone role to Members and create Team Members role
- Rename ROLE_EVERYONE_ID column to ROLE_MEMBER_ID - Rename existing "Everyone (Applies To All)" roles to "Members" - Set **************** flags on existing sys...
Add AI processing column and note embedding records table
Add AI_PROCESSING_ENABLED column to notes table and create NOTE_EMBEDDING_RECORDS table for tracking note RAG vectorization.
Add RoleRightsSyncRunner to backfill missing role rights
When new RoleRightType entries are added to the enum, existing roles don't have OrgRoleRight entries for them. This runner checks all roles on startup and adds ...
Add access security system schema migration
Creates 7 new tables (org_access_rules, org_geo_block_rules, org_suspicious_detection_rules, system_access_logs, geolite_blocks, geolite_locations, geolite_sync...
Create KamoTokens schema and org_oauth_token table
- CREATE SCHEMA IF NOT EXISTS kamotokens - CREATE TABLE kamotokens.org_oauth_token with unique (org_id, provider) - DROP COLUMN jwt_key from voip_provider_confi...
CalDav/CardDav Part 4 — schema indexes and email repo scan
- Add supplemental indexes on **************** and **************** via SchemaCleanupRunner (Hibernate ddl-auto:update adds the FK columns; indexes are extr...
Add SchemaCleanupRunner to drop CalendarIntegration table/columns; enable ddl-auto update
Add commerce repo scanning, exec-maven-plugin, and NATS/MinIO config
Enable JPA scanning for commerce package, add exec-maven-plugin for direct Java execution, configure NATS JetStream and MinIO settings, fix application name, an...
向供应商添加模拟商业市场数据种子
在创建7个市场的DataLoader上添加装入MockCommerce MarketData () 所有6个商业类型,在自动种子下提供符合实际的供应商数据 内置分类。 还加强了带有细列物品的零售订单播种.
增加租赁资产、供应商、订阅计划、采购申请的模拟数据
- 装载MockRentalData:4个租赁资产(房车、设备) - 装入MockVendorData:4个供应商 - 加载Mock订阅数据:3项计划(基本、Pro、企业) - 加载Mock采购数据:1项采购请求(对供应商的依赖) - 从装入MockPOSData中调用,用于启用 POS 的 Orgs
更新时区字段以使用 TimezoneType enum - 从 String 更改为 TimezoneType enum - 更新了.gitignore 以排除 m2 存储缓存 - 支持时区层次: 成员 > 用户 > 组织
在 DataLoader 中添加本地主机域支持
- 增加当地托管人和地方托管人3:00域,促进地方发展 - 改进解释子域连接行为的评论 - 与处理父子域连接的更新的组织存储库合作
在 DataLoader 中添加外部认证提供者初始化
- 添加外部认证服务依赖性注射 - 创建了配置提供者的外部Auth 提供()帮助方法 - 每个组织的外部认证提供者: * KamoCRM:谷歌,微软,苹果 * KamoClub:谷歌,微软,苹果 * Ebonix: Steam, Roblox, Xbox (gaming/kids 平台). * TheShort Ter...