diff --git a/app/src/components/Modal/ModaEditLabel.js b/app/src/components/Modal/ModaEditLabel.js index a5ce642..b77ec1b 100644 --- a/app/src/components/Modal/ModaEditLabel.js +++ b/app/src/components/Modal/ModaEditLabel.js @@ -154,7 +154,70 @@ const ModalEditLabel = (props) => { + // const uploadImage = async (options) => { + // const { file } = options; + // const base64 = await convertBase64(file) + + // let dataUploadImg = { + // obj_id: crrData._id ? crrData._id : "", + // base64_image_list: [base64.split(',')[1]] + // } + + // let promises = []; + // promises.push( + // axios + // .post(`${HOST}/api/face_images/famous_person`, dataUploadImg, { + // headers: { + // 'Accept': 'application/json', + // 'Content-Type': 'application/json', + // } + // }) + // ) + // await Promise.all(promises) + // .then((data) => { + // let success = false + // let manyFace = false + // let noFace = false + // for (let i = 0; i < data.length; i++) { + // const element = data[i]; + // if (element.data.status === 10000) { + // let listImg = dataUpload + // setHostImg(element.data.image_host) + // listImg.unshift(element.data.data.toString()) + // setDataUpload(...dataUpload) + // success = true + // } else if (element.data.status === 10003 && element.data.message === "Too many face in image") { + // manyFace = true + // } else if (element.data.status === 10003 && element.data.message === "No face in image") { + // noFace = true + // } else { + // success = false + // } + // } + // if (success) { + // let originData = crrImages + // originData.unshift(dataUpload[0].toString()) + // let arrSet = [...new Set(originData)] + // setCrrImages(arrSet) + // setCheckDeleteMulti(false) + // } else if (manyFace) { + // swal("Thất bại", "Ảnh có nhiều khuôn mặt!", "error"); + // } else if (noFace) { + // swal("Thất bại", "Ảnh không có khuôn mặt!", "error"); + // } else { + // swal("Thất bại", "Lỗi hệ thống!", "error"); + // } + // }) + // .catch((err) => { + // console.log(err) + // }); + // }; + const uploadImage = async (options) => { + if (crrImages.length >= 3) { + swal("Cảnh báo", "Bạn chỉ được tải lên tối đa 3 ảnh!", "warning"); + return + } else { const { file } = options; const base64 = await convertBase64(file) @@ -163,54 +226,32 @@ const ModalEditLabel = (props) => { base64_image_list: [base64.split(',')[1]] } - let promises = []; - promises.push( - axios - .post(`${HOST}/api/face_images/famous_person`, dataUploadImg, { - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json', - } - }) - ) - await Promise.all(promises) - .then((data) => { - let success = false - let manyFace = false - let noFace = false - for (let i = 0; i < data.length; i++) { - const element = data[i]; - if (element.data.status === 10000) { - let listImg = dataUpload - setHostImg(element.data.image_host) - listImg.unshift(element.data.data.toString()) - setDataUpload(...dataUpload) - success = true - } else if (element.data.status === 10003 && element.data.message === "Too many face in image") { - manyFace = true - } else if (element.data.status === 10003 && element.data.message === "No face in image") { - noFace = true - } else { - success = false - } - } - if (success) { - let originData = crrImages - originData.unshift(dataUpload[0].toString()) - let arrSet = [...new Set(originData)] - setCrrImages(arrSet) - setCheckDeleteMulti(false) - } else if (manyFace) { - swal("Thất bại", "Ảnh có nhiều khuôn mặt!", "error"); - } else if (noFace) { - swal("Thất bại", "Ảnh không có khuôn mặt!", "error"); - } else { - swal("Thất bại", "Lỗi hệ thống!", "error"); - } + fetch(`${HOST}/api/face_images/famous_person`, { + method: 'POST', + headers: { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + // 'Authorization': token + }, + body: JSON.stringify(dataUploadImg) }) - .catch((err) => { - console.log(err) - }); + .then(res => res.json()) + .then(data => { + if (data.status === 10000) { + setHostImg(data.image_host) + let listImg = [...crrImages] + listImg.unshift(data.data.toString()) + setCrrImages(listImg) + setCheckDeleteMulti(false) + } else if (data.status === 10003) { + if (data.message === "Too many face in image") { + swal("Thất bại", "Ảnh có nhiều khuôn mặt!", "error"); + } else { + swal("Thất bại", "Ảnh không hợp lệ", "error"); + } + } + }) + } }; @@ -351,7 +392,7 @@ const ModalEditLabel = (props) => { customRequest = {uploadImage} accept="image/*" // multiple={true} - beforeUpload={checkLength} + // beforeUpload={checkLength} showUploadList={false} disabled={disableBtn} > diff --git a/app/src/components/Modal/ModalEdit.js b/app/src/components/Modal/ModalEdit.js index 1cba733..9eaf050 100644 --- a/app/src/components/Modal/ModalEdit.js +++ b/app/src/components/Modal/ModalEdit.js @@ -152,7 +152,70 @@ const Modaledit = (props) => { } } + // const uploadImage = async (options) => { + // const { file } = options; + // const base64 = await convertBase64(file) + + // let dataUploadImg = { + // obj_id: crrData._id ? crrData._id : "", + // base64_image_list: [base64.split(',')[1]] + // } + + // let promises = []; + // promises.push( + // axios + // .post(`${HOST}/api/face_images/famous_person`, dataUploadImg, { + // headers: { + // 'Accept': 'application/json', + // 'Content-Type': 'application/json', + // } + // }) + // ) + // await Promise.all(promises) + // .then((data) => { + // let success = false + // let manyFace = false + // let noFace = false + // for (let i = 0; i < data.length; i++) { + // const element = data[i]; + // if (element.data.status === 10000) { + // let listImg = dataUpload + // setHostImg(element.data.image_host) + // listImg.unshift(element.data.data.toString()) + // setDataUpload(...dataUpload) + // success = true + // } else if (element.data.status === 10003 && element.data.message === "Too many face in image") { + // manyFace = true + // } else if (element.data.status === 10003 && element.data.message === "No face in image") { + // noFace = true + // } else { + // success = false + // } + // } + // if (success) { + // let originData = crrImages + // originData.unshift(dataUpload[0].toString()) + // let arrSet = [...new Set(originData)] + // setCrrImages(arrSet) + // setCheckDeleteMulti(false) + // } else if (manyFace) { + // swal("Thất bại", "Ảnh có nhiều khuôn mặt!", "error"); + // } else if (noFace) { + // swal("Thất bại", "Ảnh không có khuôn mặt!", "error"); + // } else { + // swal("Thất bại", "Lỗi hệ thống!", "error"); + // } + // }) + // .catch((err) => { + // console.log(err) + // }); + // }; + const uploadImage = async (options) => { + if (crrImages.length >= 3) { + swal("Cảnh báo", "Bạn chỉ được tải lên tối đa 3 ảnh!", "warning"); + return + } else { const { file } = options; const base64 = await convertBase64(file) @@ -161,58 +224,34 @@ const Modaledit = (props) => { base64_image_list: [base64.split(',')[1]] } - let promises = []; - promises.push( - axios - .post(`${HOST}/api/face_images/famous_person`, dataUploadImg, { - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json', - } - }) - ) - await Promise.all(promises) - .then((data) => { - let success = false - let manyFace = false - let noFace = false - for (let i = 0; i < data.length; i++) { - const element = data[i]; - if (element.data.status === 10000) { - let listImg = dataUpload - setHostImg(element.data.image_host) - listImg.unshift(element.data.data.toString()) - setDataUpload(...dataUpload) - success = true - } else if (element.data.status === 10003 && element.data.message === "Too many face in image") { - manyFace = true - } else if (element.data.status === 10003 && element.data.message === "No face in image") { - noFace = true - } else { - success = false - } - } - if (success) { - let originData = crrImages - originData.unshift(dataUpload[0].toString()) - let arrSet = [...new Set(originData)] - setCrrImages(arrSet) - setCheckDeleteMulti(false) - } else if (manyFace) { - swal("Thất bại", "Ảnh có nhiều khuôn mặt!", "error"); - } else if (noFace) { - swal("Thất bại", "Ảnh không có khuôn mặt!", "error"); - } else { - swal("Thất bại", "Lỗi hệ thống!", "error"); - } + fetch(`${HOST}/api/face_images/famous_person`, { + method: 'POST', + headers: { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + // 'Authorization': token + }, + body: JSON.stringify(dataUploadImg) }) - .catch((err) => { - console.log(err) - }); + .then(res => res.json()) + .then(data => { + if (data.status === 10000) { + setHostImg(data.image_host) + let listImg = [...crrImages] + listImg.unshift(data.data.toString()) + setCrrImages(listImg) + setCheckDeleteMulti(false) + } else if (data.status === 10003) { + if (data.message === "Too many face in image") { + swal("Thất bại", "Ảnh có nhiều khuôn mặt!", "error"); + } else { + swal("Thất bại", "Ảnh không hợp lệ", "error"); + } + } + }) + } }; - - const convertBase64 = (file) => { return new Promise((resolve, reject) => { const fileReader = new FileReader(); @@ -348,8 +387,8 @@ const Modaledit = (props) => {