fix:news ticker api get, article get interceptor, category create parent mandatory
This commit is contained in:
parent
30d7250abf
commit
a614cbe33d
|
|
@ -74,6 +74,7 @@ export default function MasterCategoryTable() {
|
|||
const [refresh, setRefresh] = useState(false);
|
||||
const [tag, setTag] = useState("");
|
||||
const [selectedParent, setSelectedParent] = useState<any>();
|
||||
const [selectedParentValidation, setSelectedParentValidation] = useState("");
|
||||
|
||||
const formOptions = {
|
||||
resolver: zodResolver(createArticleSchema),
|
||||
|
|
@ -122,42 +123,46 @@ export default function MasterCategoryTable() {
|
|||
};
|
||||
|
||||
const onSubmit = async (values: z.infer<typeof createArticleSchema>) => {
|
||||
console.log("values,", values);
|
||||
loading();
|
||||
const formData = {
|
||||
title: values.title,
|
||||
statusId: 1,
|
||||
parentId: selectedParent ? selectedParent.id : 0,
|
||||
tags: values.tags.join(","),
|
||||
description: values.description,
|
||||
};
|
||||
if (selectedParent) {
|
||||
loading();
|
||||
const formData = {
|
||||
title: values.title,
|
||||
statusId: 1,
|
||||
parentId: selectedParent ? selectedParent.id : 0,
|
||||
tags: values.tags.join(","),
|
||||
description: values.description,
|
||||
};
|
||||
|
||||
const response = await createCategory(formData);
|
||||
const response = await createCategory(formData);
|
||||
|
||||
if (response?.error) {
|
||||
error(response.message);
|
||||
return false;
|
||||
}
|
||||
const categoryId = response?.data?.data?.id;
|
||||
const formFiles = new FormData();
|
||||
|
||||
formFiles.append("files", files[0]);
|
||||
const resFile = await uploadCategoryThumbnail(categoryId, formFiles);
|
||||
if (resFile?.error) {
|
||||
error(resFile.message);
|
||||
return false;
|
||||
}
|
||||
close();
|
||||
setRefresh(!refresh);
|
||||
MySwal.fire({
|
||||
title: "Sukses",
|
||||
icon: "success",
|
||||
confirmButtonColor: "#3085d6",
|
||||
confirmButtonText: "OK",
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
if (response?.error) {
|
||||
error(response.message);
|
||||
return false;
|
||||
}
|
||||
});
|
||||
const categoryId = response?.data?.data?.id;
|
||||
const formFiles = new FormData();
|
||||
|
||||
formFiles.append("files", files[0]);
|
||||
const resFile = await uploadCategoryThumbnail(categoryId, formFiles);
|
||||
if (resFile?.error) {
|
||||
error(resFile.message);
|
||||
return false;
|
||||
}
|
||||
close();
|
||||
setRefresh(!refresh);
|
||||
MySwal.fire({
|
||||
title: "Sukses",
|
||||
icon: "success",
|
||||
confirmButtonColor: "#3085d6",
|
||||
confirmButtonText: "OK",
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
setSelectedParentValidation("Parent harus diisi");
|
||||
};
|
||||
|
||||
const handleRemoveFile = (file: File) => {
|
||||
|
|
@ -275,6 +280,11 @@ export default function MasterCategoryTable() {
|
|||
name="sub-module"
|
||||
options={listCategory}
|
||||
/>
|
||||
{selectedParentValidation !== "" && !selectedParent && (
|
||||
<p className="text-red-400 text-sm">
|
||||
{selectedParentValidation}
|
||||
</p>
|
||||
)}
|
||||
</div>
|
||||
<div className="flex flex-col gap-1">
|
||||
<p className="text-sm mt-3">Tag Terkait</p>
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ export default function NewsTicker() {
|
|||
search: "",
|
||||
limit: "10",
|
||||
sortBy: "created_at",
|
||||
isPublish: true,
|
||||
sort: "desc",
|
||||
};
|
||||
const response = await getListArticle(req);
|
||||
|
|
|
|||
|
|
@ -141,19 +141,21 @@ export default function ArticleTable() {
|
|||
|
||||
const setupList = (data: any, type: string) => {
|
||||
const temp = [];
|
||||
for (const element of data) {
|
||||
temp.push({
|
||||
id: element.id,
|
||||
label: element.title || element.fullname,
|
||||
value: element.id,
|
||||
});
|
||||
}
|
||||
if (type === "users") {
|
||||
setUsers(temp);
|
||||
}
|
||||
if (data) {
|
||||
for (const element of data) {
|
||||
temp.push({
|
||||
id: element.id,
|
||||
label: element.title || element.fullname,
|
||||
value: element.id,
|
||||
});
|
||||
}
|
||||
if (type === "users") {
|
||||
setUsers(temp);
|
||||
}
|
||||
|
||||
if (type === "category") {
|
||||
setCategories(temp);
|
||||
if (type === "category") {
|
||||
setCategories(temp);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
|
@ -582,7 +584,7 @@ export default function ArticleTable() {
|
|||
</PopoverContent>
|
||||
</Popover>
|
||||
</div>
|
||||
<div className="flex flex-col gap-1 w-full lg:w-[120px]">
|
||||
<div className="flex flex-col gap-1 w-full lg:w-[140px]">
|
||||
<p className="font-semibold text-sm">End Date</p>
|
||||
|
||||
<Popover
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
"version": "0.0.1",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev",
|
||||
"dev": "next dev -p 4000",
|
||||
"build": "next build",
|
||||
"start": "next start -p 4000",
|
||||
"lint": "next lint"
|
||||
|
|
|
|||
|
|
@ -147,9 +147,8 @@ export async function getCategoryPagination(data: any) {
|
|||
Authorization: `Bearer ${token}`,
|
||||
};
|
||||
|
||||
return await httpGet(
|
||||
`/article-categories?limit=${data?.limit}&page=${data?.page}&title=${data?.search}`,
|
||||
headers
|
||||
return await httpGetInterceptor(
|
||||
`/article-categories?limit=${data?.limit}&page=${data?.page}&title=${data?.search}`
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -202,7 +201,7 @@ export async function getStatisticSummary() {
|
|||
"content-type": "application/json",
|
||||
Authorization: `Bearer ${token}`,
|
||||
};
|
||||
return await httpGet(`/articles/statistic/summary`, headers);
|
||||
return await httpGetInterceptor(`/articles/statistic/summary`);
|
||||
}
|
||||
|
||||
export async function submitApproval(data: {
|
||||
|
|
|
|||
|
|
@ -43,9 +43,9 @@ axiosInterceptorInstance.interceptors.response.use(
|
|||
if (error.response.status === 401 && !originalRequest._retry) {
|
||||
originalRequest._retry = true;
|
||||
const data = {
|
||||
grantType: "refresh_token",
|
||||
// grantType: "refresh_token",
|
||||
refreshToken: refreshToken,
|
||||
clientId: "mediahub-app",
|
||||
// clientId: "web-humas",
|
||||
};
|
||||
console.log("refresh token ", data);
|
||||
const res = await postSignIn(data);
|
||||
|
|
|
|||
Loading…
Reference in New Issue