From f080e84985c0e1a52994058147a6c9e3275b1e8d Mon Sep 17 00:00:00 2001 From: swtmply Date: Fri, 21 Apr 2023 02:56:11 +0800 Subject: [PATCH 1/6] IO-2242 added email on vendor query --- .../parts-order-list-table/parts-order-list-table.component.jsx | 2 +- client/src/graphql/bills.queries.js | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx b/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx index 84d73d401..ffb95adcc 100644 --- a/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx +++ b/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx @@ -201,6 +201,7 @@ export function PartsOrderListTableComponent({ subject: record.return ? Templates.parts_return_slip.subject : Templates.parts_order.subject, + to: record.vendor.email, }} id={job.id} /> @@ -296,7 +297,6 @@ export function PartsOrderListTableComponent({ sortOrder: state.sortedInfo.columnKey === "quantity" && state.sortedInfo.order, }, - { title: t("parts_orders.fields.act_price"), dataIndex: "act_price", diff --git a/client/src/graphql/bills.queries.js b/client/src/graphql/bills.queries.js index f042fd7ae..4d39eda47 100644 --- a/client/src/graphql/bills.queries.js +++ b/client/src/graphql/bills.queries.js @@ -69,6 +69,7 @@ export const QUERY_BILLS_BY_JOBID = gql` vendor { id name + email } order_date deliver_by @@ -104,6 +105,7 @@ export const QUERY_BILLS_BY_JOBID = gql` vendor { id name + email } total invoice_number From d3fe2c9d06cf7cf0de7792b6691bba0629f79658 Mon Sep 17 00:00:00 2001 From: swtmply Date: Fri, 21 Apr 2023 03:37:36 +0800 Subject: [PATCH 2/6] IO-2011 removed column background color --- client/src/App/App.styles.scss | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/client/src/App/App.styles.scss b/client/src/App/App.styles.scss index bb4824cd0..2ed11cbc6 100644 --- a/client/src/App/App.styles.scss +++ b/client/src/App/App.styles.scss @@ -143,13 +143,16 @@ } } - -//Update row highlighting on production board. +//Update row highlighting on production board. .ant-table-tbody > tr.ant-table-row:hover > td { background: #eaeaea !important; } -.job-line-manual{ +.job-line-manual { color: tomato; font-style: italic; } + +td.ant-table-column-sort { + background-color: transparent; +} From a68f8d688073a8caa62b19ece01267c04343f577 Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Thu, 20 Apr 2023 15:05:23 -0700 Subject: [PATCH 3/6] Payroll schema changes. --- hasura/metadata/tables.yaml | 149 ++++++++++++++++++ .../down.sql | 4 + .../up.sql | 2 + .../down.sql | 1 + .../up.sql | 18 +++ 5 files changed, 174 insertions(+) create mode 100644 hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/down.sql create mode 100644 hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/up.sql create mode 100644 hasura/migrations/1682028025082_create_table_public_tt_approval_queue/down.sql create mode 100644 hasura/migrations/1682028025082_create_table_public_tt_approval_queue/up.sql diff --git a/hasura/metadata/tables.yaml b/hasura/metadata/tables.yaml index a456a9a0f..5a3212f7c 100644 --- a/hasura/metadata/tables.yaml +++ b/hasura/metadata/tables.yaml @@ -831,6 +831,13 @@ table: name: transitions schema: public + - name: tt_approval_queues + using: + foreign_key_constraint_on: + column: bodyshopid + table: + name: tt_approval_queue + schema: public - name: vehicles using: foreign_key_constraint_on: @@ -2262,6 +2269,13 @@ table: name: timetickets schema: public + - name: tt_approval_queues + using: + foreign_key_constraint_on: + column: employeeid + table: + name: tt_approval_queue + schema: public insert_permissions: - role: user permission: @@ -3145,6 +3159,13 @@ table: name: transitions schema: public + - name: tt_approval_queues + using: + foreign_key_constraint_on: + column: jobid + table: + name: tt_approval_queue + schema: public insert_permissions: - role: user permission: @@ -5210,6 +5231,14 @@ - name: job using: foreign_key_constraint_on: jobid + array_relationships: + - name: tt_approval_queues + using: + foreign_key_constraint_on: + column: timeticketid + table: + name: tt_approval_queue + schema: public insert_permissions: - role: user permission: @@ -5228,6 +5257,7 @@ - ciecacode - clockoff - clockon + - committed_at - cost_center - created_at - date @@ -5248,6 +5278,7 @@ - ciecacode - clockoff - clockon + - committed_at - cost_center - created_at - date @@ -5277,6 +5308,7 @@ - ciecacode - clockoff - clockon + - committed_at - cost_center - created_at - date @@ -5397,6 +5429,116 @@ authid: _eq: X-Hasura-User-Id check: {} +- table: + name: tt_approval_queue + schema: public + object_relationships: + - name: bodyshop + using: + foreign_key_constraint_on: bodyshopid + - name: employee + using: + foreign_key_constraint_on: employeeid + - name: job + using: + foreign_key_constraint_on: jobid + - name: timeticket + using: + foreign_key_constraint_on: timeticketid + - name: user + using: + foreign_key_constraint_on: approved_by + insert_permissions: + - role: user + permission: + check: + bodyshop: + associations: + _and: + - active: + _eq: true + - user: + authid: + _eq: X-Hasura-User-Id + columns: + - id + - created_at + - updated_at + - bodyshopid + - jobid + - employeeid + - timeticketid + - approved_by + - approved_at + - actualhrs + - productivehrs + - rate + - flat_rate + - ciecacode + - cost_center + - date + - memo + select_permissions: + - role: user + permission: + columns: + - flat_rate + - date + - actualhrs + - productivehrs + - rate + - approved_by + - ciecacode + - cost_center + - memo + - approved_at + - created_at + - updated_at + - bodyshopid + - employeeid + - id + - jobid + - timeticketid + filter: + bodyshop: + associations: + _and: + - active: + _eq: true + - user: + authid: + _eq: X-Hasura-User-Id + update_permissions: + - role: user + permission: + columns: + - flat_rate + - date + - actualhrs + - productivehrs + - rate + - approved_by + - ciecacode + - cost_center + - memo + - approved_at + - created_at + - updated_at + - bodyshopid + - employeeid + - id + - jobid + - timeticketid + filter: + bodyshop: + associations: + _and: + - active: + _eq: true + - user: + authid: + _eq: X-Hasura-User-Id + check: null - table: name: users schema: public @@ -5467,6 +5609,13 @@ table: name: parts_orders schema: public + - name: tt_approval_queues + using: + foreign_key_constraint_on: + column: approved_by + table: + name: tt_approval_queue + schema: public insert_permissions: - role: user permission: diff --git a/hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/down.sql b/hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/down.sql new file mode 100644 index 000000000..7a27fe19f --- /dev/null +++ b/hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/down.sql @@ -0,0 +1,4 @@ +-- Could not auto-generate a down migration. +-- Please write an appropriate down migration for the SQL below: +-- alter table "public"."timetickets" add column "committed_at" timestamptz +-- null; diff --git a/hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/up.sql b/hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/up.sql new file mode 100644 index 000000000..755139538 --- /dev/null +++ b/hasura/migrations/1682027512494_alter_table_public_timetickets_add_column_committed_at/up.sql @@ -0,0 +1,2 @@ +alter table "public"."timetickets" add column "committed_at" timestamptz + null; diff --git a/hasura/migrations/1682028025082_create_table_public_tt_approval_queue/down.sql b/hasura/migrations/1682028025082_create_table_public_tt_approval_queue/down.sql new file mode 100644 index 000000000..624fb0e17 --- /dev/null +++ b/hasura/migrations/1682028025082_create_table_public_tt_approval_queue/down.sql @@ -0,0 +1 @@ +DROP TABLE "public"."tt_approval_queue"; diff --git a/hasura/migrations/1682028025082_create_table_public_tt_approval_queue/up.sql b/hasura/migrations/1682028025082_create_table_public_tt_approval_queue/up.sql new file mode 100644 index 000000000..96ba736a7 --- /dev/null +++ b/hasura/migrations/1682028025082_create_table_public_tt_approval_queue/up.sql @@ -0,0 +1,18 @@ +CREATE TABLE "public"."tt_approval_queue" ("id" uuid NOT NULL DEFAULT gen_random_uuid(), "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "bodyshopid" uuid NOT NULL, "jobid" uuid NOT NULL, "employeeid" uuid NOT NULL, "timeticketid" uuid, "approved_by" text, "approved_at" timestamptz NOT NULL, "actualhrs" numeric NOT NULL DEFAULT 0, "productivehrs" numeric NOT NULL DEFAULT 0, "rate" numeric NOT NULL DEFAULT 0, "flat_rate" boolean NOT NULL DEFAULT true, "ciecacode" text, "cost_center" text NOT NULL, "date" date NOT NULL DEFAULT now(), "memo" text NOT NULL, PRIMARY KEY ("id") , FOREIGN KEY ("bodyshopid") REFERENCES "public"."bodyshops"("id") ON UPDATE cascade ON DELETE cascade, FOREIGN KEY ("jobid") REFERENCES "public"."jobs"("id") ON UPDATE cascade ON DELETE cascade, FOREIGN KEY ("employeeid") REFERENCES "public"."employees"("id") ON UPDATE cascade ON DELETE cascade, FOREIGN KEY ("timeticketid") REFERENCES "public"."timetickets"("id") ON UPDATE cascade ON DELETE cascade, FOREIGN KEY ("approved_by") REFERENCES "public"."users"("email") ON UPDATE restrict ON DELETE restrict); +CREATE OR REPLACE FUNCTION "public"."set_current_timestamp_updated_at"() +RETURNS TRIGGER AS $$ +DECLARE + _new record; +BEGIN + _new := NEW; + _new."updated_at" = NOW(); + RETURN _new; +END; +$$ LANGUAGE plpgsql; +CREATE TRIGGER "set_public_tt_approval_queue_updated_at" +BEFORE UPDATE ON "public"."tt_approval_queue" +FOR EACH ROW +EXECUTE PROCEDURE "public"."set_current_timestamp_updated_at"(); +COMMENT ON TRIGGER "set_public_tt_approval_queue_updated_at" ON "public"."tt_approval_queue" +IS 'trigger to set value of column "updated_at" to current timestamp on row update'; +CREATE EXTENSION IF NOT EXISTS pgcrypto; From 60768c884765996c395fbae6355b5d600ab60fbf Mon Sep 17 00:00:00 2001 From: Patrick Fic <> Date: Thu, 20 Apr 2023 15:28:14 -0700 Subject: [PATCH 4/6] Timeticket approval queue aggregation permissions. --- hasura/metadata/tables.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/hasura/metadata/tables.yaml b/hasura/metadata/tables.yaml index 5a3212f7c..22d75a0e8 100644 --- a/hasura/metadata/tables.yaml +++ b/hasura/metadata/tables.yaml @@ -5508,6 +5508,7 @@ - user: authid: _eq: X-Hasura-User-Id + allow_aggregations: true update_permissions: - role: user permission: From 3086a654a145e1914b741ca55193c5c182da5870 Mon Sep 17 00:00:00 2001 From: swtmply Date: Fri, 21 Apr 2023 22:27:48 +0800 Subject: [PATCH 5/6] IO-1461 made the sider sticky --- .../components/tech-sider/tech-sider.component.jsx | 12 +++++++++++- client/src/pages/tech/tech.page.styles.scss | 5 +++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/client/src/components/tech-sider/tech-sider.component.jsx b/client/src/components/tech-sider/tech-sider.component.jsx index 1bd3bcdf8..c6ea4f67f 100644 --- a/client/src/components/tech-sider/tech-sider.component.jsx +++ b/client/src/components/tech-sider/tech-sider.component.jsx @@ -29,7 +29,17 @@ export function TechSider({ technician, techLogout }) { }; return ( - + Date: Fri, 21 Apr 2023 08:42:47 -0700 Subject: [PATCH 6/6] Additional schema changes for payroll. --- .../down.sql | 1 + .../up.sql | 1 + .../down.sql | 1 + .../up.sql | 1 + 4 files changed, 4 insertions(+) create mode 100644 hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/down.sql create mode 100644 hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/up.sql create mode 100644 hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/down.sql create mode 100644 hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/up.sql diff --git a/hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/down.sql b/hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/down.sql new file mode 100644 index 000000000..e5306a3a4 --- /dev/null +++ b/hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/down.sql @@ -0,0 +1 @@ +alter table "public"."tt_approval_queue" alter column "approved_at" set not null; diff --git a/hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/up.sql b/hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/up.sql new file mode 100644 index 000000000..8f899317b --- /dev/null +++ b/hasura/migrations/1682031429191_alter_table_public_tt_approval_queue_alter_column_approved_at/up.sql @@ -0,0 +1 @@ +alter table "public"."tt_approval_queue" alter column "approved_at" drop not null; diff --git a/hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/down.sql b/hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/down.sql new file mode 100644 index 000000000..82d12df19 --- /dev/null +++ b/hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/down.sql @@ -0,0 +1 @@ +alter table "public"."tt_approval_queue" alter column "memo" set not null; diff --git a/hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/up.sql b/hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/up.sql new file mode 100644 index 000000000..b83aa38f0 --- /dev/null +++ b/hasura/migrations/1682031447950_alter_table_public_tt_approval_queue_alter_column_memo/up.sql @@ -0,0 +1 @@ +alter table "public"."tt_approval_queue" alter column "memo" drop not null;