155 lines
4.5 KiB
JavaScript
155 lines
4.5 KiB
JavaScript
import {r as f, j as e, a1 as C, a2 as j, a3 as p, a4 as d, a5 as W, a6 as b, a7 as h, t as S, a8 as y, a9 as B, s as m, X as w, aa as v, ab as c, ac as u, c as I} from "./index-CdMy-Rhi.js";
|
|
import {s as g} from "./ServicesPage.module-BAnCpO1K.js";
|
|
const P = () => f.useMemo( () => [{
|
|
accessorKey: "id",
|
|
header: "ID"
|
|
}, {
|
|
accessorKey: "name",
|
|
header: "Название"
|
|
}], [])
|
|
, R = ({onChange: o, onDelete: n, items: t, summaries: r}) => {
|
|
const l = P()
|
|
, i = s => {
|
|
o && h.openContextModal({
|
|
modal: "shippingWarehouseForm",
|
|
title: "Редактирование склада отгрузки",
|
|
withCloseButton: !1,
|
|
innerProps: {
|
|
element: s,
|
|
onChange: o,
|
|
summaries: r.filter(x => x.shipmentWarehouseId === s.id).slice(0, 5)
|
|
},
|
|
size: "xl"
|
|
})
|
|
}
|
|
, a = s => {
|
|
n && h.openConfirmModal({
|
|
title: "Удаление склада отгрузки",
|
|
children: e.jsxs(S, {
|
|
size: "sm",
|
|
children: ["Вы уверены что хотите удалить склад отгрузки ", s.name]
|
|
}),
|
|
labels: {
|
|
confirm: "Да",
|
|
cancel: "Нет"
|
|
},
|
|
confirmProps: {
|
|
color: "red"
|
|
},
|
|
onConfirm: () => {
|
|
n(s)
|
|
}
|
|
})
|
|
}
|
|
;
|
|
return e.jsx(C, {
|
|
data: t,
|
|
columns: l,
|
|
restProps: {
|
|
enableColumnActions: !1,
|
|
enableSorting: !1,
|
|
enableRowActions: !0,
|
|
renderRowActions: ({row: s}) => e.jsxs(j, {
|
|
gap: "md",
|
|
children: [e.jsx(p, {
|
|
label: "Редактировать",
|
|
children: e.jsx(d, {
|
|
onClick: () => i(s.original),
|
|
variant: "default",
|
|
children: e.jsx(W, {})
|
|
})
|
|
}), e.jsx(p, {
|
|
label: "Удалить",
|
|
children: e.jsx(d, {
|
|
onClick: () => a(s.original),
|
|
variant: "default",
|
|
children: e.jsx(b, {})
|
|
})
|
|
})]
|
|
})
|
|
}
|
|
})
|
|
}
|
|
, T = () => {
|
|
const {shippingWarehouses: o, refetch: n} = y()
|
|
, {objects: t} = B()
|
|
, r = v({
|
|
onChange: i => {
|
|
c.updateShippingWarehouse({
|
|
requestBody: {
|
|
shippingWarehouse: i
|
|
}
|
|
}).then(async ({ok: a, message: s}) => {
|
|
u.guess(a, {
|
|
message: s
|
|
}),
|
|
a && await n()
|
|
}
|
|
)
|
|
}
|
|
,
|
|
onCreate: i => {
|
|
c.createShippingWarehouse({
|
|
requestBody: {
|
|
shippingWarehouse: i
|
|
}
|
|
}).then(async ({ok: a, message: s}) => {
|
|
u.guess(a, {
|
|
message: s
|
|
}),
|
|
a && await n()
|
|
}
|
|
)
|
|
}
|
|
,
|
|
onDelete: i => {
|
|
c.deleteShippingWarehouse({
|
|
requestBody: {
|
|
shippingWarehouseId: i.id
|
|
}
|
|
}).then(async ({ok: a, message: s}) => {
|
|
u.guess(a, {
|
|
message: s
|
|
}),
|
|
a && await n()
|
|
}
|
|
)
|
|
}
|
|
})
|
|
, l = () => {
|
|
h.openContextModal({
|
|
modal: "shippingWarehouseForm",
|
|
title: "Редактирование склада отгрузки",
|
|
withCloseButton: !1,
|
|
innerProps: {
|
|
onCreate: r.onCreate,
|
|
summaries: []
|
|
}
|
|
})
|
|
}
|
|
;
|
|
return e.jsxs("div", {
|
|
className: g.container,
|
|
children: [e.jsx(m, {
|
|
children: e.jsx("div", {
|
|
className: g["top-panel"],
|
|
children: e.jsx(w, {
|
|
onClick: l,
|
|
variant: "default",
|
|
children: "Создать склад отгрузки"
|
|
})
|
|
})
|
|
}), e.jsx(m, {
|
|
children: e.jsx(R, {
|
|
items: o,
|
|
summaries: t,
|
|
...r
|
|
})
|
|
})]
|
|
})
|
|
}
|
|
, A = I("/shipping_warehouses")({
|
|
component: T
|
|
});
|
|
export {A as Route};
|