Commit Graph

99 Commits

Author SHA1 Message Date
张翔 f357330ba8 feat: 重构用户角色系统为管理员标识
- 将用户角色字段从role改为is_admin布尔值
- 更新相关API权限检查逻辑
- 修改数据库schema和迁移文件
- 调整前端用户显示逻辑
- 添加API响应工具函数
- 优化权限检查中间件
- 重构英雄组件为原子组件
2026-03-12 20:45:43 +08:00
张翔 b207bfa7af feat: 增加测试覆盖率并优化代码质量
test: 添加单元测试和端到端测试
refactor: 重构登录页面和上传模块
ci: 更新测试覆盖率阈值至42%
build: 添加测试相关依赖
docs: 更新测试文档
style: 修复代码格式问题
2026-03-11 11:14:37 +08:00
张翔 e8dffa4f05 chore: remove GitHub Actions workflows, use Woodpecker CI exclusively 2026-03-10 13:10:11 +08:00
张翔 6d92024b63 feat: 修复测试套件问题并添加Woodpecker CI配置
- 修复API测试认证问题:创建全局认证设置,更新Playwright配置
- 优化回归测试稳定性:增加超时时间到15秒,修复定位器
- 创建Woodpecker CI工作流:CI、部署和质量门禁配置
- 添加Jest配置和测试脚本
- 移除登录页面的默认账号密码显示(安全问题修复)
2026-03-09 10:26:02 +08:00
张翔 92af40df8e fix: resolve test failures and improve test stability
- Fix navigation menu display and click issues
- Fix scroll to top/bottom test failures
- Fix section display tests by removing non-existent contact section
- Add data-testid attributes for better test reliability
- Optimize test expectations for scroll behavior
- Add contact page layout for metadata export
- Update section components with proper ARIA attributes
2026-03-07 10:47:14 +08:00
张翔 badce55606 feat: add data-testid and data-type support to Toast component 2026-03-06 17:49:27 +08:00
张翔 0222f20a19 feat: add data-testid attributes for form elements to improve testability 2026-03-06 17:45:41 +08:00
张翔 c678df44ae fix: improve footer visibility with data-testid and waitForFooter method 2026-03-05 22:53:12 +08:00
张翔 2f6f6a6aca fix: add navigation role attribute for better test selector 2026-03-05 20:59:25 +08:00
张翔 136fe7ac04 fix: update gitignore and footer component 2026-03-05 16:43:44 +08:00
张翔 060566fd73 chore: clean up mobile test files and update components 2026-03-05 14:23:19 +08:00
张翔 6797c24b5c feat: 添加移动端适配和测试功能
refactor(layout): 优化页脚布局和备案信息展示
feat(constants): 添加ICP备案和公安备案信息
feat(header): 实现移动端加载时的骨架屏效果
style(globals): 调整文字颜色和添加移动端响应样式
feat(breadcrumb): 增加返回按钮和响应式优化
feat(e2e): 添加移动端测试工具和测试用例
docs: 添加页脚重设计文档
2026-03-05 11:40:21 +08:00
张翔 9cbc80742a feat: 重构联系页面并增强安全性
refactor: 优化导航和路由逻辑

fix: 修复移动端样式问题

perf: 优化字体加载和性能

test: 添加安全性和可访问性测试

style: 调整按钮和表单样式

chore: 更新依赖版本

ci: 添加安全头配置

build: 优化构建配置

docs: 更新常量信息
2026-03-01 10:56:54 +08:00
张翔 13c4a2ca49 feat: 优化网站性能、响应式设计和测试覆盖率
- 更新next.config.ts配置以优化图片和静态资源
- 优化字体加载策略,减少首屏阻塞
- 使用Next.js Image组件替换img标签并实现懒加载
- 重构移动端菜单交互,提升触摸体验
- 新增安全测试和可访问性测试用例
- 修复导航栏滚动定位问题
- 更新部署就绪测试脚本
- 添加相关文档说明优化细节
2026-02-28 22:32:45 +08:00
张翔 0cfefaa937 refactor(ui): 优化导航组件和页面布局
- 移除多个页面的面包屑导航组件
- 添加统一的返回按钮组件替代各页面独立实现
- 优化导航栏滚动检测逻辑和动画效果
- 更新常量类型定义和统计数据
- 调整动态导入的SSR配置为false
- 添加FlipClock组件展示公司运营时长
- 优化新闻列表页的类型安全和响应式设计
2026-02-28 13:09:07 +08:00
张翔 9451814ca4 feat: 添加面包屑导航组件并优化页面布局
refactor: 重构页面结构和导航逻辑

fix: 修复移动端菜单导航和滚动行为

perf: 优化图片加载性能和资源请求

test: 添加端到端测试和性能测试用例

docs: 更新.gitignore文件

chore: 更新依赖和配置

style: 优化代码格式和类型安全

ci: 调整Playwright测试超时时间

build: 更新Next.js配置和构建选项
2026-02-28 09:09:04 +08:00
张翔 fd058a53d1 fix: add missing SectionSkeleton component 2026-02-27 20:35:37 +08:00
张翔 5924a7d493 feat: add skeleton screen components and optimize image config 2026-02-27 20:30:36 +08:00
张翔 aa47a45a95 feat: add touch swipe support for mobile 2026-02-27 20:29:00 +08:00
张翔 1bdb95b5b6 feat: optimize mobile form input experience 2026-02-27 20:27:17 +08:00
张翔 44bf88b200 feat: add mobile tab bar navigation 2026-02-27 20:26:08 +08:00
张翔 b426bc9b62 style: restore red underline for active navigation item 2026-02-27 12:01:59 +08:00
张翔 f70d8dace9 style: remove red focus rings from navigation header 2026-02-27 11:46:07 +08:00
张翔 5d5b7feb0a feat(e2e): 添加完整的E2E测试框架和测试用例
添加Playwright测试框架配置和基础页面对象
实现冒烟测试用例覆盖首页和联系页面核心功能
更新导航组件以支持滚动高亮功能
添加BackButton组件统一返回按钮行为
配置Woodpecker CI集成和测试报告生成
2026-02-27 10:30:33 +08:00
张翔 4a616fe96e refactor: complete website optimization - unified navigation, colors, and structure
- Created service detail pages with storytelling style
- Created service list page
- Removed service modal interactions
- Simplified homepage About section
- Added homepage Cases section
- Updated navigation to use page links instead of anchors
- Created products list page
- Updated footer links
- Unified color scheme to brand red (#C41E3A)
- Fixed TypeScript errors (removed unused imports)
- Fixed JSX syntax errors
- Split About page into server and client components
- All tests passing: typecheck and build successful
2026-02-26 21:43:44 +08:00
张翔 702b3296bc refactor: update footer links to use page navigation 2026-02-26 21:28:47 +08:00
张翔 2b08a536eb refactor: update navigation to use independent page links 2026-02-26 21:27:19 +08:00
张翔 f0e147eba8 feat: add cases section to homepage 2026-02-26 21:25:59 +08:00
张翔 b468415e54 refactor: simplify about section on homepage 2026-02-26 21:25:31 +08:00
张翔 1e1c68670b refactor: remove service detail modal component 2026-02-26 21:24:59 +08:00
张翔 686a02b233 refactor: remove modal, add link navigation for services 2026-02-26 21:24:38 +08:00
张翔 ac4f228b04 feat: update navigation to link to solutions page 2026-02-26 18:46:17 +08:00
张翔 2595d27221 fix: remove outline button default hover to enable group-hover 2026-02-26 18:40:19 +08:00
张翔 87719f318f fix: await params promise in Next.js 16 2026-02-26 18:38:00 +08:00
张翔 1c5ec4d663 fix: improve button hover contrast for better readability 2026-02-26 18:37:31 +08:00
张翔 b7fad4c381 feat: add dialog component from Radix UI 2026-02-26 18:23:30 +08:00
张翔 dd0878a7a4 fix: rename news dynamic route parameter from id to slug 2026-02-26 18:20:00 +08:00
张翔 19b06de1a7 feat: add links to privacy policy and terms of service 2026-02-26 18:08:19 +08:00
张翔 c845fbbd85 feat: add link to news list page 2026-02-26 18:05:27 +08:00
张翔 9cdd554454 feat: add links to product detail pages 2026-02-26 18:02:54 +08:00
张翔 424c437bdf feat: integrate service detail modal with service cards 2026-02-26 18:00:01 +08:00
张翔 abf23c7a8c feat: create service detail modal component 2026-02-26 17:58:59 +08:00
张翔 c174370e60 feat: integrate contact form with API 2026-02-26 17:56:25 +08:00
张翔 7f450dff87 refactor(products): 更新产品列表和描述信息
移除物联网和AI产品,新增内容管理系统
更新产品页面描述和联系按钮滚动功能
2026-02-26 15:52:04 +08:00
张翔 fecbfd1990 feat: 添加预览效果页面并优化交互效果
refactor: 优化代码健壮性和类型安全

style: 更新字体样式和全局CSS

fix: 修复IntersectionObserver潜在空引用问题

chore: 更新依赖和ESLint配置

build: 更新构建ID和路由配置
2026-02-24 10:24:05 +08:00
张翔 64165c4499 feat(security,quality): implement security and code quality optimizations
Phase 6: Security Optimizations
- Install DOMPurify for XSS protection
- Create sanitize utilities (HTML, input, URL, escape)
- Implement input sanitization in contact form
- Add CSRF token generation and validation
- Integrate CSRF protection in form submissions

Phase 7: Code Quality Optimizations
- Enhance TypeScript strict mode configuration
- Add noUncheckedIndexedAccess for safer array access
- Enable noImplicitReturns and noFallthroughCasesInSwitch
- Add noUnusedLocals and noUnusedParameters
- Enable exactOptionalPropertyTypes for precise types
- Configure comprehensive ESLint rules
- Add React security rules (no-unescaped-entities, jsx-no-target-blank)
- Add TypeScript best practices rules
- Add code quality rules (prefer-const, eqeqeq, curly)

Files modified:
- package.json: Add DOMPurify dependency
- src/lib/sanitize.ts: New sanitization utilities
- src/lib/csrf.ts: New CSRF protection utilities
- src/components/sections/contact-section.tsx: Security integration
- tsconfig.json: Enhanced TypeScript configuration
- eslint.config.mjs: Comprehensive ESLint rules

Impact:
- XSS attack prevention
- CSRF attack prevention
- Better type safety
- Improved code quality
- Financial-grade security standards
2026-02-24 07:08:39 +08:00
张翔 81d4f21a7d feat(responsive,seo): implement responsive design and SEO optimizations
Phase 4: Responsive Design Optimizations
- Increase touch target sizes to min 44px for mobile
- Add touch-manipulation for better touch handling
- Optimize button and input sizes for mobile devices
- Implement responsive font sizing (16px -> 17px -> 18px)

Phase 5: SEO Optimizations
- Enhance metadata with comprehensive Open Graph tags
- Add Twitter Card metadata with images
- Implement Google Search Console verification
- Add structured data (Organization, Website schemas)
- Improve keywords and descriptions

Files modified:
- src/components/ui/button.tsx: Touch-friendly sizes
- src/components/ui/input.tsx: Mobile-optimized inputs
- src/app/globals.css: Responsive font sizing
- src/app/layout.tsx: Enhanced metadata and structured data
- src/components/seo/structured-data.tsx: New structured data components

Impact:
- Better mobile user experience
- Improved search engine visibility
- Enhanced social media sharing
- WCAG 2.1 touch target compliance
- Better SEO performance
2026-02-24 00:48:42 +08:00
张翔 37a86bfaf7 feat(perf,ux): implement performance and UX optimizations
Phase 2: Performance Optimizations
- Implement dynamic imports for non-critical sections
- Add loading skeletons for lazy-loaded components
- Optimize bundle size with code splitting
- Enable SSR for dynamic components

Phase 3: UX Optimizations
- Create ErrorBoundary component for graceful error handling
- Add Toast notification component for user feedback
- Implement success/error notifications in contact form
- Add error handling with user-friendly messages

Files modified:
- src/app/(marketing)/page.tsx: Dynamic imports for sections
- src/app/(marketing)/layout.tsx: Error boundary integration
- src/components/sections/contact-section.tsx: Toast notifications
- src/components/ui/error-boundary.tsx: New error boundary component
- src/components/ui/toast.tsx: New toast notification component

Impact:
- Reduced initial bundle size
- Faster page load times
- Better error handling
- Improved user feedback
- Enhanced user experience
2026-02-24 00:44:40 +08:00
张翔 016b7cfb91 feat(a11y,ux): implement comprehensive accessibility and UX optimizations
Phase 1: Accessibility Optimizations
- Add proper label associations and ARIA attributes to form inputs
- Implement aria-required, aria-invalid, aria-describedby for better form accessibility
- Add role='alert' for error messages
- Enhance keyboard navigation with aria-expanded, aria-controls
- Add aria-label for mobile menu button
- Implement aria-current for active navigation items
- Add semantic HTML with aria-labelledby for sections

Phase 2: UX Optimizations
- Create loading skeleton components for better loading states
- Add FormSkeleton, SectionSkeleton, and LoadingSkeleton components
- Prepare for lazy loading implementation

Files modified:
- src/components/ui/input.tsx: Enhanced with ARIA attributes
- src/components/ui/textarea.tsx: Enhanced with ARIA attributes
- src/components/layout/header.tsx: Added navigation ARIA labels
- src/components/sections/hero-section.tsx: Added section labels
- src/components/sections/services-section.tsx: Added section labels
- src/components/ui/loading-skeleton.tsx: New loading state components

Impact:
- WCAG 2.1 AA compliance improvements
- Better screen reader support
- Enhanced keyboard navigation
- Improved user feedback during loading
2026-02-24 00:40:19 +08:00
张翔 44ba75e4d1 feat(components): 添加鼠标交互粒子效果和高级浮动效果组件
refactor(sections): 移除各区块的多余标签元素
style(contact-section): 优化联系表单布局和动画效果
2026-02-23 22:48:32 +08:00