Added jobline notes BOD-204
This commit is contained in:
@@ -8533,6 +8533,27 @@
|
|||||||
</translation>
|
</translation>
|
||||||
</translations>
|
</translations>
|
||||||
</concept_node>
|
</concept_node>
|
||||||
|
<concept_node>
|
||||||
|
<name>notes</name>
|
||||||
|
<definition_loaded>false</definition_loaded>
|
||||||
|
<description></description>
|
||||||
|
<comment></comment>
|
||||||
|
<default_text></default_text>
|
||||||
|
<translations>
|
||||||
|
<translation>
|
||||||
|
<language>en-US</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
<translation>
|
||||||
|
<language>es-MX</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
<translation>
|
||||||
|
<language>fr-CA</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
</translations>
|
||||||
|
</concept_node>
|
||||||
<concept_node>
|
<concept_node>
|
||||||
<name>oem_partno</name>
|
<name>oem_partno</name>
|
||||||
<definition_loaded>false</definition_loaded>
|
<definition_loaded>false</definition_loaded>
|
||||||
@@ -8753,6 +8774,27 @@
|
|||||||
</translation>
|
</translation>
|
||||||
</translations>
|
</translations>
|
||||||
</concept_node>
|
</concept_node>
|
||||||
|
<concept_node>
|
||||||
|
<name>saved</name>
|
||||||
|
<definition_loaded>false</definition_loaded>
|
||||||
|
<description></description>
|
||||||
|
<comment></comment>
|
||||||
|
<default_text></default_text>
|
||||||
|
<translations>
|
||||||
|
<translation>
|
||||||
|
<language>en-US</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
<translation>
|
||||||
|
<language>es-MX</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
<translation>
|
||||||
|
<language>fr-CA</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
</translations>
|
||||||
|
</concept_node>
|
||||||
<concept_node>
|
<concept_node>
|
||||||
<name>updated</name>
|
<name>updated</name>
|
||||||
<definition_loaded>false</definition_loaded>
|
<definition_loaded>false</definition_loaded>
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import { alphaSort } from "../../utils/sorters";
|
|||||||
// import AllocationsBulkAssignmentContainer from "../allocations-bulk-assignment/allocations-bulk-assignment.container";
|
// import AllocationsBulkAssignmentContainer from "../allocations-bulk-assignment/allocations-bulk-assignment.container";
|
||||||
// import AllocationsEmployeeLabelContainer from "../allocations-employee-label/allocations-employee-label.container";
|
// import AllocationsEmployeeLabelContainer from "../allocations-employee-label/allocations-employee-label.container";
|
||||||
import PartsOrderModalContainer from "../parts-order-modal/parts-order-modal.container";
|
import PartsOrderModalContainer from "../parts-order-modal/parts-order-modal.container";
|
||||||
|
import JobLineNotePopup from "../job-line-note-popup/job-line-note-popup.component";
|
||||||
|
|
||||||
const mapDispatchToProps = (dispatch) => ({
|
const mapDispatchToProps = (dispatch) => ({
|
||||||
setJobLineEditContext: (context) =>
|
setJobLineEditContext: (context) =>
|
||||||
@@ -161,6 +162,12 @@ export function JobLinesComponent({
|
|||||||
sortOrder:
|
sortOrder:
|
||||||
state.sortedInfo.columnKey === "mod_lb_hrs" && state.sortedInfo.order,
|
state.sortedInfo.columnKey === "mod_lb_hrs" && state.sortedInfo.order,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: t("joblines.fields.notes"),
|
||||||
|
dataIndex: "notes",
|
||||||
|
key: "notes",
|
||||||
|
render: (text, record) => <JobLineNotePopup jobline={record} />,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: t("joblines.fields.status"),
|
title: t("joblines.fields.status"),
|
||||||
dataIndex: "status",
|
dataIndex: "status",
|
||||||
@@ -223,7 +230,8 @@ export function JobLinesComponent({
|
|||||||
actions: { refetch: refetch },
|
actions: { refetch: refetch },
|
||||||
context: record,
|
context: record,
|
||||||
});
|
});
|
||||||
}}>
|
}}
|
||||||
|
>
|
||||||
{t("general.actions.edit")}
|
{t("general.actions.edit")}
|
||||||
</Button>
|
</Button>
|
||||||
{
|
{
|
||||||
@@ -249,9 +257,9 @@ export function JobLinesComponent({
|
|||||||
|
|
||||||
const markMenu = (
|
const markMenu = (
|
||||||
<Menu onClick={handleMark}>
|
<Menu onClick={handleMark}>
|
||||||
<Menu.Item key='PAA'>PAA</Menu.Item>
|
<Menu.Item key="PAA">PAA</Menu.Item>
|
||||||
<Menu.Item key='PAN'>PAN</Menu.Item>
|
<Menu.Item key="PAN">PAN</Menu.Item>
|
||||||
<Menu.Item key='PAL'>PAL</Menu.Item>
|
<Menu.Item key="PAL">PAL</Menu.Item>
|
||||||
</Menu>
|
</Menu>
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -260,16 +268,19 @@ export function JobLinesComponent({
|
|||||||
<PartsOrderModalContainer />
|
<PartsOrderModalContainer />
|
||||||
<Table
|
<Table
|
||||||
columns={columns}
|
columns={columns}
|
||||||
rowKey='id'
|
rowKey="id"
|
||||||
loading={loading}
|
loading={loading}
|
||||||
size='small'
|
size="small"
|
||||||
pagination={{ position: "top", defaultPageSize: 50 }}
|
pagination={{ position: "top", defaultPageSize: 50 }}
|
||||||
dataSource={jobLines}
|
dataSource={jobLines}
|
||||||
onChange={handleTableChange}
|
onChange={handleTableChange}
|
||||||
scroll={{ x: true, y: "40rem" }}
|
scroll={{
|
||||||
|
x: true,
|
||||||
|
//y: "40rem"
|
||||||
|
}}
|
||||||
title={() => {
|
title={() => {
|
||||||
return (
|
return (
|
||||||
<div className='imex-table-header'>
|
<div className="imex-table-header">
|
||||||
<Button onClick={() => refetch()}>
|
<Button onClick={() => refetch()}>
|
||||||
<SyncOutlined />
|
<SyncOutlined />
|
||||||
</Button>
|
</Button>
|
||||||
@@ -283,7 +294,8 @@ export function JobLinesComponent({
|
|||||||
linesToOrder: selectedLines,
|
linesToOrder: selectedLines,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}}>
|
}}
|
||||||
|
>
|
||||||
{t("parts.actions.order")}
|
{t("parts.actions.order")}
|
||||||
</Button>
|
</Button>
|
||||||
<Dropdown overlay={markMenu} trigger={["click"]}>
|
<Dropdown overlay={markMenu} trigger={["click"]}>
|
||||||
@@ -301,10 +313,11 @@ export function JobLinesComponent({
|
|||||||
actions: { refetch: refetch },
|
actions: { refetch: refetch },
|
||||||
context: { jobid: jobId },
|
context: { jobid: jobId },
|
||||||
});
|
});
|
||||||
}}>
|
}}
|
||||||
|
>
|
||||||
{t("joblines.actions.new")}
|
{t("joblines.actions.new")}
|
||||||
</Button>
|
</Button>
|
||||||
<div className='imex-table-header__search'>
|
<div className="imex-table-header__search">
|
||||||
<Input.Search
|
<Input.Search
|
||||||
placeholder={t("general.labels.search")}
|
placeholder={t("general.labels.search")}
|
||||||
onChange={(e) => {
|
onChange={(e) => {
|
||||||
@@ -322,7 +335,8 @@ export function JobLinesComponent({
|
|||||||
{record.parts_order_lines.map((item) => (
|
{record.parts_order_lines.map((item) => (
|
||||||
<div key={item.id}>
|
<div key={item.id}>
|
||||||
<Link
|
<Link
|
||||||
to={`/manage/jobs/${jobId}?tab=partssublet&partsorderid=${item.parts_order.id}`}>
|
to={`/manage/jobs/${jobId}?tab=partssublet&partsorderid=${item.parts_order.id}`}
|
||||||
|
>
|
||||||
{item.parts_order.order_number || ""}
|
{item.parts_order.order_number || ""}
|
||||||
</Link>
|
</Link>
|
||||||
-
|
-
|
||||||
|
|||||||
@@ -0,0 +1,65 @@
|
|||||||
|
import React, { useState, useEffect } from "react";
|
||||||
|
import { Input, notification } from "antd";
|
||||||
|
import LoadingSpinner from "../loading-spinner/loading-spinner.component";
|
||||||
|
import { useMutation } from "react-apollo";
|
||||||
|
import { UPDATE_JOB_LINE } from "../../graphql/jobs-lines.queries";
|
||||||
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
|
export default function JobLineNotePopup({ jobline }) {
|
||||||
|
const [editing, setEditing] = useState(false);
|
||||||
|
const [loading, setLoading] = useState(false);
|
||||||
|
const [note, setNote] = useState(jobline.note);
|
||||||
|
const [updateJob] = useMutation(UPDATE_JOB_LINE);
|
||||||
|
const { t } = useTranslation();
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (editing) setNote(jobline.notes);
|
||||||
|
}, [editing, jobline.notes]);
|
||||||
|
|
||||||
|
const handleChange = (e) => {
|
||||||
|
e.stopPropagation();
|
||||||
|
setNote(e.currentTarget.value);
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleSave = async (e) => {
|
||||||
|
e.stopPropagation();
|
||||||
|
setLoading(true);
|
||||||
|
const result = await updateJob({
|
||||||
|
variables: { lineId: jobline.id, line: { notes: note || "" } },
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!!!result.errors) {
|
||||||
|
notification["success"]({ message: t("joblines.successes.saved") });
|
||||||
|
} else {
|
||||||
|
notification["error"]({
|
||||||
|
message: t("joblines.errors.saving", {
|
||||||
|
error: JSON.stringify(result.errors),
|
||||||
|
}),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
setLoading(false);
|
||||||
|
setEditing(false);
|
||||||
|
};
|
||||||
|
|
||||||
|
if (editing)
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<Input
|
||||||
|
autoFocus
|
||||||
|
suffix={loading ? <LoadingSpinner /> : null}
|
||||||
|
value={note}
|
||||||
|
onChange={handleChange}
|
||||||
|
onPressEnter={handleSave}
|
||||||
|
onBlur={handleSave}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
return (
|
||||||
|
<div
|
||||||
|
style={{ width: "100%", minHeight: "2rem", cursor: "pointer" }}
|
||||||
|
onClick={() => setEditing(true)}
|
||||||
|
>
|
||||||
|
{jobline.notes}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -20,6 +20,7 @@ export const GET_JOB_LINES_BY_PK = gql`
|
|||||||
lbr_amt
|
lbr_amt
|
||||||
op_code_desc
|
op_code_desc
|
||||||
status
|
status
|
||||||
|
notes
|
||||||
parts_order_lines {
|
parts_order_lines {
|
||||||
id
|
id
|
||||||
parts_order {
|
parts_order {
|
||||||
@@ -95,6 +96,13 @@ export const UPDATE_JOB_LINE = gql`
|
|||||||
update_joblines(where: { id: { _eq: $lineId } }, _set: $line) {
|
update_joblines(where: { id: { _eq: $lineId } }, _set: $line) {
|
||||||
returning {
|
returning {
|
||||||
id
|
id
|
||||||
|
notes
|
||||||
|
mod_lbr_ty
|
||||||
|
part_qty
|
||||||
|
db_price
|
||||||
|
act_price
|
||||||
|
line_desc
|
||||||
|
oem_partno
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -564,6 +564,7 @@
|
|||||||
"line_no": "Line #",
|
"line_no": "Line #",
|
||||||
"mod_lb_hrs": "Hrs",
|
"mod_lb_hrs": "Hrs",
|
||||||
"mod_lbr_ty": "Labor Type",
|
"mod_lbr_ty": "Labor Type",
|
||||||
|
"notes": "Notes",
|
||||||
"oem_partno": "OEM Part #",
|
"oem_partno": "OEM Part #",
|
||||||
"op_code_desc": "Operation Code Description",
|
"op_code_desc": "Operation Code Description",
|
||||||
"part_qty": "Qty.",
|
"part_qty": "Qty.",
|
||||||
@@ -578,6 +579,7 @@
|
|||||||
},
|
},
|
||||||
"successes": {
|
"successes": {
|
||||||
"created": "Job line created successfully.",
|
"created": "Job line created successfully.",
|
||||||
|
"saved": "Job line saved.",
|
||||||
"updated": "Job line updated successfully."
|
"updated": "Job line updated successfully."
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -564,6 +564,7 @@
|
|||||||
"line_no": "",
|
"line_no": "",
|
||||||
"mod_lb_hrs": "Horas laborales",
|
"mod_lb_hrs": "Horas laborales",
|
||||||
"mod_lbr_ty": "Tipo de trabajo",
|
"mod_lbr_ty": "Tipo de trabajo",
|
||||||
|
"notes": "",
|
||||||
"oem_partno": "OEM parte #",
|
"oem_partno": "OEM parte #",
|
||||||
"op_code_desc": "",
|
"op_code_desc": "",
|
||||||
"part_qty": "",
|
"part_qty": "",
|
||||||
@@ -578,6 +579,7 @@
|
|||||||
},
|
},
|
||||||
"successes": {
|
"successes": {
|
||||||
"created": "",
|
"created": "",
|
||||||
|
"saved": "",
|
||||||
"updated": ""
|
"updated": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -564,6 +564,7 @@
|
|||||||
"line_no": "",
|
"line_no": "",
|
||||||
"mod_lb_hrs": "Heures de travail",
|
"mod_lb_hrs": "Heures de travail",
|
||||||
"mod_lbr_ty": "Type de travail",
|
"mod_lbr_ty": "Type de travail",
|
||||||
|
"notes": "",
|
||||||
"oem_partno": "Pièce OEM #",
|
"oem_partno": "Pièce OEM #",
|
||||||
"op_code_desc": "",
|
"op_code_desc": "",
|
||||||
"part_qty": "",
|
"part_qty": "",
|
||||||
@@ -578,6 +579,7 @@
|
|||||||
},
|
},
|
||||||
"successes": {
|
"successes": {
|
||||||
"created": "",
|
"created": "",
|
||||||
|
"saved": "",
|
||||||
"updated": ""
|
"updated": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
- args:
|
||||||
|
cascade: false
|
||||||
|
read_only: false
|
||||||
|
sql: ALTER TABLE "public"."joblines" DROP COLUMN "notes";
|
||||||
|
type: run_sql
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
- args:
|
||||||
|
cascade: false
|
||||||
|
read_only: false
|
||||||
|
sql: ALTER TABLE "public"."joblines" ADD COLUMN "notes" text NULL;
|
||||||
|
type: run_sql
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
- args:
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: drop_insert_permission
|
||||||
|
- args:
|
||||||
|
permission:
|
||||||
|
check:
|
||||||
|
job:
|
||||||
|
bodyshop:
|
||||||
|
associations:
|
||||||
|
_and:
|
||||||
|
- user:
|
||||||
|
authid:
|
||||||
|
_eq: X-Hasura-User-Id
|
||||||
|
- active:
|
||||||
|
_eq: true
|
||||||
|
columns:
|
||||||
|
- act_price
|
||||||
|
- alt_co_id
|
||||||
|
- alt_overrd
|
||||||
|
- alt_part_i
|
||||||
|
- alt_partm
|
||||||
|
- alt_partno
|
||||||
|
- bett_amt
|
||||||
|
- bett_pctg
|
||||||
|
- bett_tax
|
||||||
|
- bett_type
|
||||||
|
- cert_part
|
||||||
|
- created_at
|
||||||
|
- db_hrs
|
||||||
|
- db_price
|
||||||
|
- db_ref
|
||||||
|
- est_seq
|
||||||
|
- glass_flag
|
||||||
|
- id
|
||||||
|
- jobid
|
||||||
|
- lbr_amt
|
||||||
|
- lbr_hrs_j
|
||||||
|
- lbr_inc
|
||||||
|
- lbr_op
|
||||||
|
- lbr_op_j
|
||||||
|
- lbr_tax
|
||||||
|
- lbr_typ_j
|
||||||
|
- line_desc
|
||||||
|
- line_ind
|
||||||
|
- line_no
|
||||||
|
- line_ref
|
||||||
|
- misc_amt
|
||||||
|
- misc_sublt
|
||||||
|
- misc_tax
|
||||||
|
- mod_lb_hrs
|
||||||
|
- mod_lbr_ty
|
||||||
|
- oem_partno
|
||||||
|
- op_code_desc
|
||||||
|
- paint_stg
|
||||||
|
- paint_tone
|
||||||
|
- part_qty
|
||||||
|
- part_type
|
||||||
|
- price_inc
|
||||||
|
- price_j
|
||||||
|
- prt_dsmk_m
|
||||||
|
- prt_dsmk_p
|
||||||
|
- removed
|
||||||
|
- status
|
||||||
|
- tax_part
|
||||||
|
- unq_seq
|
||||||
|
- updated_at
|
||||||
|
set: {}
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: create_insert_permission
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
- args:
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: drop_insert_permission
|
||||||
|
- args:
|
||||||
|
permission:
|
||||||
|
check:
|
||||||
|
job:
|
||||||
|
bodyshop:
|
||||||
|
associations:
|
||||||
|
_and:
|
||||||
|
- user:
|
||||||
|
authid:
|
||||||
|
_eq: X-Hasura-User-Id
|
||||||
|
- active:
|
||||||
|
_eq: true
|
||||||
|
columns:
|
||||||
|
- act_price
|
||||||
|
- alt_co_id
|
||||||
|
- alt_overrd
|
||||||
|
- alt_part_i
|
||||||
|
- alt_partm
|
||||||
|
- alt_partno
|
||||||
|
- bett_amt
|
||||||
|
- bett_pctg
|
||||||
|
- bett_tax
|
||||||
|
- bett_type
|
||||||
|
- cert_part
|
||||||
|
- created_at
|
||||||
|
- db_hrs
|
||||||
|
- db_price
|
||||||
|
- db_ref
|
||||||
|
- est_seq
|
||||||
|
- glass_flag
|
||||||
|
- id
|
||||||
|
- jobid
|
||||||
|
- lbr_amt
|
||||||
|
- lbr_hrs_j
|
||||||
|
- lbr_inc
|
||||||
|
- lbr_op
|
||||||
|
- lbr_op_j
|
||||||
|
- lbr_tax
|
||||||
|
- lbr_typ_j
|
||||||
|
- line_desc
|
||||||
|
- line_ind
|
||||||
|
- line_no
|
||||||
|
- line_ref
|
||||||
|
- misc_amt
|
||||||
|
- misc_sublt
|
||||||
|
- misc_tax
|
||||||
|
- mod_lb_hrs
|
||||||
|
- mod_lbr_ty
|
||||||
|
- notes
|
||||||
|
- oem_partno
|
||||||
|
- op_code_desc
|
||||||
|
- paint_stg
|
||||||
|
- paint_tone
|
||||||
|
- part_qty
|
||||||
|
- part_type
|
||||||
|
- price_inc
|
||||||
|
- price_j
|
||||||
|
- prt_dsmk_m
|
||||||
|
- prt_dsmk_p
|
||||||
|
- removed
|
||||||
|
- status
|
||||||
|
- tax_part
|
||||||
|
- unq_seq
|
||||||
|
- updated_at
|
||||||
|
set: {}
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: create_insert_permission
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
- args:
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: drop_select_permission
|
||||||
|
- args:
|
||||||
|
permission:
|
||||||
|
allow_aggregations: true
|
||||||
|
columns:
|
||||||
|
- act_price
|
||||||
|
- alt_co_id
|
||||||
|
- alt_overrd
|
||||||
|
- alt_part_i
|
||||||
|
- alt_partm
|
||||||
|
- alt_partno
|
||||||
|
- bett_amt
|
||||||
|
- bett_pctg
|
||||||
|
- bett_tax
|
||||||
|
- bett_type
|
||||||
|
- cert_part
|
||||||
|
- created_at
|
||||||
|
- db_hrs
|
||||||
|
- db_price
|
||||||
|
- db_ref
|
||||||
|
- est_seq
|
||||||
|
- glass_flag
|
||||||
|
- id
|
||||||
|
- jobid
|
||||||
|
- lbr_amt
|
||||||
|
- lbr_hrs_j
|
||||||
|
- lbr_inc
|
||||||
|
- lbr_op
|
||||||
|
- lbr_op_j
|
||||||
|
- lbr_tax
|
||||||
|
- lbr_typ_j
|
||||||
|
- line_desc
|
||||||
|
- line_ind
|
||||||
|
- line_no
|
||||||
|
- line_ref
|
||||||
|
- misc_amt
|
||||||
|
- misc_sublt
|
||||||
|
- misc_tax
|
||||||
|
- mod_lb_hrs
|
||||||
|
- mod_lbr_ty
|
||||||
|
- oem_partno
|
||||||
|
- op_code_desc
|
||||||
|
- paint_stg
|
||||||
|
- paint_tone
|
||||||
|
- part_qty
|
||||||
|
- part_type
|
||||||
|
- price_inc
|
||||||
|
- price_j
|
||||||
|
- prt_dsmk_m
|
||||||
|
- prt_dsmk_p
|
||||||
|
- removed
|
||||||
|
- status
|
||||||
|
- tax_part
|
||||||
|
- unq_seq
|
||||||
|
- updated_at
|
||||||
|
computed_fields: []
|
||||||
|
filter:
|
||||||
|
job:
|
||||||
|
bodyshop:
|
||||||
|
associations:
|
||||||
|
_and:
|
||||||
|
- user:
|
||||||
|
authid:
|
||||||
|
_eq: X-Hasura-User-Id
|
||||||
|
- active:
|
||||||
|
_eq: true
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: create_select_permission
|
||||||
@@ -0,0 +1,77 @@
|
|||||||
|
- args:
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: drop_select_permission
|
||||||
|
- args:
|
||||||
|
permission:
|
||||||
|
allow_aggregations: true
|
||||||
|
columns:
|
||||||
|
- act_price
|
||||||
|
- alt_co_id
|
||||||
|
- alt_overrd
|
||||||
|
- alt_part_i
|
||||||
|
- alt_partm
|
||||||
|
- alt_partno
|
||||||
|
- bett_amt
|
||||||
|
- bett_pctg
|
||||||
|
- bett_tax
|
||||||
|
- bett_type
|
||||||
|
- cert_part
|
||||||
|
- created_at
|
||||||
|
- db_hrs
|
||||||
|
- db_price
|
||||||
|
- db_ref
|
||||||
|
- est_seq
|
||||||
|
- glass_flag
|
||||||
|
- id
|
||||||
|
- jobid
|
||||||
|
- lbr_amt
|
||||||
|
- lbr_hrs_j
|
||||||
|
- lbr_inc
|
||||||
|
- lbr_op
|
||||||
|
- lbr_op_j
|
||||||
|
- lbr_tax
|
||||||
|
- lbr_typ_j
|
||||||
|
- line_desc
|
||||||
|
- line_ind
|
||||||
|
- line_no
|
||||||
|
- line_ref
|
||||||
|
- misc_amt
|
||||||
|
- misc_sublt
|
||||||
|
- misc_tax
|
||||||
|
- mod_lb_hrs
|
||||||
|
- mod_lbr_ty
|
||||||
|
- notes
|
||||||
|
- oem_partno
|
||||||
|
- op_code_desc
|
||||||
|
- paint_stg
|
||||||
|
- paint_tone
|
||||||
|
- part_qty
|
||||||
|
- part_type
|
||||||
|
- price_inc
|
||||||
|
- price_j
|
||||||
|
- prt_dsmk_m
|
||||||
|
- prt_dsmk_p
|
||||||
|
- removed
|
||||||
|
- status
|
||||||
|
- tax_part
|
||||||
|
- unq_seq
|
||||||
|
- updated_at
|
||||||
|
computed_fields: []
|
||||||
|
filter:
|
||||||
|
job:
|
||||||
|
bodyshop:
|
||||||
|
associations:
|
||||||
|
_and:
|
||||||
|
- user:
|
||||||
|
authid:
|
||||||
|
_eq: X-Hasura-User-Id
|
||||||
|
- active:
|
||||||
|
_eq: true
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: create_select_permission
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
- args:
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: drop_update_permission
|
||||||
|
- args:
|
||||||
|
permission:
|
||||||
|
columns:
|
||||||
|
- act_price
|
||||||
|
- alt_co_id
|
||||||
|
- alt_overrd
|
||||||
|
- alt_part_i
|
||||||
|
- alt_partm
|
||||||
|
- alt_partno
|
||||||
|
- bett_amt
|
||||||
|
- bett_pctg
|
||||||
|
- bett_tax
|
||||||
|
- bett_type
|
||||||
|
- cert_part
|
||||||
|
- created_at
|
||||||
|
- db_hrs
|
||||||
|
- db_price
|
||||||
|
- db_ref
|
||||||
|
- est_seq
|
||||||
|
- glass_flag
|
||||||
|
- id
|
||||||
|
- jobid
|
||||||
|
- lbr_amt
|
||||||
|
- lbr_hrs_j
|
||||||
|
- lbr_inc
|
||||||
|
- lbr_op
|
||||||
|
- lbr_op_j
|
||||||
|
- lbr_tax
|
||||||
|
- lbr_typ_j
|
||||||
|
- line_desc
|
||||||
|
- line_ind
|
||||||
|
- line_no
|
||||||
|
- line_ref
|
||||||
|
- misc_amt
|
||||||
|
- misc_sublt
|
||||||
|
- misc_tax
|
||||||
|
- mod_lb_hrs
|
||||||
|
- mod_lbr_ty
|
||||||
|
- oem_partno
|
||||||
|
- op_code_desc
|
||||||
|
- paint_stg
|
||||||
|
- paint_tone
|
||||||
|
- part_qty
|
||||||
|
- part_type
|
||||||
|
- price_inc
|
||||||
|
- price_j
|
||||||
|
- prt_dsmk_m
|
||||||
|
- prt_dsmk_p
|
||||||
|
- removed
|
||||||
|
- status
|
||||||
|
- tax_part
|
||||||
|
- unq_seq
|
||||||
|
- updated_at
|
||||||
|
filter:
|
||||||
|
job:
|
||||||
|
bodyshop:
|
||||||
|
associations:
|
||||||
|
_and:
|
||||||
|
- user:
|
||||||
|
authid:
|
||||||
|
_eq: X-Hasura-User-Id
|
||||||
|
- active:
|
||||||
|
_eq: true
|
||||||
|
set: {}
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: create_update_permission
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
- args:
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: drop_update_permission
|
||||||
|
- args:
|
||||||
|
permission:
|
||||||
|
columns:
|
||||||
|
- act_price
|
||||||
|
- alt_co_id
|
||||||
|
- alt_overrd
|
||||||
|
- alt_part_i
|
||||||
|
- alt_partm
|
||||||
|
- alt_partno
|
||||||
|
- bett_amt
|
||||||
|
- bett_pctg
|
||||||
|
- bett_tax
|
||||||
|
- bett_type
|
||||||
|
- cert_part
|
||||||
|
- created_at
|
||||||
|
- db_hrs
|
||||||
|
- db_price
|
||||||
|
- db_ref
|
||||||
|
- est_seq
|
||||||
|
- glass_flag
|
||||||
|
- id
|
||||||
|
- jobid
|
||||||
|
- lbr_amt
|
||||||
|
- lbr_hrs_j
|
||||||
|
- lbr_inc
|
||||||
|
- lbr_op
|
||||||
|
- lbr_op_j
|
||||||
|
- lbr_tax
|
||||||
|
- lbr_typ_j
|
||||||
|
- line_desc
|
||||||
|
- line_ind
|
||||||
|
- line_no
|
||||||
|
- line_ref
|
||||||
|
- misc_amt
|
||||||
|
- misc_sublt
|
||||||
|
- misc_tax
|
||||||
|
- mod_lb_hrs
|
||||||
|
- mod_lbr_ty
|
||||||
|
- notes
|
||||||
|
- oem_partno
|
||||||
|
- op_code_desc
|
||||||
|
- paint_stg
|
||||||
|
- paint_tone
|
||||||
|
- part_qty
|
||||||
|
- part_type
|
||||||
|
- price_inc
|
||||||
|
- price_j
|
||||||
|
- prt_dsmk_m
|
||||||
|
- prt_dsmk_p
|
||||||
|
- removed
|
||||||
|
- status
|
||||||
|
- tax_part
|
||||||
|
- unq_seq
|
||||||
|
- updated_at
|
||||||
|
filter:
|
||||||
|
job:
|
||||||
|
bodyshop:
|
||||||
|
associations:
|
||||||
|
_and:
|
||||||
|
- user:
|
||||||
|
authid:
|
||||||
|
_eq: X-Hasura-User-Id
|
||||||
|
- active:
|
||||||
|
_eq: true
|
||||||
|
set: {}
|
||||||
|
role: user
|
||||||
|
table:
|
||||||
|
name: joblines
|
||||||
|
schema: public
|
||||||
|
type: create_update_permission
|
||||||
@@ -1714,6 +1714,7 @@ tables:
|
|||||||
- misc_tax
|
- misc_tax
|
||||||
- mod_lb_hrs
|
- mod_lb_hrs
|
||||||
- mod_lbr_ty
|
- mod_lbr_ty
|
||||||
|
- notes
|
||||||
- oem_partno
|
- oem_partno
|
||||||
- op_code_desc
|
- op_code_desc
|
||||||
- paint_stg
|
- paint_stg
|
||||||
@@ -1768,6 +1769,7 @@ tables:
|
|||||||
- misc_tax
|
- misc_tax
|
||||||
- mod_lb_hrs
|
- mod_lb_hrs
|
||||||
- mod_lbr_ty
|
- mod_lbr_ty
|
||||||
|
- notes
|
||||||
- oem_partno
|
- oem_partno
|
||||||
- op_code_desc
|
- op_code_desc
|
||||||
- paint_stg
|
- paint_stg
|
||||||
@@ -1833,6 +1835,7 @@ tables:
|
|||||||
- misc_tax
|
- misc_tax
|
||||||
- mod_lb_hrs
|
- mod_lb_hrs
|
||||||
- mod_lbr_ty
|
- mod_lbr_ty
|
||||||
|
- notes
|
||||||
- oem_partno
|
- oem_partno
|
||||||
- op_code_desc
|
- op_code_desc
|
||||||
- paint_stg
|
- paint_stg
|
||||||
|
|||||||
Reference in New Issue
Block a user