2025-07-04 14:13:25 -04:00

141 lines
6.1 KiB
JavaScript

import React, {useState, useEffect} from "react";
// import { useDispatch } from "react-redux";
import { useNavigate, useParams } from "react-router-dom";
// import { customerSlice } from "./../../store";
import { AuthService, ResourceService } from "../../services";
import { Spinner, Breadcrumb, BreadcrumbItem, Tabs, Tab } from "react-bootstrap";
import { Download, Pencil, Archive } from "react-bootstrap-icons";
const ViewResource = () => {
const navigate = useNavigate();
const urlParams = useParams();
const [currentResource, setCurrentResource] = useState(undefined);
const params = new URLSearchParams(window.location.search);
const redirectTo = () => {
navigate(`/medical/resources/list`);
}
const goToEdit = (id) => {
navigate(`/medical/resources/edit/${id}`)
}
const deactivateResource = (id) => {
const data = {
status: 'inactive'
};
ResourceService.disableResource(id, data).then(() => {
redirectTo();
})
}
useEffect(() => {
if (!AuthService.canAccessLegacySystem()) {
window.alert('You haven\'t login yet OR this user does not have access to this page. Please change an admin account to login.')
AuthService.logout();
navigate(`/login`);
}
ResourceService.getResource(urlParams.id).then(resourceData => {
setCurrentResource(resourceData.data);
})
}, []);
return (
<>
<div className="list row mb-4">
<Breadcrumb>
<Breadcrumb.Item>Medical</Breadcrumb.Item>
<Breadcrumb.Item active>
Provider Information
</Breadcrumb.Item>
<Breadcrumb.Item active>
View Provider Details
</Breadcrumb.Item>
</Breadcrumb>
<div className="col-md-12 text-primary">
<h4>View Provider Information <button className="btn btn-link btn-sm" onClick={() => {redirectTo()}}>Back</button></h4>
</div>
</div>
<div className="app-main-content-list-container">
<div className="app-main-content-list-func-container">
<Tabs defaultActiveKey="providerInfo" id="providerss-tab">
<Tab eventKey="providerInfo" title="Provider Information">
<h6 className="text-primary">Basic Information</h6>
<div className="app-main-content-fields-section">
<div className="field-body">
<div className="field-label">Name</div>
<div className="field-value">{currentResource?.name}</div>
</div>
<div className="field-body">
<div className="field-label">Office Name</div>
<div className="field-value">{currentResource?.name_original}</div>
</div>
<div className="field-body">
<div className="field-label">Branch Name</div>
<div className="field-value">{currentResource?.name_branch}</div>
</div>
<div className="field-body">
<div className="field-label">Specialty</div>
<div className="field-value">{currentResource?.specialty}</div>
</div>
<div className="field-body">
<div className="field-label">Type</div>
<div className="field-value">{currentResource?.type}</div>
</div>
</div>
<h6 className="text-primary">Contact Information</h6>
<div className="app-main-content-fields-section">
<div className="field-body">
<div className="field-label">Office Phone Number</div>
<div className="field-value">{currentResource?.phone}</div>
</div>
<div className="field-body">
<div className="field-label">Contact</div>
<div className="field-value">{currentResource?.contact}</div>
</div>
<div className="field-body">
<div className="field-label">Fax Number</div>
<div className="field-value">{currentResource?.fax}</div>
</div>
</div>
<h6 className="text-primary">Provider Address</h6>
<div className="app-main-content-fields-section">
<div className="field-body">
<div className="field-label">Address</div>
<div className="field-value">{`${currentResource?.address}, ${currentResource?.city}, ${currentResource?.state}, ${currentResource?.zipcode}`}</div>
</div>
</div>
<h6 className="text-primary">Additional Information</h6>
<div className="app-main-content-fields-section">
<div className="field-body">
<div className="field-label">Note</div>
<div className="field-value">{currentResource?.note}</div>
</div>
<div className="field-body">
<div className="field-label">Description</div>
<div className="field-value">{currentResource?.description}</div>
</div>
<div className="field-body">
<div className="field-label">Color</div>
<div className="field-value">{currentResource?.color}</div>
</div>
<div className="field-body">
<div className="field-label">Status</div>
<div className="field-value">{currentResource?.status}</div>
</div>
</div>
</Tab>
</Tabs>
<div className="list-func-panel">
<button className="btn btn-primary me-2" onClick={() => goToEdit(currentResource?.id)}><Pencil size={16} className="me-2"></Pencil>Edit</button>
<button className="btn btn-primary me-2" onClick={() => deactivateResource()}><Archive size={16} className="me-2"></Archive>Archive</button>
{/* <button className="btn btn-primary"><Download size={16} className="me-2"></Download>Download</button> */}
</div>
</div>
</div>
</>
);
};
export default ViewResource;