perf(admin-web): remove separate parse request on file select
File was being uploaded twice: 1. POST /parse on file select (for form auto-fill) 2. POST /upload on submit Remove the parse network call entirely. Server already parses the APK/IPA buffer as part of the upload handler. User fills form fields manually. Single upload, single public-internet transfer. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
7933f3fe4a
commit
c70b4bac6a
|
|
@ -3,15 +3,12 @@
|
|||
import type { ChangeEvent } from 'react';
|
||||
import type { AppType } from '@/domain/entities';
|
||||
import { useUploadStore } from '@/store/zustand/upload.store';
|
||||
import {
|
||||
parsePackageUseCase,
|
||||
uploadVersionUseCase,
|
||||
} from '@/application/use-cases/version.use-cases';
|
||||
import { uploadVersionUseCase } from '@/application/use-cases/version.use-cases';
|
||||
|
||||
export function useUpload(appType: AppType, onSuccess: () => void) {
|
||||
const store = useUploadStore();
|
||||
|
||||
const handleFileChange = async (e: ChangeEvent<HTMLInputElement>) => {
|
||||
const handleFileChange = (e: ChangeEvent<HTMLInputElement>) => {
|
||||
const f = e.target.files?.[0];
|
||||
if (!f) return;
|
||||
|
||||
|
|
@ -20,20 +17,6 @@ export function useUpload(appType: AppType, onSuccess: () => void) {
|
|||
|
||||
if (f.name.endsWith('.apk')) store.setPlatform('ANDROID');
|
||||
else if (f.name.endsWith('.ipa')) store.setPlatform('IOS');
|
||||
|
||||
store.setIsParsing(true);
|
||||
try {
|
||||
console.log('[useUpload] Parsing:', f.name, (f.size / 1024 / 1024).toFixed(1) + 'MB');
|
||||
const info = await parsePackageUseCase.execute(f);
|
||||
console.log('[useUpload] Parse result:', info);
|
||||
if (info?.versionName) store.setVersionName(info.versionName);
|
||||
if (info?.versionCode) store.setBuildNumber(String(info.versionCode));
|
||||
if (info?.minSdkVersion) store.setMinOsVersion(info.minSdkVersion);
|
||||
} catch (err) {
|
||||
console.warn('[useUpload] Parse failed:', (err as Error)?.message);
|
||||
store.setParseWarning('无法自动解析安装包信息,请手动填写版本号');
|
||||
}
|
||||
store.setIsParsing(false);
|
||||
};
|
||||
|
||||
const handleSubmit = async () => {
|
||||
|
|
|
|||
Loading…
Reference in New Issue