Commit Graph
16 Commits
Author SHA1 Message Date
Deroino 88d2dc1ce6 docs: add project documentation in CLAUDE.md 2025-11-14 22:09:42 +08:00
Deroino 7ccaab9b75 feat(account-management): make abnormal status clickable to trigger re-login
- Added clickable status functionality for accounts with '异常' status
- Implemented handleReLogin method to trigger login flow when clicking abnormal status
- Added visual feedback with hover effects for clickable statuses
- Updated SSE flow to show different success messages for re-login vs new account
- Fixed account data handling to properly work with store objects
- Added dynamic default avatars for accounts
2025-11-13 11:47:03 +08:00
Deroino e60ce3f64a feat(account-management): optimize account loading with async validation
- Add new /getAccounts API for fast account retrieval without validation
- Update frontend to use fast API for initial load, showing accounts immediately
- Add '验证中' status with loading animation to indicate validation progress
- Implement background validation process that doesn't block UI
- Add Loading icon from Element Plus for visual feedback during validation
- Update status display logic to handle '验证中', '正常', and invalid states
- Improve user experience with immediate feedback and async validation
2025-11-13 11:31:46 +08:00
Deroino 75bbb39b43 feat(account-management): update cookie buttons text and styling
- Change button text from '下载Cookie文件/上传Cookie文件' to '下载Cookie/上传Cookie'
- Add icons to the buttons for better visual recognition
- Keep the essential 'Cookie' text for clarity while making buttons more concise
- Maintain proper button styling and layout in the account management table
2025-11-13 10:44:10 +08:00
Deroino 4688c41b9b feat(account-management): add upload and download cookie file buttons
- Add '上传Cookie文件' and '下载Cookie文件' buttons to account management page
- Implement frontend functionality for cookie file upload and download
- Add backend API endpoints for handling cookie file operations:
  - /uploadCookie: Handle cookie file upload with validation
  - /downloadCookie: Handle secure cookie file download
- Implement security measures to prevent path traversal attacks
- Add proper error handling and user feedback
- Maintain existing functionality while adding new features
2025-11-13 10:37:19 +08:00
Deroino 4ee6c2b09c feat(frontend): update draft checkbox text and position
- Change draft checkbox label to '视频号仅保存草稿(用手机发布)'
- Move draft checkbox to appear after platform selection and before title input
- Add proper CSS styling with appropriate margins for the draft section
- Maintain conditional visibility only for video channel platform (type 2)
- Preserve existing functionality while improving UI flow
2025-11-13 09:42:38 +08:00
Deroino 81b71d023d feat(wechat-channel): add draft upload functionality for video channel
- Add isDraft parameter to TencentVideo class to control publishing behavior
- Modify click_publish method to click "保存草稿" instead of "发表" when isDraft is true
- Update post_video_tencent function to accept and pass is_draft parameter
- Add is_draft parameter to /postVideo API endpoint to receive frontend data
- Add "视频号上传草稿" checkbox in frontend that appears only for video channel platform
- Update defaultTabInit to include isDraft property with default value false
- Include isDraft in publishData sent to backend API
- Implement proper URL checking for draft vs publish success confirmation

The new functionality allows users to save WeChat Channel videos as drafts
instead of immediately publishing them when the checkbox is selected.
2025-11-13 09:12:39 +08:00
Deroino c0e7b64b94 feat(frontend): add loading state to publish button to prevent duplicate clicks
- Add publishing state property to each tab to track publishing status
- Implement loading indicator on publish button with visual feedback
- Prevent duplicate clicks during active publishing process
- Update button text to show "发布中..." (Publishing...) when loading
- Ensure publishing state is properly reset in all scenarios (success, failure, validation errors)
- Add duplicate click prevention with user-friendly error message

The publish button now shows a loading spinner and prevents multiple clicks
during the publishing process, improving user experience and preventing
duplicate uploads to social media platforms.
2025-11-13 07:53:23 +08:00
Deroino 1a02b8fa50 feat(frontend): add UUID column to material management table
- Add UUID field extraction in backend /getFiles endpoint
- Extract UUID from file_path (first part before underscore)
- Add UUID column to material management table in frontend
- Set appropriate width for UUID column display
- Maintain data consistency between backend and frontend
2025-11-13 06:02:15 +08:00
Deroino d21736292c style(frontend): improve upload progress indicator visibility
- Change upload speed indicator color from white to dark gray
- Add better styling for upload file items with rounded corners
- Add hover effects and improved spacing for upload items
- Enhance overall visual appearance of upload panel
2025-11-13 05:58:17 +08:00
Deroino 91d7942a6f fix(backend): delete actual file when removing from database
- Add file deletion logic to delete_file endpoint
- Remove actual file from videoFile directory when deleting record
- Add error handling for file deletion operations
- Add logging for file deletion status
- Ensure data consistency between database and file system
2025-11-13 05:58:01 +08:00
Deroino 6b9fdb35d1 feat(frontend): Implement multi-file upload with progress and speed 2025-11-13 05:47:31 +08:00
Deroino 0cdd088d97 fix(playwright): Prevent launch error when LOCAL_CHROME_PATH is empty 2025-11-13 05:08:06 +08:00
Deroino e003383d65 feat: Add proxy to frontend dev server to fix CORS issues 2025-11-13 04:11:58 +08:00
Deroino 756dcd9126 chore: Improve error logging for /uploadSave endpoint 2025-11-13 03:47:38 +08:00
Deroino c933543e5c chore(windows): add Windows batch script for one-click startup
Add a Windows batch script to launch both backend and frontend servers with a single click.

This script:
- Starts the Python backend server in a new window
- Starts the Vue.js frontend server in another window
- Includes proper window titles and logging
- Automatically closes the launcher window after 10 seconds
2025-11-08 04:22:06 +08:00