Merged in rome/release/2024-01-05 (pull request #1138)

Rome/release/2024 01 05
This commit is contained in:
Patrick Fic
2024-01-06 00:56:31 +00:00
14 changed files with 96 additions and 35 deletions

View File

@@ -6,6 +6,7 @@ import { Link } from "react-router-dom";
import CurrencyFormatter from "../../utils/CurrencyFormatter";
import { TimeFormatter } from "../../utils/DateFormatter";
import PhoneFormatter from "../../utils/PhoneFormatter";
import { onlyUnique } from "../../utils/arrayHelper";
import { alphaSort, dateSort, statusSort } from "../../utils/sorters";
import JobAltTransportChange from "../job-at-change/job-at-change.component";
import JobPartsQueueCount from "../job-parts-queue-count/job-parts-queue-count.component";
@@ -573,12 +574,17 @@ const r = ({ technician, state, activeStatuses, data, bodyshop }) => {
sortOrder:
state.sortedInfo.columnKey === "estimator" && state.sortedInfo.order,
filters:
data?.map((s) => {
return {
text: `${s.est_ct_fn || ""} ${s.est_ct_ln || ""}`.trim(),
value: [`${s.est_ct_fn || ""} ${s.est_ct_ln || ""}`.trim()],
};
}) || [],
(data &&
data
.map((j) => `${j.est_ct_fn || ""} ${j.est_ct_ln || ""}`.trim())
.filter(onlyUnique)
.map((s) => {
return {
text: s || "N/A",
value: [s],
};
})) ||
[],
onFilter: (value, record) =>
value.includes(
`${record.est_ct_fn || ""} ${record.est_ct_ln || ""}`.trim()

View File

@@ -2,11 +2,11 @@ import { DeleteFilled } from "@ant-design/icons";
import { useMutation, useQuery } from "@apollo/client";
import {
Button,
Space,
Card,
Form,
Input,
InputNumber,
Space,
Switch,
notification,
} from "antd";
@@ -157,6 +157,18 @@ export function ShopEmployeeTeamsFormComponent({ bodyshop }) {
>
<Switch />
</Form.Item>
<Form.Item
label={t("employee_teams.fields.max_load")}
name="max_load"
rules={[
{
required: true,
//message: t("general.validation.required"),
},
]}
>
<InputNumber min={0} precision={1} />
</Form.Item>
</LayoutFormRow>
<Form.List name={["employee_team_members"]}>
{(fields, { add, remove, move }) => {
@@ -199,7 +211,7 @@ export function ShopEmployeeTeamsFormComponent({ bodyshop }) {
},
]}
>
<InputNumber min={0} max={100} precision={2}/>
<InputNumber min={0} max={100} precision={2} />
</Form.Item>
<Form.Item
label={t("joblines.fields.lbr_types.LAA")}

View File

@@ -4,6 +4,7 @@ export const QUERY_TEAMS = gql`
query QUERY_TEAMS {
employee_teams(order_by: { name: asc }) {
id
max_load
name
employee_team_members {
id
@@ -25,9 +26,9 @@ export const UPDATE_EMPLOYEE_TEAM = gql`
) {
update_employee_team_members_many(updates: $teamMemberUpdates) {
returning {
employeeid
id
labor_rates
employeeid
percentage
}
}
@@ -36,9 +37,9 @@ export const UPDATE_EMPLOYEE_TEAM = gql`
}
insert_employee_team_members(objects: $teamMemberInserts) {
returning {
employeeid
id
labor_rates
employeeid
percentage
}
}
@@ -47,12 +48,14 @@ export const UPDATE_EMPLOYEE_TEAM = gql`
_set: $employeeTeam
) {
active
name
id
max_load
name
employee_team_members {
percentage
labor_rates
employeeid
id
labor_rates
percentage
}
}
}
@@ -62,13 +65,14 @@ export const INSERT_EMPLOYEE_TEAM = gql`
mutation INSERT_EMPLOYEE_TEAM($employeeTeam: employee_teams_insert_input!) {
insert_employee_teams_one(object: $employeeTeam) {
active
name
id
max_load
name
employee_team_members {
employeeid
percentage
labor_rates
id
labor_rates
percentage
}
}
}
@@ -77,14 +81,15 @@ export const INSERT_EMPLOYEE_TEAM = gql`
export const QUERY_EMPLOYEE_TEAM_BY_ID = gql`
query QUERY_EMPLOYEE_TEAM_BY_ID($id: uuid!) {
employee_teams_by_pk(id: $id) {
id
name
active
id
max_load
name
employee_team_members {
employeeid
percentage
labor_rates
id
labor_rates
percentage
}
}
}

View File

@@ -976,6 +976,7 @@
"fields": {
"active": "Active",
"employeeid": "Employee",
"max_load": "Max Load",
"name": "Team Name",
"percentage": "Percent"
}
@@ -2713,6 +2714,7 @@
"jobs_reconcile": "Parts/Sublet/Labor Reconciliation",
"jobs_scheduled_completion": "Jobs Scheduled Completion",
"lag_time": "Lag Time",
"load_level": "Load Level",
"lost_sales": "Lost Sales",
"open_orders": "Open Orders by Date",
"open_orders_csr": "Open Orders by CSR",

View File

@@ -976,6 +976,7 @@
"fields": {
"active": "",
"employeeid": "",
"max_load": "",
"name": "",
"percentage": ""
}
@@ -2713,6 +2714,7 @@
"jobs_reconcile": "",
"jobs_scheduled_completion": "",
"lag_time": "",
"load_level": "",
"lost_sales": "",
"open_orders": "",
"open_orders_csr": "",

View File

@@ -976,6 +976,7 @@
"fields": {
"active": "",
"employeeid": "",
"max_load": "",
"name": "",
"percentage": ""
}
@@ -2713,6 +2714,7 @@
"jobs_reconcile": "",
"jobs_scheduled_completion": "",
"lag_time": "",
"load_level": "",
"lost_sales": "",
"open_orders": "",
"open_orders_csr": "",

View File

@@ -2179,6 +2179,19 @@ export const TemplateList = (type, context) => {
},
group: "customers",
},
load_level: {
title: i18n.t("reportcenter.templates.load_level"),
subject: i18n.t("reportcenter.templates.load_level"),
key: "load_level",
//idtype: "vendor",
disabled: false,
rangeFilter: {
object: i18n.t("reportcenter.labels.objects.jobs"),
field: i18n.t("jobs.fields.date_open"),
},
group: "jobs",
enhanced_payroll: true,
},
}
: {}),
...(!type || type === "courtesycarcontract"

View File

@@ -2023,24 +2023,24 @@
- active:
_eq: true
columns:
- labor_rates
- percentage
- created_at
- updated_at
- employeeid
- id
- labor_rates
- percentage
- teamid
- updated_at
select_permissions:
- role: user
permission:
columns:
- labor_rates
- percentage
- created_at
- updated_at
- employeeid
- id
- labor_rates
- percentage
- teamid
- updated_at
filter:
employee_team:
bodyshop:
@@ -2055,13 +2055,13 @@
- role: user
permission:
columns:
- labor_rates
- percentage
- created_at
- updated_at
- employeeid
- id
- labor_rates
- percentage
- teamid
- updated_at
filter:
employee_team:
bodyshop:
@@ -2123,21 +2123,23 @@
_eq: true
columns:
- active
- name
- created_at
- updated_at
- bodyshopid
- created_at
- id
- max_load
- name
- updated_at
select_permissions:
- role: user
permission:
columns:
- active
- name
- created_at
- updated_at
- bodyshopid
- created_at
- id
- max_load
- name
- updated_at
filter:
bodyshop:
associations:
@@ -2153,6 +2155,7 @@
columns:
- active
- bodyshopid
- max_load
- name
- updated_at
filter:

View File

@@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."employee_team_members" add column "max_load" numeric
-- not null default '10000';

View File

@@ -0,0 +1,2 @@
alter table "public"."employee_team_members" add column "max_load" numeric
not null default '10000';

View File

@@ -0,0 +1,3 @@
alter table "public"."employee_team_members" alter column "max_load" set default '10000'::numeric;
alter table "public"."employee_team_members" alter column "max_load" drop not null;
alter table "public"."employee_team_members" add column "max_load" numeric;

View File

@@ -0,0 +1 @@
alter table "public"."employee_team_members" drop column "max_load" cascade;

View File

@@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."employee_teams" add column "max_load" numeric
-- not null default '10000';

View File

@@ -0,0 +1,2 @@
alter table "public"."employee_teams" add column "max_load" numeric
not null default '10000';