Fix kubeconfig update to use WireGuard VPN IPs (10.8.x.x) instead of old Tailscale IPs
Refactor to parallel deployment for k1m1 and k2m1
- Split build and deployment into separate jobs - Deploy to k1m1 and k2m1 in parallel after build completes - Reduces total deployment time significantly
Revert to docker driver for faster builds - removes docker-container overhead
Switch to docker-container driver with cache for optimal build performance
Add Buildx setup with insecure registry config to resolve 401 auth errors
Reload market after create/update to initialize lazy collections
- Updated createMarket and updateMarket to reload market using getMarketById - This ensures all lazy collections (marketCustomForms, vendorProducts) are initial...
Correct path handling for mortgage fields and custom form data in lead imports
- Fixed mortgage fields to use 2-part paths (mortgageFields.loanAmount) in setNestedFieldOnCreateRequest - Fixed custom form data to use 3-part paths **********...
Make email/username login case-insensitive
- Normalize input username/email to lowercase before comparison - Use LOWER() function on database column for case-insensitive matching - Fixes issue where user...
Add backend validation for required fields in lead imports
- Add validateRequiredFields method to check required fields before import - Validate email, firstName, and lastName are present - Validate mortgage-specific fi...
Refactor LeadImportController to use LeadService.createLead
- Replace manual field mapping with LeadService.createLead for consistency - Add mapRowDataToCreateLeadRequest to convert import mappings to CreateLeadRequest -...
Add LeadController with CRUD endpoints and market config
- Add LeadController with GET, POST, PUT, DELETE endpoints - Add endpoint to get market configuration for a lead - Fix LeadImportController to use saveLead meth...
Cast getOrDefault to Boolean in formatEmail method
- Fix compilation error: incompatible types Object to boolean - Add explicit Boolean cast for toLowerCase and trim config options
Add LeadImportController with duplicate detection using vendorLeadID and composite key (vendorProductId|vendorLeadID)
Add CustomFormController for custom forms API endpoints
- Add REST controller at /api/security/custom-forms - Implement GET, POST, PUT, DELETE endpoints for form management - Support form structure with stacks and fi...
Add detailed logging to LeadVendorController for debugging title field issues
Update LeadVendorController to use title and description instead of name
Add LeadVendorController with full CRUD for vendors and products
Change LeadMarketDTO IDs to String to prevent JavaScript precision loss
Trigger rebuild to pick up updated kamo-shared-library with explicit repository queries
Add detailed logging to getMarketById for debugging market lookup issues
Trigger rebuild to pick up updated kamo-shared-library with String salesType in DTO
Return proper error message when market not found in getMarketById
Trigger rebuild to pick up updated kamo-shared-library with String salesType DTOs
Convert String salesType to SaleType enum in LeadMarketController
Add LeadMarketController for managing lead markets via REST API
使用组织流程Guid提供全组织的媒体信息
- 向媒体结构控制器添加组织存储器 - 更新了Feed以使用组织流Guid而不是查询所有会话 - 更新的创建程序 - 全组织范围内的饲料现在使用同铅饲料一样的单一溪流
修正 Media Stream 控制器的编译错误
- 固定缺失的收尾套 在得到Feed方法其他块 - 将地图( ()) 替换为 HashMap , 以便兼容 - 固定溪流变量,以便有效最终用于羊肉田 - 更新所有类似相关的代码,使用MediaBlockReasonType.LIKE而不是NO REASON - 固定铅流创建以通过铅参数
将 MediaFeed 控制器重命名为 MediaStream 控制器并添加线索流支持
- 将MediaFeed主计长改名为MediaStream主计长,处理通用媒体流 - 通过流程增加针对特定铅流的支持 - 种子端点现在接受可选的铅ID查询参数 - 员额创建支持牵头机构征求牵头评论 - 用于将主要注释转换为员额格式而添加的转换MediaObjToPostMap() - 主要评论作为MediaObjs存储...
添加社交媒体种子的 MediaFeed 控制器
- 添加带有 REST 端点的 MediaFeed 控制器,用于员额、评论和喜欢 - 实施有接入级过滤功能的分解饲料终端 - 为帖子图像添加图像上传端点 - 与媒体服务和图像服务相结合 - 支持员额创建、编辑、删除和评论 - 使用 MediaObj Report 实现类似/类似功能 - 利用存储代理端点生成适当的图像 ...
Add AccountController with endpoints for Members & Subscribers and Employees & Contractors
JobTitleController now uses pre-authenticated session from OTKPreAuthFilter to prevent 401 errors
SecurityRoleController now uses pre-authenticated session from OTKPreAuthFilter to prevent 401 errors
DomainController now uses pre-authenticated session from OTKPreAuthFilter to prevent 401 errors
Invalidate existing session before creating new one during login
- Check for existing *** cookie in login request - Delete/invalidate existing session before creating new one - Prevents reusing old session cookies when loggin...