From 3fa78b383d128a4a14f10877b9cd604fb8ffd65f Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Wed, 28 Oct 2020 20:02:06 -0700 Subject: [PATCH 1/7] Package update --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index db0f24f..f2a446f 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "productName": "ImEX RPS", "author": "ImEX Systems Inc. ", "description": "ImEX RPS", - "version": "1.0.7", + "version": "1.0.8", "main": "electron/main.js", "homepage": "./", "dependencies": { From 0bb53bd1be66f5ef8d354874c1150625b30ed05d Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Thu, 29 Oct 2020 15:47:50 -0700 Subject: [PATCH 2/7] Added filteringa nd sorting on reporting screen. RPS-36 --- .../reporting-jobs-list.molecule.jsx | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/components/molecules/reporting-jobs-list/reporting-jobs-list.molecule.jsx b/src/components/molecules/reporting-jobs-list/reporting-jobs-list.molecule.jsx index 51bae82..ec732ae 100644 --- a/src/components/molecules/reporting-jobs-list/reporting-jobs-list.molecule.jsx +++ b/src/components/molecules/reporting-jobs-list/reporting-jobs-list.molecule.jsx @@ -11,6 +11,8 @@ import { selectReportLoading, selectScorecard, } from "../../../redux/reporting/reporting.selectors"; +import { alphaSort } from "../../../util/sorters"; +import moment from "moment"; const { ipcRenderer } = window; @@ -41,21 +43,34 @@ export function ReportingJobsListMolecule({ {text} ), + sorter: (a, b) => alphaSort(a.clm_no, b.clm_no), + }, + { + title: "Close Date", + dataIndex: "close_date", + key: "close_date", + render: (text, record) => moment(record.close_date).format("MM/DD/yyyy"), + defaultSortOrder: "ascend", + sorter: (a, b) => + moment(a.close_date).unix() - moment(b.close_date).unix(), }, { title: "Ins Co.", dataIndex: "ins_co_nm", key: "ins_co_nm", + sorter: (a, b) => alphaSort(a.ins_co_nm, b.ins_co_nm), }, { title: "First Name", dataIndex: "ownr_fn", key: "ownr_fn", + sorter: (a, b) => alphaSort(a.ownr_fn, b.ownr_fn), }, { title: "Last Name", dataIndex: "ownr_ln", key: "ownr_ln", + sorter: (a, b) => alphaSort(a.ownr_ln, b.ownr_ln), }, { title: "Vehicle", @@ -72,12 +87,14 @@ export function ReportingJobsListMolecule({ title: "Database Price Sum", dataIndex: "dbPriceSum", key: "dbPriceSum", + sorter: (a, b) => a.dbPriceSum.getAmount() - b.dbPriceSum.getAmount(), render: (text, record) => record.dbPriceSum.toFormat(), }, { title: "Actual Price Sum ", dataIndex: "actPriceSum", key: "actPriceSum", + sorter: (a, b) => a.actPriceSum.getAmount() - b.actPriceSum.getAmount(), render: (text, record) => record.actPriceSum.toFormat(), }, { @@ -104,7 +121,7 @@ export function ReportingJobsListMolecule({ color: record.jobRpsPc > record.jobTarget ? "seagreen" : "tomato", }} > - {`${(record.jobRpsPc * 100).toFixed(1)}% / ${( + {`${(record.jobRpsPc * 100 || 0).toFixed(1)}% / ${( record.jobTarget * 100 ).toFixed(1)}%`} @@ -163,7 +180,6 @@ export function ReportingJobsListMolecule({ {scoreCard && scoreCard.allJobsSumDbPrice.toFormat()} - {" "} {scoreCard && scoreCard.allJobsSumActPrice.toFormat()} From 8507ba455acd48e21147ebea7167b30b162617d4 Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Thu, 29 Oct 2020 18:53:17 -0700 Subject: [PATCH 3/7] Added alert and setting for PP differences less than a set amount. RPS-34 --- Xdev-app-update.yml => dev-app-update.yml | 0 .../down.yaml | 5 ++++ .../up.yaml | 6 ++++ .../down.yaml | 28 ++++++++++++++++++ .../up.yaml | 29 +++++++++++++++++++ .../down.yaml | 24 +++++++++++++++ .../up.yaml | 25 ++++++++++++++++ hasura/migrations/metadata.yaml | 2 ++ package.json | 2 +- .../price-diff-pc-formatter.atom.jsx | 6 +++- .../update-available.atom.jsx | 17 ----------- .../shop-settings-form.molecule.jsx | 12 ++++++++ .../update-manager.organism.jsx | 5 ++++ src/graphql/bodyshop.queries.js | 2 ++ 14 files changed, 144 insertions(+), 19 deletions(-) rename Xdev-app-update.yml => dev-app-update.yml (100%) create mode 100644 hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/down.yaml create mode 100644 hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/up.yaml create mode 100644 hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/down.yaml create mode 100644 hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/up.yaml create mode 100644 hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/down.yaml create mode 100644 hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/up.yaml delete mode 100644 src/components/atoms/update-available/update-available.atom.jsx diff --git a/Xdev-app-update.yml b/dev-app-update.yml similarity index 100% rename from Xdev-app-update.yml rename to dev-app-update.yml diff --git a/hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/down.yaml b/hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/down.yaml new file mode 100644 index 0000000..d0245ef --- /dev/null +++ b/hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/down.yaml @@ -0,0 +1,5 @@ +- args: + cascade: false + read_only: false + sql: ALTER TABLE "public"."bodyshops" DROP COLUMN "ppd_diff_alert"; + type: run_sql diff --git a/hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/up.yaml b/hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/up.yaml new file mode 100644 index 0000000..00ae49f --- /dev/null +++ b/hasura/migrations/1604011931472_alter_table_public_bodyshops_add_column_ppd_diff_alert/up.yaml @@ -0,0 +1,6 @@ +- args: + cascade: false + read_only: false + sql: ALTER TABLE "public"."bodyshops" ADD COLUMN "ppd_diff_alert" numeric NULL + DEFAULT .05; + type: run_sql diff --git a/hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/down.yaml b/hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/down.yaml new file mode 100644 index 0000000..da91d45 --- /dev/null +++ b/hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/down.yaml @@ -0,0 +1,28 @@ +- args: + role: user + table: + name: bodyshops + schema: public + type: drop_select_permission +- args: + permission: + allow_aggregations: false + columns: + - accepted_ins_co + - created_at + - groups + - id + - shopname + - targets + - updated_at + computed_fields: [] + filter: + associations: + user: + authid: + _eq: X-Hasura-User-Id + role: user + table: + name: bodyshops + schema: public + type: create_select_permission diff --git a/hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/up.yaml b/hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/up.yaml new file mode 100644 index 0000000..1883517 --- /dev/null +++ b/hasura/migrations/1604011938755_update_permission_user_public_table_bodyshops/up.yaml @@ -0,0 +1,29 @@ +- args: + role: user + table: + name: bodyshops + schema: public + type: drop_select_permission +- args: + permission: + allow_aggregations: false + columns: + - accepted_ins_co + - created_at + - groups + - id + - ppd_diff_alert + - shopname + - targets + - updated_at + computed_fields: [] + filter: + associations: + user: + authid: + _eq: X-Hasura-User-Id + role: user + table: + name: bodyshops + schema: public + type: create_select_permission diff --git a/hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/down.yaml b/hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/down.yaml new file mode 100644 index 0000000..1ff07f9 --- /dev/null +++ b/hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/down.yaml @@ -0,0 +1,24 @@ +- args: + role: user + table: + name: bodyshops + schema: public + type: drop_update_permission +- args: + permission: + columns: + - accepted_ins_co + - groups + - shopname + - targets + filter: + associations: + user: + authid: + _eq: X-Hasura-User-Id + set: {} + role: user + table: + name: bodyshops + schema: public + type: create_update_permission diff --git a/hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/up.yaml b/hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/up.yaml new file mode 100644 index 0000000..f52f9fc --- /dev/null +++ b/hasura/migrations/1604011944447_update_permission_user_public_table_bodyshops/up.yaml @@ -0,0 +1,25 @@ +- args: + role: user + table: + name: bodyshops + schema: public + type: drop_update_permission +- args: + permission: + columns: + - accepted_ins_co + - groups + - ppd_diff_alert + - shopname + - targets + filter: + associations: + user: + authid: + _eq: X-Hasura-User-Id + set: {} + role: user + table: + name: bodyshops + schema: public + type: create_update_permission diff --git a/hasura/migrations/metadata.yaml b/hasura/migrations/metadata.yaml index f864e4b..171c7b2 100644 --- a/hasura/migrations/metadata.yaml +++ b/hasura/migrations/metadata.yaml @@ -46,6 +46,7 @@ tables: - created_at - groups - id + - ppd_diff_alert - shopname - targets - updated_at @@ -60,6 +61,7 @@ tables: columns: - accepted_ins_co - groups + - ppd_diff_alert - shopname - targets filter: diff --git a/package.json b/package.json index f2a446f..922a77e 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "productName": "ImEX RPS", "author": "ImEX Systems Inc. ", "description": "ImEX RPS", - "version": "1.0.8", + "version": "1.0.2", "main": "electron/main.js", "homepage": "./", "dependencies": { diff --git a/src/components/atoms/price-diff-pc-formatter/price-diff-pc-formatter.atom.jsx b/src/components/atoms/price-diff-pc-formatter/price-diff-pc-formatter.atom.jsx index d5c7628..6552071 100644 --- a/src/components/atoms/price-diff-pc-formatter/price-diff-pc-formatter.atom.jsx +++ b/src/components/atoms/price-diff-pc-formatter/price-diff-pc-formatter.atom.jsx @@ -3,13 +3,16 @@ import React from "react"; import { connect } from "react-redux"; import { createStructuredSelector } from "reselect"; import { selectSelectedJobTargetPc } from "../../../redux/application/application.selectors"; +import { selectBodyshop } from "../../../redux/user/user.selectors"; import "./price-diff-pc-formatter.styles.scss"; const mapStateToProps = createStructuredSelector({ selectedJobTargetPc: selectSelectedJobTargetPc, + bodyshop: selectBodyshop, }); export function PriceDiffPcFormatterAtom({ + bodyshop, price_diff_pc, selectedJobTargetPc, }) { @@ -22,7 +25,8 @@ export function PriceDiffPcFormatterAtom({ }} > {(price_diff_pc * 100).toFixed(1)}% - {price_diff_pc === 1 ? ( + {price_diff_pc === 1 || + (price_diff_pc <= bodyshop.ppd_diff_alert && price_diff_pc > 0) ? ( ) : null} diff --git a/src/components/atoms/update-available/update-available.atom.jsx b/src/components/atoms/update-available/update-available.atom.jsx deleted file mode 100644 index 684b25e..0000000 --- a/src/components/atoms/update-available/update-available.atom.jsx +++ /dev/null @@ -1,17 +0,0 @@ -import React from "react"; -import { connect } from "react-redux"; -import { createStructuredSelector } from "reselect"; -import { selectUpdateAvailable } from "../../../redux/application/application.selectors"; -const mapStateToProps = createStructuredSelector({ - //scanLoading: selectScanLoading, - updateAvailable: selectUpdateAvailable, -}); -const mapDispatchToProps = (dispatch) => ({}); - -export function UpdateAvailableAtom({ available }) { - return
Update Available!
; -} -export default connect( - mapStateToProps, - mapDispatchToProps -)(UpdateAvailableAtom); diff --git a/src/components/molecules/shop-settings-form/shop-settings-form.molecule.jsx b/src/components/molecules/shop-settings-form/shop-settings-form.molecule.jsx index 38584c6..6b1e54a 100644 --- a/src/components/molecules/shop-settings-form/shop-settings-form.molecule.jsx +++ b/src/components/molecules/shop-settings-form/shop-settings-form.molecule.jsx @@ -60,6 +60,18 @@ export default function ShopSettingsFormMolecule({ form, saveLoading }) { >