{theJob.ro_number || ""}
diff --git a/client/src/components/production-sublets-manage/production-sublets-manage.component.jsx b/client/src/components/production-sublets-manage/production-sublets-manage.component.jsx
new file mode 100644
index 000000000..669c92688
--- /dev/null
+++ b/client/src/components/production-sublets-manage/production-sublets-manage.component.jsx
@@ -0,0 +1,97 @@
+import { CheckCircleFilled, EyeInvisibleFilled } from "@ant-design/icons";
+import { Button, List, notification, Popover } from "antd";
+import React, { useMemo, useState } from "react";
+import { useMutation } from "react-apollo";
+import { useTranslation } from "react-i18next";
+import { UPDATE_JOB_LINE } from "../../graphql/jobs-lines.queries";
+export default function ProductionSubletsManageComponent({ subletJobLines }) {
+ const { t } = useTranslation();
+ const [updateJobLine] = useMutation(UPDATE_JOB_LINE);
+ const [loading, setLoading] = useState(false);
+ const subletCount = useMemo(() => {
+ return {
+ total: subletJobLines.filter((s) => !s.sublet_ignored).length,
+ outstanding: subletJobLines.filter(
+ (s) => !s.sublet_ignored && !s.sublet_completed
+ ).length,
+ };
+ }, [subletJobLines]);
+
+ const handleSubletMark = async (sublet, action) => {
+ setLoading(true);
+
+ const result = await updateJobLine({
+ variables: {
+ lineId: sublet.id,
+ line: {
+ sublet_completed:
+ action === "complete" ? !sublet.sublet_completed : false,
+ sublet_ignored: action === "ignore" ? !sublet.sublet_ignored : false,
+ },
+ },
+ });
+
+ if (!!result.errors) {
+ notification["error"]({
+ message: t("joblines.errors.updating", {
+ message: JSON.stringify(result.errors),
+ }),
+ });
+ } else {
+ notification["success"]({
+ message: t("joblines.successes.updated"),
+ });
+ }
+ setLoading(false);
+ };
+
+ const popContent = (
+
+ e.stopPropagation()}
+ dataSource={subletJobLines}
+ renderItem={(s) => (
+ handleSubletMark(s, "complete")}
+ type={s.sublet_completed ? "primary" : "ghost"}
+ >
+
+ ,
+ ,
+ ]}
+ >
+
+
+ )}
+ />
+
+ );
+
+ return (
+
+ {`${subletCount.outstanding} / ${subletCount.total} rem.`}
+
+ );
+}
diff --git a/client/src/graphql/jobs.queries.js b/client/src/graphql/jobs.queries.js
index 1343fd46a..ba29433f3 100644
--- a/client/src/graphql/jobs.queries.js
+++ b/client/src/graphql/jobs.queries.js
@@ -173,6 +173,17 @@ export const SUBSCRIPTION_JOBS_IN_PRODUCTION = gql`
}
}
}
+ subletLines: joblines(
+ where: {
+ _and: { part_type: { _in: ["PAS", "PASL"] }, removed: { _eq: false } }
+ }
+ order_by: { line_no: asc }
+ ) {
+ id
+ line_desc
+ sublet_ignored
+ sublet_completed
+ }
}
}
`;
diff --git a/client/src/translations/en_us/common.json b/client/src/translations/en_us/common.json
index 7bd277630..7b347668b 100644
--- a/client/src/translations/en_us/common.json
+++ b/client/src/translations/en_us/common.json
@@ -1345,7 +1345,8 @@
"jobdetail": "Job Details",
"note": "Production Note",
"paintpriority": "P/P",
- "refinishhours": "R"
+ "refinishhours": "R",
+ "sublets": "Sublets"
},
"successes": {
"removed": "Job removed from production."
diff --git a/client/src/translations/es/common.json b/client/src/translations/es/common.json
index 8109fdc25..7c066b43e 100644
--- a/client/src/translations/es/common.json
+++ b/client/src/translations/es/common.json
@@ -1345,7 +1345,8 @@
"jobdetail": "",
"note": "",
"paintpriority": "",
- "refinishhours": ""
+ "refinishhours": "",
+ "sublets": ""
},
"successes": {
"removed": ""
diff --git a/client/src/translations/fr/common.json b/client/src/translations/fr/common.json
index cf9e8c16f..159e3b327 100644
--- a/client/src/translations/fr/common.json
+++ b/client/src/translations/fr/common.json
@@ -1345,7 +1345,8 @@
"jobdetail": "",
"note": "",
"paintpriority": "",
- "refinishhours": ""
+ "refinishhours": "",
+ "sublets": ""
},
"successes": {
"removed": ""
diff --git a/client/yarn.lock b/client/yarn.lock
index 5c04a72ae..5a8486f7a 100644
--- a/client/yarn.lock
+++ b/client/yarn.lock
@@ -7930,11 +7930,6 @@ js-yaml@^3.13.1:
argparse "^1.0.7"
esprima "^4.0.0"
-jsbarcode@^3.8.0:
- version "3.11.0"
- resolved "https://registry.yarnpkg.com/jsbarcode/-/jsbarcode-3.11.0.tgz#20623e008b101ef45d0cce9c8022cdf49be28547"
- integrity sha512-/ozCd7wsa+VIHo9sUc03HneVEQrH7cVWfJolUT/WOW1m8mJ2e3iYZje6C9X3LFHdczlesqFHRpxLtbVsNtjyow==
-
jsbn@~0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
@@ -11327,14 +11322,6 @@ react-app-polyfill@^1.0.6:
regenerator-runtime "^0.13.3"
whatwg-fetch "^3.0.0"
-react-barcode@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/react-barcode/-/react-barcode-1.4.0.tgz#ebc85ff1b8b49ac4b947b7f3745d684c6c363902"
- integrity sha512-xDxIc9WUTQPMcwc3kbCVsjh03WiPyynms9OSdsNSh2AAgB6XqMiy9hYWkCNHgdNdvurkvKB6hm25AZHXyQfvlQ==
- dependencies:
- jsbarcode "^3.8.0"
- prop-types "^15.6.2"
-
react-beautiful-dnd@^13.0.0:
version "13.0.0"
resolved "https://registry.yarnpkg.com/react-beautiful-dnd/-/react-beautiful-dnd-13.0.0.tgz#f70cc8ff82b84bc718f8af157c9f95757a6c3b40"
diff --git a/hasura/migrations/1601394864653_alter_table_public_joblines_add_column_sublet_ignored/down.yaml b/hasura/migrations/1601394864653_alter_table_public_joblines_add_column_sublet_ignored/down.yaml
new file mode 100644
index 000000000..68309bfe5
--- /dev/null
+++ b/hasura/migrations/1601394864653_alter_table_public_joblines_add_column_sublet_ignored/down.yaml
@@ -0,0 +1,5 @@
+- args:
+ cascade: false
+ read_only: false
+ sql: ALTER TABLE "public"."joblines" DROP COLUMN "sublet_ignored";
+ type: run_sql
diff --git a/hasura/migrations/1601394864653_alter_table_public_joblines_add_column_sublet_ignored/up.yaml b/hasura/migrations/1601394864653_alter_table_public_joblines_add_column_sublet_ignored/up.yaml
new file mode 100644
index 000000000..e91df7c2e
--- /dev/null
+++ b/hasura/migrations/1601394864653_alter_table_public_joblines_add_column_sublet_ignored/up.yaml
@@ -0,0 +1,6 @@
+- args:
+ cascade: false
+ read_only: false
+ sql: ALTER TABLE "public"."joblines" ADD COLUMN "sublet_ignored" bool NOT NULL
+ DEFAULT false;
+ type: run_sql
diff --git a/hasura/migrations/1601394877870_alter_table_public_joblines_add_column_sublet_completed/down.yaml b/hasura/migrations/1601394877870_alter_table_public_joblines_add_column_sublet_completed/down.yaml
new file mode 100644
index 000000000..facc7bfdb
--- /dev/null
+++ b/hasura/migrations/1601394877870_alter_table_public_joblines_add_column_sublet_completed/down.yaml
@@ -0,0 +1,5 @@
+- args:
+ cascade: false
+ read_only: false
+ sql: ALTER TABLE "public"."joblines" DROP COLUMN "sublet_completed";
+ type: run_sql
diff --git a/hasura/migrations/1601394877870_alter_table_public_joblines_add_column_sublet_completed/up.yaml b/hasura/migrations/1601394877870_alter_table_public_joblines_add_column_sublet_completed/up.yaml
new file mode 100644
index 000000000..fc4fa5250
--- /dev/null
+++ b/hasura/migrations/1601394877870_alter_table_public_joblines_add_column_sublet_completed/up.yaml
@@ -0,0 +1,6 @@
+- args:
+ cascade: false
+ read_only: false
+ sql: ALTER TABLE "public"."joblines" ADD COLUMN "sublet_completed" bool NOT NULL
+ DEFAULT false;
+ type: run_sql
diff --git a/hasura/migrations/1601394888768_update_permission_user_public_table_joblines/down.yaml b/hasura/migrations/1601394888768_update_permission_user_public_table_joblines/down.yaml
new file mode 100644
index 000000000..7dc50463b
--- /dev/null
+++ b/hasura/migrations/1601394888768_update_permission_user_public_table_joblines/down.yaml
@@ -0,0 +1,79 @@
+- 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
+ - location
+ - 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
+ - profitcenter_labor
+ - profitcenter_part
+ - 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
diff --git a/hasura/migrations/1601394888768_update_permission_user_public_table_joblines/up.yaml b/hasura/migrations/1601394888768_update_permission_user_public_table_joblines/up.yaml
new file mode 100644
index 000000000..ff9ac5fde
--- /dev/null
+++ b/hasura/migrations/1601394888768_update_permission_user_public_table_joblines/up.yaml
@@ -0,0 +1,81 @@
+- 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
+ - location
+ - 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
+ - profitcenter_labor
+ - profitcenter_part
+ - prt_dsmk_m
+ - prt_dsmk_p
+ - removed
+ - status
+ - sublet_completed
+ - sublet_ignored
+ - tax_part
+ - unq_seq
+ - updated_at
+ set: {}
+ role: user
+ table:
+ name: joblines
+ schema: public
+ type: create_insert_permission
diff --git a/hasura/migrations/1601394897792_update_permission_user_public_table_joblines/down.yaml b/hasura/migrations/1601394897792_update_permission_user_public_table_joblines/down.yaml
new file mode 100644
index 000000000..0a0fcd317
--- /dev/null
+++ b/hasura/migrations/1601394897792_update_permission_user_public_table_joblines/down.yaml
@@ -0,0 +1,80 @@
+- 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
+ - location
+ - 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
+ - profitcenter_labor
+ - profitcenter_part
+ - 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
diff --git a/hasura/migrations/1601394897792_update_permission_user_public_table_joblines/up.yaml b/hasura/migrations/1601394897792_update_permission_user_public_table_joblines/up.yaml
new file mode 100644
index 000000000..5c724e8f3
--- /dev/null
+++ b/hasura/migrations/1601394897792_update_permission_user_public_table_joblines/up.yaml
@@ -0,0 +1,82 @@
+- 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
+ - location
+ - 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
+ - profitcenter_labor
+ - profitcenter_part
+ - prt_dsmk_m
+ - prt_dsmk_p
+ - removed
+ - status
+ - sublet_completed
+ - sublet_ignored
+ - 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
diff --git a/hasura/migrations/1601394905183_update_permission_user_public_table_joblines/down.yaml b/hasura/migrations/1601394905183_update_permission_user_public_table_joblines/down.yaml
new file mode 100644
index 000000000..4e8d4b05b
--- /dev/null
+++ b/hasura/migrations/1601394905183_update_permission_user_public_table_joblines/down.yaml
@@ -0,0 +1,79 @@
+- 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
+ - location
+ - 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
+ - profitcenter_labor
+ - profitcenter_part
+ - 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
diff --git a/hasura/migrations/1601394905183_update_permission_user_public_table_joblines/up.yaml b/hasura/migrations/1601394905183_update_permission_user_public_table_joblines/up.yaml
new file mode 100644
index 000000000..288f51729
--- /dev/null
+++ b/hasura/migrations/1601394905183_update_permission_user_public_table_joblines/up.yaml
@@ -0,0 +1,81 @@
+- 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
+ - location
+ - 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
+ - profitcenter_labor
+ - profitcenter_part
+ - prt_dsmk_m
+ - prt_dsmk_p
+ - removed
+ - status
+ - sublet_completed
+ - sublet_ignored
+ - 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
diff --git a/hasura/migrations/metadata.yaml b/hasura/migrations/metadata.yaml
index 6a1305260..aa353236f 100644
--- a/hasura/migrations/metadata.yaml
+++ b/hasura/migrations/metadata.yaml
@@ -1778,6 +1778,8 @@ tables:
- prt_dsmk_p
- removed
- status
+ - sublet_completed
+ - sublet_ignored
- tax_part
- unq_seq
- updated_at
@@ -1836,6 +1838,8 @@ tables:
- prt_dsmk_p
- removed
- status
+ - sublet_completed
+ - sublet_ignored
- tax_part
- unq_seq
- updated_at
@@ -1905,6 +1909,8 @@ tables:
- prt_dsmk_p
- removed
- status
+ - sublet_completed
+ - sublet_ignored
- tax_part
- unq_seq
- updated_at
diff --git a/key.pem b/key.pem
deleted file mode 100644
index 46a61f26b..000000000
--- a/key.pem
+++ /dev/null
@@ -1,54 +0,0 @@
------BEGIN ENCRYPTED PRIVATE KEY-----
-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
-lprkK8/B3YTkfi7ZmfapZA==
------END ENCRYPTED PRIVATE KEY-----