Merge branch 'develop' into dev
All checks were successful
Build & Deploy on Dev / build (push) Successful in 1m5s
All checks were successful
Build & Deploy on Dev / build (push) Successful in 1m5s
This commit is contained in:
commit
9b89799903
2 changed files with 2 additions and 9 deletions
|
|
@ -58,7 +58,7 @@ async function onClickDownloadKp7(type: string) {
|
|||
store.profileId,
|
||||
dataStore.officerType == "OFFICER" ? "profile" : "profile-employee",
|
||||
);
|
||||
const fileName = type === "FULL" ? "ทปอ สามัญ" : "ประวัติแบบย่อ";
|
||||
const fileName = type === "FULL" ? "ทปอ. สามัญ" : "ประวัติแบบย่อ";
|
||||
await http
|
||||
.get(url)
|
||||
.then(async (res) => {
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@ async function genReport(data: any, fileName: string, type: string = "docx") {
|
|||
.then((res) => {
|
||||
const responseData = res.data;
|
||||
if (responseData) {
|
||||
// --- ส่วนที่ปรับปรุง 1: กำหนด MIME Type ให้ตรงกับไฟล์ที่รับมาจริง ---
|
||||
const mimeType =
|
||||
type === "docx"
|
||||
? "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
|
||||
|
|
@ -31,21 +30,15 @@ async function genReport(data: any, fileName: string, type: string = "docx") {
|
|||
const blob = new Blob([responseData], { type: mimeType });
|
||||
const url = URL.createObjectURL(blob);
|
||||
|
||||
// --- ส่วนที่ปรับปรุง 2: จัดการชื่อไฟล์ (ป้องกันนามสกุลซ้อน) ---
|
||||
// ตัดช่องว่างหัวท้าย และตัดนามสกุลไฟล์เดิมที่อาจติดมาออก (.pdf, .docx ฯลฯ)
|
||||
const baseName = fileName.trim().replace(/\.[^/.]+$/, "");
|
||||
const baseName = fileName.trim();
|
||||
const extension = type === "docx" ? "docx" : "pdf";
|
||||
|
||||
const link = document.createElement("a");
|
||||
link.href = url;
|
||||
link.download = `${baseName}.${extension}`;
|
||||
|
||||
// --- ส่วนที่ปรับปรุง 3: สำหรับ Android/Mobile ---
|
||||
// บางครั้งการ click() ทันทีอาจถูก block หรือมีปัญหา ต้อง append เข้าไปจริงๆ
|
||||
document.body.appendChild(link);
|
||||
link.click();
|
||||
|
||||
// หน่วงเวลาเล็กน้อยก่อนลบ element และ revoke URL เพื่อให้ Browser ทำงานเสร็จ
|
||||
setTimeout(() => {
|
||||
document.body.removeChild(link);
|
||||
URL.revokeObjectURL(url);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue