Genel düzenlemeler
This commit is contained in:
parent
260784d016
commit
f17d1da1bd
6 changed files with 4 additions and 189 deletions
|
|
@ -12,7 +12,7 @@ export const mockCalendarEvents: MaintenanceCalendarEvent[] = [
|
||||||
date: new Date("2024-02-12"),
|
date: new Date("2024-02-12"),
|
||||||
startTime: "09:00",
|
startTime: "09:00",
|
||||||
endTime: "11:00",
|
endTime: "11:00",
|
||||||
status: "scheduled",
|
status: WorkOrderStatusEnum.Created,
|
||||||
priority: PriorityEnum.High,
|
priority: PriorityEnum.High,
|
||||||
assignedTo: "Mehmet Kaya",
|
assignedTo: "Mehmet Kaya",
|
||||||
workCenterCode: "CNC-001",
|
workCenterCode: "CNC-001",
|
||||||
|
|
@ -25,7 +25,7 @@ export const mockCalendarEvents: MaintenanceCalendarEvent[] = [
|
||||||
date: new Date("2024-02-15"),
|
date: new Date("2024-02-15"),
|
||||||
startTime: "08:00",
|
startTime: "08:00",
|
||||||
endTime: "12:00",
|
endTime: "12:00",
|
||||||
status: "scheduled",
|
status: WorkOrderStatusEnum.Created,
|
||||||
priority: PriorityEnum.Urgent,
|
priority: PriorityEnum.Urgent,
|
||||||
assignedTo: "Ali Demir",
|
assignedTo: "Ali Demir",
|
||||||
workCenterCode: "COMP-001",
|
workCenterCode: "COMP-001",
|
||||||
|
|
@ -64,7 +64,7 @@ export const mockCalendarEvents: MaintenanceCalendarEvent[] = [
|
||||||
date: new Date("2024-02-14"),
|
date: new Date("2024-02-14"),
|
||||||
startTime: "13:00",
|
startTime: "13:00",
|
||||||
endTime: "15:00",
|
endTime: "15:00",
|
||||||
status: "scheduled",
|
status: WorkOrderStatusEnum.Created,
|
||||||
priority: PriorityEnum.Normal,
|
priority: PriorityEnum.Normal,
|
||||||
assignedTo: "Sema Korkmaz",
|
assignedTo: "Sema Korkmaz",
|
||||||
workCenterCode: "HYD-001",
|
workCenterCode: "HYD-001",
|
||||||
|
|
@ -77,7 +77,7 @@ export const mockCalendarEvents: MaintenanceCalendarEvent[] = [
|
||||||
date: new Date("2024-02-16"),
|
date: new Date("2024-02-16"),
|
||||||
startTime: "16:00",
|
startTime: "16:00",
|
||||||
endTime: "18:00",
|
endTime: "18:00",
|
||||||
status: "scheduled",
|
status: WorkOrderStatusEnum.Created,
|
||||||
priority: PriorityEnum.Low,
|
priority: PriorityEnum.Low,
|
||||||
assignedTo: "Hasan Çelik",
|
assignedTo: "Hasan Çelik",
|
||||||
workCenterCode: "ELEC-001",
|
workCenterCode: "ELEC-001",
|
||||||
|
|
|
||||||
|
|
@ -1,36 +0,0 @@
|
||||||
import Card from '@/components/ui/Card'
|
|
||||||
import GrowShrinkTag from '@/components/shared/GrowShrinkTag'
|
|
||||||
import { showDbDateAsIs } from '@/utils/dateUtils'
|
|
||||||
|
|
||||||
const Widget = ({
|
|
||||||
label,
|
|
||||||
datavalue,
|
|
||||||
datagrowShrink,
|
|
||||||
valuePrefix,
|
|
||||||
date,
|
|
||||||
}: {
|
|
||||||
label: string
|
|
||||||
datavalue: number
|
|
||||||
datagrowShrink: number
|
|
||||||
valuePrefix: string
|
|
||||||
date: string
|
|
||||||
}) => {
|
|
||||||
return (
|
|
||||||
<Card>
|
|
||||||
<h6 className="font-semibold mb-4 text-sm">{label}</h6>
|
|
||||||
<div className="flex justify-between items-center">
|
|
||||||
<div>
|
|
||||||
<h3 className="font-bold">
|
|
||||||
{datavalue} {valuePrefix}
|
|
||||||
</h3>
|
|
||||||
<p>
|
|
||||||
<span className="font-semibold">{showDbDateAsIs(date)}</span>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<GrowShrinkTag value={datagrowShrink} suffix="%" />
|
|
||||||
</div>
|
|
||||||
</Card>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default Widget
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
import { Card } from '@/components/ui'
|
|
||||||
import Chart from '../list/Chart'
|
|
||||||
|
|
||||||
const WidgetBarChart = ({
|
|
||||||
chartKey,
|
|
||||||
startDateFormat,
|
|
||||||
endDateFormat,
|
|
||||||
}: {
|
|
||||||
chartKey: string
|
|
||||||
startDateFormat: string
|
|
||||||
endDateFormat: string
|
|
||||||
}) => {
|
|
||||||
return (
|
|
||||||
<Card className={'col-span-2'}>
|
|
||||||
<div className="flex items-center justify-between">
|
|
||||||
<h4>Top Selling</h4>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<Chart
|
|
||||||
key={`Chart-${chartKey}`}
|
|
||||||
listFormCode="Chart-0001"
|
|
||||||
filter={`{"startDate":"${startDateFormat}", "endDate":"${endDateFormat}"}`}
|
|
||||||
/>
|
|
||||||
</Card>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default WidgetBarChart
|
|
||||||
|
|
@ -1,45 +0,0 @@
|
||||||
import DatePickerRange from '@/components/ui/DatePicker/DatePickerRange'
|
|
||||||
import Button from '@/components/ui/Button'
|
|
||||||
import { FaFilter } from 'react-icons/fa';
|
|
||||||
import { useLocalization } from '@/utils/hooks/useLocalization'
|
|
||||||
import dayjs from 'dayjs'
|
|
||||||
|
|
||||||
const WidgetFilter = ({
|
|
||||||
onFilter,
|
|
||||||
handleDateChange,
|
|
||||||
startDate,
|
|
||||||
endDate
|
|
||||||
}: {
|
|
||||||
onFilter(): void,
|
|
||||||
handleDateChange(value: [Date | null, Date | null]): void,
|
|
||||||
startDate: number,
|
|
||||||
endDate: number
|
|
||||||
}) => {
|
|
||||||
const { translate } = useLocalization()
|
|
||||||
const dateFormat = 'MMM DD, YYYY'
|
|
||||||
|
|
||||||
return (
|
|
||||||
<div className="lg:flex items-center justify-between mb-4 gap-3">
|
|
||||||
<div className="mb-4 lg:mb-0">
|
|
||||||
<h3>{translate('::Welcome')}</h3>
|
|
||||||
</div>
|
|
||||||
<div className="flex flex-col lg:flex-row lg:items-center gap-3">
|
|
||||||
<DatePickerRange
|
|
||||||
value={[
|
|
||||||
dayjs(startDate * 1000).toDate(),
|
|
||||||
dayjs(endDate * 1000).toDate()
|
|
||||||
]}
|
|
||||||
inputFormat={dateFormat}
|
|
||||||
size="sm"
|
|
||||||
style={{ width: '100%' }}
|
|
||||||
onChange={handleDateChange}
|
|
||||||
/>
|
|
||||||
<Button size="sm" icon={<FaFilter />} onClick={onFilter}>
|
|
||||||
Filter
|
|
||||||
</Button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default WidgetFilter
|
|
||||||
|
|
@ -1,39 +0,0 @@
|
||||||
import { Card, Progress } from '@/components/ui'
|
|
||||||
|
|
||||||
const WidgetProgress = ({ percent }: { percent: number }) => {
|
|
||||||
const ProgressInfo = ({ precent }: { precent?: string }) => {
|
|
||||||
return (
|
|
||||||
<div>
|
|
||||||
<h3 className="font-bold">{precent}%</h3>
|
|
||||||
<p className="text-center">Average</p>
|
|
||||||
</div>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Card>
|
|
||||||
<h4>Performance</h4>
|
|
||||||
<div className="mt-10">
|
|
||||||
<Progress
|
|
||||||
variant="circle"
|
|
||||||
percent={percent}
|
|
||||||
showInfo={true}
|
|
||||||
size="sm"
|
|
||||||
width={200}
|
|
||||||
className="flex justify-center"
|
|
||||||
strokeWidth={4}
|
|
||||||
customInfo={<ProgressInfo precent={percent.toFixed(1)} />}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div className="text-center mt-10">
|
|
||||||
<p className="font-semibold">
|
|
||||||
"The customer's performance indicates the accuracy and efficiency of orders based on the
|
|
||||||
average measured meters. It provides insight into how well the requested order lengths
|
|
||||||
align with the actual measurements."
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</Card>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default WidgetProgress
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
||||||
import { Loading } from '@/components/shared'
|
|
||||||
import Widget from './Widget'
|
|
||||||
import { WidgetsData } from '@/proxy/dashboard/models'
|
|
||||||
|
|
||||||
const Widgets = ({
|
|
||||||
loading,
|
|
||||||
widgetData,
|
|
||||||
}: {
|
|
||||||
loading: boolean
|
|
||||||
widgetData: WidgetsData[] | undefined
|
|
||||||
}) => {
|
|
||||||
return (
|
|
||||||
<Loading loading={loading}>
|
|
||||||
<div className="grid grid-cols-1 lg:grid-cols-3 lg:gap-4 gap-3">
|
|
||||||
{widgetData?.map((item, index) => {
|
|
||||||
const formattedValue = new Intl.NumberFormat(undefined, {
|
|
||||||
minimumFractionDigits: 1,
|
|
||||||
maximumFractionDigits: 1,
|
|
||||||
}).format(item.datavalue)
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Widget
|
|
||||||
key={index}
|
|
||||||
datagrowShrink={item.datagrowShrink}
|
|
||||||
datavalue={formattedValue}
|
|
||||||
label={item.label}
|
|
||||||
valuePrefix={item.valuePrefix}
|
|
||||||
date={item.date}
|
|
||||||
/>
|
|
||||||
)
|
|
||||||
})}
|
|
||||||
</div>
|
|
||||||
</Loading>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default Widgets
|
|
||||||
Loading…
Reference in a new issue