|
|
|
@ -15,6 +15,7 @@ export default function companyPage() {
|
|
|
|
|
const [sliderProgress, setSliderProgress] = useState(50);
|
|
|
|
|
let addNodeChildFunc = null;
|
|
|
|
|
let orgChart = null;
|
|
|
|
|
const [disabled, setDisabled] = useState(false);
|
|
|
|
|
|
|
|
|
|
let topBarSearchRequest = null;
|
|
|
|
|
const [hasRight, setHasRight] = useState('');
|
|
|
|
@ -72,7 +73,7 @@ export default function companyPage() {
|
|
|
|
|
function getDepartmentImage() {
|
|
|
|
|
let index = Math.floor(Math.random() * 8) + 1;
|
|
|
|
|
// return `./img/department/${index}.png`;
|
|
|
|
|
return `./img/department/1.png`;
|
|
|
|
|
return `./img/department/2.png`;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取部门图片
|
|
|
|
@ -110,7 +111,7 @@ export default function companyPage() {
|
|
|
|
|
} else if (d.data.ftype == 1) {
|
|
|
|
|
return 160;
|
|
|
|
|
} else if (d.data.ftype == 2) {
|
|
|
|
|
return 144;
|
|
|
|
|
return 164;
|
|
|
|
|
}
|
|
|
|
|
return 200;
|
|
|
|
|
};
|
|
|
|
@ -121,7 +122,7 @@ export default function companyPage() {
|
|
|
|
|
} else if (d.data.ftype == 1) {
|
|
|
|
|
return 160;
|
|
|
|
|
} else if (d.data.ftype == 2) {
|
|
|
|
|
return 56;
|
|
|
|
|
return 106;
|
|
|
|
|
}
|
|
|
|
|
return 120;
|
|
|
|
|
};
|
|
|
|
@ -153,41 +154,44 @@ export default function companyPage() {
|
|
|
|
|
</div>
|
|
|
|
|
</div>`;
|
|
|
|
|
} else if (d.data.ftype == 1) {
|
|
|
|
|
return `<div onclick="if(${
|
|
|
|
|
d.data.fisvitual
|
|
|
|
|
}==1) return;window.open('${subcompanyUrl}', '_blank')">
|
|
|
|
|
return `<div>
|
|
|
|
|
<div style="width: 85px; height: 85px; border: 1px solid #66BAF5; border-radius: 50%;text-align: center; line-height: 85px; margin: 0 auto;display:flex;justify-content:center;align-items:center">
|
|
|
|
|
<img src="${getSubcompanyImage()}" />
|
|
|
|
|
<img src="./img/company.png" />
|
|
|
|
|
</div>
|
|
|
|
|
<div style="width: 136px; border: 1px solid #66BAF5; margin: 10px auto 0px; border-radius: 23px; text-align: center;
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
font-family: Microsoft YaHei-Regular, Microsoft YaHei;
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
color: #333333;
|
|
|
|
|
line-height: 18px;
|
|
|
|
|
padding: 15px 10px;
|
|
|
|
|
">
|
|
|
|
|
${d.data.fname}
|
|
|
|
|
<div style="text-align: center;width: 180px; border: 1px solid #66BAF5; margin: 10px auto 0px; border-radius: 23px; padding: 15px 10px;font-family: Microsoft YaHei-Regular, Microsoft YaHei;">
|
|
|
|
|
<span onclick="if(${d.data.fisvitual}==1) return;window.open('${subcompanyUrl}', '_blank')" style="font-size: 14px;
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
color: blue;;
|
|
|
|
|
line-height: 18px;">${d.data.fname}</span>
|
|
|
|
|
<div style="font-weight: 400;margin-top: 3px;">
|
|
|
|
|
<span>负责人: ${d.data.fleadername}</span>
|
|
|
|
|
<span>在岗: ${d.data.empNum}</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>`;
|
|
|
|
|
} else if (d.data.ftype == 2) {
|
|
|
|
|
return `
|
|
|
|
|
<div style="width: 100%; height: 100%; background-size: 100% 100%;" onclick="if(${
|
|
|
|
|
d.data.fisvitual
|
|
|
|
|
}==1) return;window.open('${departmentUrl}')">
|
|
|
|
|
<div style='position:absolute'>
|
|
|
|
|
<img src='./img/company_job_label.png'/></div>
|
|
|
|
|
<div style="padding-left: 8px; padding-top: 23px;display:flex;align-items:center">
|
|
|
|
|
<img src="${getDepartmentImage()}"/>
|
|
|
|
|
<span style="
|
|
|
|
|
margin-left: 3px;
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
font-family: Microsoft YaHei-Regular, Microsoft YaHei;
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
color: #333333;
|
|
|
|
|
">${d.data.fname}</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div style="width: 100%; height: 100%; background-size: 100% 100%;" onclick="if(${
|
|
|
|
|
d.data.fisvitual
|
|
|
|
|
}==1) return;window.open('${departmentUrl}')">
|
|
|
|
|
<div style='position:absolute;height: 106px;'>
|
|
|
|
|
<img style='height: 106px;width: 164px;' src='./img/company_job_label.png'/></div>
|
|
|
|
|
<div style="padding-left: 8px; padding-top: 43px;display:flex;align-items:center">
|
|
|
|
|
<img src="${getDepartmentImage()}"/>
|
|
|
|
|
<div style="
|
|
|
|
|
margin-left: 3px;
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
font-family: Microsoft YaHei-Regular, Microsoft YaHei;
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
color: #333333;
|
|
|
|
|
">${d.data.fname}</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div style="font-weight: 400;margin-top: 3px;padding-left: 8px;">
|
|
|
|
|
<span>负责人: ${d.data.fleadername}</span>
|
|
|
|
|
<span>在岗: ${d.data.empNum}</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
`;
|
|
|
|
|
}
|
|
|
|
|
return `<div>${d.data.fname}</div>`;
|
|
|
|
@ -297,6 +301,7 @@ export default function companyPage() {
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const handleSynchronous = (requestData) => {
|
|
|
|
|
setDisabled(true);
|
|
|
|
|
let api = '/api/bs/hrmorganization/orgchart/synchronousData';
|
|
|
|
|
fetch(api)
|
|
|
|
|
.then((res) => res.json())
|
|
|
|
@ -306,6 +311,7 @@ export default function companyPage() {
|
|
|
|
|
} else {
|
|
|
|
|
message.error('数据同步失败');
|
|
|
|
|
}
|
|
|
|
|
setDisabled(false);
|
|
|
|
|
//this.handleSearch(requestData);
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
@ -354,6 +360,7 @@ export default function companyPage() {
|
|
|
|
|
handleSynchronous(requestData);
|
|
|
|
|
}}
|
|
|
|
|
type="company"
|
|
|
|
|
disabled={disabled}
|
|
|
|
|
url="/api/bs/hrmorganization/orgchart/getCondition?type=company"
|
|
|
|
|
/>
|
|
|
|
|
<ToolBar
|
|
|
|
|