Browse Source

Remove unnecessary request

pull/2/head
Wahyu Ramadhan 2 years ago
parent
commit
f8946f1c12
  1. 5
      src/views/SimproV2/CreatedProyek/DialogGantt.js
  2. 5
      src/views/SimproV2/CreatedProyek/DialogHierarchy.js
  3. 32
      src/views/SimproV2/CreatedProyek/DialogUserGantt.js
  4. 96
      src/views/SimproV2/CreatedProyek/index.js

5
src/views/SimproV2/CreatedProyek/DialogGantt.js

@ -39,10 +39,6 @@ const DialogGantt = ({ openDialog, closeDialog, toggleDialog, idTask, proyekName
} }
}, [hierarchyId, idTask, openDialog]) }, [hierarchyId, idTask, openDialog])
useEffect(() => {
getDataHumanResource();
}, [])
useEffect(() => { useEffect(() => {
if (!openDialog) { if (!openDialog) {
setDataGantt([]); setDataGantt([]);
@ -274,7 +270,6 @@ const DialogGantt = ({ openDialog, closeDialog, toggleDialog, idTask, proyekName
<DialogUserGantt <DialogUserGantt
idGantt={idGantt} idGantt={idGantt}
humanResource={humanResource}
openDialog={openDialogUserGantt} openDialog={openDialogUserGantt}
toggleDialog={toggleDialogUser} toggleDialog={toggleDialogUser}
closeDialog={closeDialogUser} closeDialog={closeDialogUser}

5
src/views/SimproV2/CreatedProyek/DialogHierarchy.js

@ -46,10 +46,6 @@ const DialogHierarchy = ({ openDialog, closeDialog, toggleDialog, idTask, proyek
} }
}, [saveHierarchy, idTask, openDialog, closeDialog, openDialogFormGantt]) }, [saveHierarchy, idTask, openDialog, closeDialog, openDialogFormGantt])
useEffect(() => {
getDataHumanResource();
}, [])
useEffect(() => { useEffect(() => {
if (!openDialog) { if (!openDialog) {
setDataHierarchy([]); setDataHierarchy([]);
@ -333,7 +329,6 @@ const DialogHierarchy = ({ openDialog, closeDialog, toggleDialog, idTask, proyek
<DialogUserGantt <DialogUserGantt
idGantt={idGantt} idGantt={idGantt}
humanResource={humanResource}
openDialog={openDialogUserGantt} openDialog={openDialogUserGantt}
toggleDialog={toggleDialogUser} toggleDialog={toggleDialogUser}
closeDialog={closeDialogUser} closeDialog={closeDialogUser}

32
src/views/SimproV2/CreatedProyek/DialogUserGantt.js

@ -2,11 +2,11 @@ import React, { useEffect, useState } from 'react'
import { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap'; import { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
import { Button, Form } from 'reactstrap'; import { Button, Form } from 'reactstrap';
import axios from "../../../const/interceptorApi"; import axios from "../../../const/interceptorApi";
import { USER_VERSION_GANTT_ADDS, USER_VERSION_GANTT_SEARCH } from '../../../const/ApiConst'; import { USER_VERSION_GANTT_ADDS, USER_VERSION_GANTT_SEARCH, USER_LIST} from '../../../const/ApiConst';
import { Transfer } from 'antd'; import { Transfer } from 'antd';
import 'antd/dist/antd.css'; import 'antd/dist/antd.css';
const DialogUserGantt = ({ openDialog, closeDialog, toggleDialog, idGantt, humanResource }) => { const DialogUserGantt = ({ openDialog, closeDialog, toggleDialog, idGantt}) => {
const token = localStorage.getItem("token") const token = localStorage.getItem("token")
const HEADER = { const HEADER = {
headers: { headers: {
@ -16,6 +16,7 @@ const DialogUserGantt = ({ openDialog, closeDialog, toggleDialog, idGantt, human
} }
const [id, setId] = useState(0) const [id, setId] = useState(0)
const [targetKeys, setTargetKeys] = useState([]) const [targetKeys, setTargetKeys] = useState([])
const [humanResource, setHumanResource] = useState([])
const handleCLearData = () => { const handleCLearData = () => {
@ -26,6 +27,8 @@ const DialogUserGantt = ({ openDialog, closeDialog, toggleDialog, idGantt, human
useEffect(() => { useEffect(() => {
if(!openDialog){ if(!openDialog){
handleCLearData() handleCLearData()
} else {
getDataHumanResource();
} }
}, [openDialog]) }, [openDialog])
@ -35,6 +38,31 @@ const DialogUserGantt = ({ openDialog, closeDialog, toggleDialog, idGantt, human
} }
}, [idGantt]) }, [idGantt])
const getDataHumanResource = async () => {
const result = await axios
.get(USER_LIST, HEADER)
.then(res => res)
.catch((error) => error.response);
if (result && result.status == 200) {
setTransferUser(result.data.data);
} else {
}
}
const setTransferUser = (data) => {
const finalData = []
data.map((val, index) => {
let data = {
key: val.id,
title: val.name
}
finalData.push(data)
});
setHumanResource(finalData)
}
const getUserGantt = async () => { const getUserGantt = async () => {
const payload = { const payload = {
"columns": [ "columns": [

96
src/views/SimproV2/CreatedProyek/index.js

@ -134,16 +134,32 @@ const CreatedProyek = ({ params, ...props }) => {
const pageName = params.name; const pageName = params.name;
useEffect(() => { useEffect(() => {
// getDataUserResource() if (openDialogMaterial) {
getDataMaterialResource(); getDataMaterialResource();
getDataToolsResource(); }
handleGetTipeProject(); }, [openDialogMaterial]);
handleGetPhaseProject();
handleGetDivisions(); useEffect(() => {
handleGetDataPm(); if (openDialogTools) {
getDataK3(); getDataToolsResource();
}, []); }
}, [openDialogTools]);
useEffect(() => {
if (openDialogAssignK3) {
getDataK3();
}
}, [openDialogAssignK3]);
useEffect(() => {
if (openDialogProyek) {
handleGetTipeProject();
handleGetPhaseProject();
handleGetDivisions();
handleGetDataPm();
}
}, [openDialogProyek])
useEffect(() => { useEffect(() => {
getDataProyek(); getDataProyek();
@ -307,32 +323,6 @@ const CreatedProyek = ({ params, ...props }) => {
} }
}; };
const getdataHierarchy = async (idTask) => {
setLoadHierarchy(true);
const payload = {
columns: [
{
name: "project_id",
logic_operator: "=",
value: idTask,
operator: "AND",
},
],
};
const result = await axios
.post(HIERARCHY_FTTH_SEARCH, payload, HEADER)
.then((res) => res)
.catch((error) => error.response);
if (result && result.status == 200) {
setDataHierarchy(result.data.data);
setLoadHierarchy(false);
} else {
NotificationManager.error(
`Data gantt project gagal terload silahkan coba lagi!`,
"Failed!!"
);
}
};
const getDataToolsResource = async () => { const getDataToolsResource = async () => {
const result = await axios const result = await axios
.get(TOOLS_RESOURCE_LIST, HEADER) .get(TOOLS_RESOURCE_LIST, HEADER)
@ -843,9 +833,28 @@ const CreatedProyek = ({ params, ...props }) => {
["Project Name", "Budget", "Project Type", "PM", "Time Project"], ["Project Name", "Budget", "Project Type", "PM", "Time Project"],
]; ];
const payload = { const payload = {
paging: { start: 0, length: -1 }, columns: [
joins: [], {
orders: { columns: ["id"], ascending: false }, name: "nama",
logic_operator: "ilike",
value: search,
operator: "AND",
},
],
joins: [
{
name: "m_users",
column_join: "pm_id",
column_results: ["name", "username"],
},
{
name: "m_type_proyek",
column_join: "type_proyek_id",
column_results: ["name", "description"],
},
// { "name": "subproyeks.m_subproyek", "column_join": "parent_id", "column_results": ["nama", "biaya", "color_progress", "jumlah_pekerja", "pic", "mulai_proyek", "akhir_proyek", "biaya_actual", "persentase_progress_plan", "persentase_progress_actual"] }
],
orders: { columns: ["id"], ascending: false },
}; };
const result = await axios const result = await axios
@ -1084,7 +1093,6 @@ const CreatedProyek = ({ params, ...props }) => {
{ {
text.type_proyek_id == 9 ? text.type_proyek_id == 9 ?
<Button <Button
onClick={() => getdataHierarchy(text.id)}
size="small" size="small"
type="link" type="link"
style={{ color: "green" }} style={{ color: "green" }}
@ -1210,7 +1218,7 @@ const CreatedProyek = ({ params, ...props }) => {
dataPM={dataPm} dataPM={dataPm}
/> />
), ),
[openDialogProyek] [openDialogProyek, dataPm, dataDivisions, dataPhaseProject, dataTypeProyek, idTask]
); );
const RenderDialogFormMaterial = useMemo( const RenderDialogFormMaterial = useMemo(
@ -1226,7 +1234,7 @@ const CreatedProyek = ({ params, ...props }) => {
proyekName={proyekName} proyekName={proyekName}
/> />
), ),
[openDialogMaterial] [openDialogMaterial, proyekName, materialResource, materialProyek, userProyek, idTask]
); );
const RenderDialogTableTools = useMemo( const RenderDialogTableTools = useMemo(
@ -1241,7 +1249,7 @@ const CreatedProyek = ({ params, ...props }) => {
proyekName={proyekName} proyekName={proyekName}
/> />
), ),
[openDialogTools] [openDialogTools, proyekName, userProyek, toolsResource, idTask]
); );
// DialogAsignHr // DialogAsignHr
@ -1276,7 +1284,7 @@ const CreatedProyek = ({ params, ...props }) => {
dataK3={dataK3} dataK3={dataK3}
/> />
), ),
[openDialogAssignK3] [openDialogAssignK3, dataK3]
); );
const RenderDialogDoc = useMemo( const RenderDialogDoc = useMemo(

Loading…
Cancel
Save