Commit Graph

57 Commits

Author SHA1 Message Date
duanshuwen
9f0881a284 feat(aigc): 新增图片生成动效视频的升级功能
- 新增图片转视频相关的API接口
- 调整AIGC详情页英雄区块高度至380px
- 添加结果详情页升级动效视频入口
- 完善升级流程的逻辑与费用计算
- 适配多类型生成任务的判断规则
2026-08-05 19:41:42 +08:00
be522a8f02 feat: 移动请求文件到子包 2026-07-28 17:26:54 +08:00
6a96e3634e Merge branch 'aigc' of https://git.nianxx.cn/zoujing/YGChatCS into home3.0
# Conflicts:
#	src/pages-aigc/agreement/agreement.vue
#	src/pages-booking/index.vue
#	src/pages.json
#	src/request/api/AigcApi.js
#	src/utils/index.js

合并了代码
2026-07-28 12:57:04 +08:00
duanshuwen
7913db7a83 fix(ui-layout): correct flex text truncation issues
Add min-w-0, w-full, and block classes to flex child elements and text nodes across various UI components to ensure text truncation works correctly. Remove outdated hardcoded card item width styles from global SCSS and replace them with inline responsive width classes where appropriate.
2026-07-25 19:17:13 +08:00
duanshuwen
2b12398f2a refactor: replace custom ellipsis classes with native utilities
delete unused ellipsis.scss partial and its import, update all components to use truncate and line-clamp-2 utilities
2026-07-24 22:19:35 +08:00
duanshuwen
72b7557ecf fix(record-card): set generator cost to 0 for task status 3 2026-07-23 23:27:21 +08:00
duanshuwen
8fae0ed483 fix(aigc detail): add safe area bottom padding
adjust page padding to avoid content overlapping with mobile gesture area
2026-07-23 22:45:06 +08:00
duanshuwen
18e85af78f refactor(TemplateCarousel): remove unnecessary swiper props
remove the unused skip-hidden-item-layout and easing-function attributes from the swiper component, and clean up prop formatting for the child TemplateCard
2026-07-23 22:26:14 +08:00
duanshuwen
2f9ede3993 feat(template-card): add media placeholder and smooth video fade-in
add gradient background media placeholder for empty states
update video to use 0.18s ease opacity fade-in transition
add videoReady state to track when video is ready to display
adjust z-indexes for correct media layer stacking
fix video rendering condition and add state reset watchers
update template media container background color
2026-07-23 22:10:24 +08:00
duanshuwen
3cc95e7f51 style(recharge): format template component props for better readability 2026-07-23 21:54:39 +08:00
duanshuwen
f21bd70b08 feat(aigc): add image preview and improve detail layout
- restructure aigc detail page flex layout to separate preview and control sections
- update ResultPreview styles to fill full width and height
- add click-to-preview functionality for result images
- add auto-hide delay and fix state management for GiftPointsToast component
- adjust video component handling for fullscreen display mode
2026-07-23 21:50:09 +08:00
duanshuwen
f71f28fe99 refactor(aigc): update aigc consent dialog and apis
- set developVersion to false for production build
- format api request calls for consistent readability
- simplify consent dialog template and remove unused styles
- update default consent text and add ruleClick emit event
- add new getUserAgreement api endpoint and export it
2026-07-23 21:04:54 +08:00
duanshuwen
d71bda5e0b feat(aigc): add user agreement page and update consent dialog
Add new AIGC user agreement page with scrollable markdown rendering, loading and retry states.
Register the new route in pages.json.
Restructure AigcConsentDialog's content into styled sections, and update its rule click handler to navigate directly to the new agreement page.
2026-07-23 20:45:30 +08:00
duanshuwen
021d1fc77d fix(gift-points-toast): update default credited points from 200 to 400 2026-07-23 20:38:58 +08:00
be4520cdb8 Merge branch 'aigc' of https://git.nianxx.cn/zoujing/YGChatCS into home3.0 2026-07-23 15:07:48 +08:00
duanshuwen
13d019b191 feat(aigc): pass wechat login code to generator task requests
Refactor the shared wechat login code utility by moving it from the recharge service to a standalone module.
Add the sensitive request flag to the createAigcGeneratorTask POST API call.
Update the aigc detail and template use pages to fetch and pass the wechat login code when creating generation tasks.
Remove the redundant login code implementation from the recharge payment service.
2026-07-23 11:57:09 +08:00
f0843e0f12 Merge branch 'aigc' of https://git.nianxx.cn/zoujing/YGChatCS into home3.0
# Conflicts:
#	src/pages-aigc/recharge/components/CustomAmountCard/index.vue
#	src/pages-aigc/recharge/components/RechargeFooter/index.vue
#	src/pages-aigc/recharge/components/RechargePackageList/index.vue
#	src/pages-aigc/recharge/recharge.vue
#	src/pages-aigc/useTemplate/useTemplate.vue
2026-07-22 16:48:21 +08:00
duanshuwen
14defcc5b7 feat(recharge): add full virtual recharge flow for aigc credits
- Replace legacy recharge API endpoints with new dedicated VirtualRechargeApi with sensitive request logging
- Implement pending order tracking, automatic payment reconciliation, and recovery for interrupted payments
- Overhaul recharge component logic to support both pre-defined package and custom amount recharge
- Fix currency price formatting to consistently display 2 decimal places for all monetary values
- Remove unused xiaoqi-avatar asset and related component imports
- Simplify Vite build asset naming configuration
- Switch application to test development mode
2026-07-22 16:17:16 +08:00
duanshuwen
54a83bad5d refactor(top-nav-bar): add custom back prop
- add customBack prop to enable explicit custom back handling
- rewrite back navigation logic to use the new prop instead of inferring from emit listeners
- remove unused getCurrentInstance import
- update three AIGC page components to use the custom-back prop
2026-07-20 19:12:11 +08:00
duanshuwen
c7062e0b51 fix(sharedWork): replace back nav with uni.reLaunch
remove the page stack navigation check, directly relaunch to the index page, add a fail toast for reLaunch failures
2026-07-20 15:02:48 +08:00
duanshuwen
bfebed44b0 chore: remove recharge and switch to test mode
Remove all recharge-related pages, components, and API endpoints.
Update developVersion flag to enable test environment with 400 free credits for all users.
Revise PointInsufficientDialog to reflect closed recharge channel, update button text and actions.
Remove recharge actions from all top bars and generate confirmation panels.
Add new user agreement page for service terms, update related API calls.
Restyle AigcConsentDialog to use sectioned content layout.
Fix visibility timing logic in GiftPointsToast component.
2026-07-20 14:50:14 +08:00
duanshuwen
2407a9d941 refactor(aigc): update carousel and video components
- rewrite template carousel from custom scroll to uni swiper
- add video loading, error, and replay states to result preview
- update template card styles and video/poster handling logic
- clean up unused CSS vars and remove unnecessary min-height on detail page
- fix video file regex and add video error recovery
2026-07-18 15:30:06 +08:00
duanshuwen
5fe3dd54b3 feat(aigc): add auto-redirect when generation completes
Add complete event to GeneratingProgressPanel that emits when task status is completed and progress reaches 100%. Add handler in the parent progress page to automatically navigate to task detail page when the complete event is triggered, and stop ongoing task detail polling. Also enhance media download handling in the detail page with proper WeChat mini-program file path handling, error wrapping, temporary file cleanup, and improved error reporting for download failures.
2026-07-17 23:33:12 +08:00
duanshuwen
9b19da2257 fix(GiftPointsToast): update default points to 200 2026-07-17 21:44:46 +08:00
duanshuwen
1a4b320dc5 feat: add aigc regenerate flow and improve task polling
Add reusable RegenerateConfirmPopup component. Implement full regeneration flow in AIGC detail page with balance checks, insufficient point prompt, task creation and progress page navigation. Refine progress page polling logic with lifecycle handling, duplicate request prevention and timer cleanup.
2026-07-17 21:36:08 +08:00
duanshuwen
b04e3a4613 feat(aigc): add shared work top bar and back fixes
- add leftAction prop to AigcTopBar to switch between back arrow and home icon
- pass source=sharedWork query param when reLaunching home from shared work page
- update home page to detect shared work source, adjust top bar and back behavior
- add CSS styling for home top bar icon
- update root page back handler to exit WeChat mini program
2026-07-17 09:29:38 +08:00
duanshuwen
767ecb197b refactor: simplify TopNavBar and update sharedWork back handling
remove leftAction prop and hardcode left icon type in TopNavBar
move home navigation logic out of TopNavBar to parent components
update sharedWork.vue to use new TopNavBar API and implement proper back handling
2026-07-17 08:48:07 +08:00
duanshuwen
dc12b8ba88 feat: update TopNavBar and shared work page navigation
Add leftAction prop to TopNavBar to support back or home left navigation actions, update left icon accordingly. Add optional chaining to shareDetail.templateName to prevent errors. Modify sharedWork page to use home left action and update back handler to use direct home reLaunch.
2026-07-16 22:45:15 +08:00
duanshuwen
cf723e5b93 fix(detail): implement proper recharge navigation
replace placeholder toast with actual recharge page navigation, and add a failure callback to show error toast on navigation fail
2026-07-16 22:32:41 +08:00
duanshuwen
f3b4fd04d0 feat(record-card): expand card clickable area
move view event emission from the action button to the root record card component, expanding the clickable area to let the entire card trigger the view event when actionText is present, improving user experience.
2026-07-16 22:16:58 +08:00
duanshuwen
0a136c3040 refactor(detail): extract date formatter and clean up complete time
add formatDateOnly utility to extract YYYY-MM-DD part from date strings, and refactor the complete time calculation to use this helper
2026-07-16 22:02:25 +08:00
duanshuwen
52b6722842 feat(aigc): add video save support and improve consent flow
- add support for saving both image and video AIGC generation results
- refactor ResultActions component to accept mediaType prop and use dynamic save button text
- remove AIGC consent dialog from ChatQuickAccess and implement it on AIGC home page
- add WeChat mini-program privacy authorization check before saving media
- create reusable AigcConsentDialog component with proper styling
2026-07-16 21:49:00 +08:00
duanshuwen
38dbf7afc8 fix(aigc): correct generated media preview handling
update ResultPreview component to use proper image and video result URLs
refine isVideo detection logic across detail and shared work pages
add pointer-events none to preview elements to avoid blocking user interactions
standardize media URL usage between AIGC detail and shared work components
2026-07-16 21:24:38 +08:00
duanshuwen
487caf9dbe feat(shared-work): update page ui and navigation
add dynamic template name to top nav bar
set top nav background to white
adjust media container styles and image display mode
remove redundant is-video CSS class and gradient backgrounds
update action button to pill shape with white text
remove scroll-y prop from scroll container
fix scroll container layout and padding
2026-07-16 21:09:22 +08:00
duanshuwen
99151bca58 feat(recharge): add points recharge agreement flow
- add new API request for fetching points top up agreement content
- update recharge footer with agreement checkbox and protocol link
- add agreement popup modal to display full agreement text
- add payment pre-validation to enforce agreement acceptance before payment
- handle loading and error states for agreement retrieval
- adjust recharge footer layout to accommodate new UI elements
2026-07-16 20:34:01 +08:00
duanshuwen
67b1b78f1f feat(aigc): add shared work page and AIGC sharing
- add new shared work page to view shared AIGC generated images and videos
- add createAigcGeneratorTaskShare and getAigcGeneratorTaskShareDetail APIs
- update ResultActions component to add share preparation state and native share support
- remove deprecated SharePreviewPopup component and its associated styles
- update AIGC detail page to generate share keys and adjust native share metadata
- register the new shared work page in pages.json
2026-07-16 13:28:46 +08:00
duanshuwen
dcf67dedfc feat(aigc/detail): add share preview popup
create reusable SharePreviewPopup component for share preview
update ResultActions to emit share event instead of direct native share
add share preview flow in aigc detail page
update native share config with correct image and fallback title
2026-07-16 11:25:39 +08:00
duanshuwen
ada88d7b20 feat(aigc): replace mock credit data with backend api fetch
add getCreditLedgerPage API function to fetch credit ledger records
remove local mock ledger data file
update LedgerCard component to adapt to new API response structure
rewrite points details page to use z-paging with empty and error handling
2026-07-16 09:04:04 +08:00
duanshuwen
c7785e55d7 feat(aigc): add standalone AIGC task progress page
- Add dedicated progress page for viewing AIGC generation task status
- Extract reusable GeneratingProgressPanel component
- Update task record cards to link to progress page for pending tasks
- Rework useTemplate flow to redirect to progress page post task creation
- Remove unused inline generating code and styles from useTemplate
- Adjust quick access menu item order
2026-07-15 11:24:28 +08:00
duanshuwen
9bdef279b7 feat(aigc): refine generation UI and add task status tracking
Add real-time task status polling for active generation jobs.
Overhaul GeneratingProgressPanel with dynamic step indicators, action buttons and updated styling.
Update PointInsufficientDialog to show detailed credit balance and usage summary.
Fix RecordCard media display and status logic for generating and completed tasks.
Restyle PhotoPickDrawer and update its instructional copy.
Add overflow styling for generating template content container.
2026-07-14 22:09:37 +08:00
duanshuwen
1ebdf92159 refactor: remove unused CustomEmpty and related code
clean up dead code by removing all CustomEmpty component imports, template usages and the associated detailEmptyText state variable
2026-07-13 22:48:27 +08:00
duanshuwen
efe97452e0 feat(aigc): add task detail and image save flow
- Replace global AigcRecord store with task ID URL parameters instead of store state
- Integrate real task detail API to replace static mock result data
- Update ResultActions component with loading state, disabled styles, and native uni-app share support
- Add full image save flow with album permission checking and error handling
- Clean up unused files including the aigcRecord store and static result data
- Adjust RecordList padding and paging component text for better UX
2026-07-13 22:14:50 +08:00
duanshuwen
10638e0806 feat: add aigc record, video preview & custom recharge
- create useAigcRecordStore to centralize current AIGC generation record state
- add video media type support to ResultPreview component
- update RecordCard to only display view button for completed tasks
- implement custom recharge amount with input validation and 9999 max limit
- refactor detail page to load record from Pinia store instead of mock data
- clean up TemplateCarousel markup and remove unused badge styles
- fix minor formatting and code style issues
2026-07-13 21:25:17 +08:00
duanshuwen
b5952961fe feat: add mini-program privacy auth, update oss urls and refine photo guide
update oss static resource urls to oss.nianxx.cn
refactor privacy component to be reusable, add wechat mini-program privacy authorization check before image picking
add image urls to photo guide examples, refine photo guide ui styles and remove unused avatarSrc prop
2026-07-13 20:14:49 +08:00
duanshuwen
29bf6afe55 feat(recharge): add recharge package selection flow
- add new getRechargeOptions API endpoint in AigcApi
- replace CustomAmountCard with RechargePackageList component
- implement fetching and selection logic for recharge packages
- update UI to use correct recharge data fields
- add validation for selected recharge option
2026-07-13 10:27:03 +08:00
duanshuwen
cadddb5c3f feat(aigc): fully integrate backend API and replace mock data
- Replace all static mock data with real backend API calls for templates, generation tasks, credit balance and recharge
- Remove deprecated mock data files including templates.js, versionOptions.js, records.js and packages.js
- Add useCurrentCredit composable for fetching and managing user credit balance
- Update all components to align with new backend data shapes (e.g. templateItemId instead of id)
- Add loading and disabled states for interactive UI elements
- Implement full WeChat mini-program payment flow for credit recharge
- Fix template and record card UI styling and media handling
- Set developVersion flag to true for testing environment
2026-07-12 21:14:22 +08:00
duanshuwen
7db07273af feat(aigc): add video template display support
add video media detection and rendering in TemplateCard and TemplateVersionHero components
update scss styles to support both image and video media elements
update sample template data to use video covers and adjust template information
comment out unused deprecated culture postcard template entry
2026-07-07 20:00:36 +08:00
duanshuwen
409559e885 feat(aigc): add animated progress and completion redirect
enhance GeneratingProgressPanel with smooth width transition and animated progress increments
add active/complete step styling for progress panel items
emit complete event when generation finishes, add navigation to AIGC detail page on completion
clean up MineSetting component: format menu-item v-for and comment out unused phone row
2026-07-07 11:06:34 +08:00
duanshuwen
a6e369e1d5 style(aigc-topbar): add znicons custom font face 2026-07-07 09:42:49 +08:00
duanshuwen
808ca48668 feat: add persistent gift toast and responsive aigc layouts
update aigc page layouts to use viewport units and dynamic sizing instead of hardcoded 812px height for better device compatibility. replace fixed scss values with css custom properties for easier theming and responsive adjustments. refactor templatecarousel component to calculate dynamic card scale and layout based on screen dimensions. add local storage persistence for gift points toast so it stays closed after dismissal. update home page to respect the persisted toast state.
2026-07-07 09:25:50 +08:00