IO-1485 Auto CC on parts order.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
<babeledit_project version="1.2" be_version="2.7.1">
|
<babeledit_project be_version="2.7.1" version="1.2">
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
BabelEdit project file
|
BabelEdit project file
|
||||||
@@ -4304,6 +4304,27 @@
|
|||||||
</translation>
|
</translation>
|
||||||
</translations>
|
</translations>
|
||||||
</concept_node>
|
</concept_node>
|
||||||
|
<concept_node>
|
||||||
|
<name>md_email_cc</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>
|
||||||
<folder_node>
|
<folder_node>
|
||||||
<name>md_hour_split</name>
|
<name>md_hour_split</name>
|
||||||
<children>
|
<children>
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ export function DmsLogEvents({ socket, logs, bodyshop }) {
|
|||||||
<Timeline.Item key={idx} color={LogLevelHierarchy(log.level)}>
|
<Timeline.Item key={idx} color={LogLevelHierarchy(log.level)}>
|
||||||
<Space wrap align="start" style={{}}>
|
<Space wrap align="start" style={{}}>
|
||||||
<Tag color={LogLevelHierarchy(log.level)}>{log.level}</Tag>
|
<Tag color={LogLevelHierarchy(log.level)}>{log.level}</Tag>
|
||||||
<span>{moment(log.timestamp).format("MM/DD/YYYY HH:MM:ss")}</span>
|
<span>{moment(log.timestamp).format("MM/DD/YYYY HH:mm:ss")}</span>
|
||||||
<Divider type="vertical" />
|
<Divider type="vertical" />
|
||||||
<span>{log.message}</span>
|
<span>{log.message}</span>
|
||||||
</Space>
|
</Space>
|
||||||
|
|||||||
@@ -149,6 +149,18 @@ export function EmailOverlayContainer({
|
|||||||
html: response.data,
|
html: response.data,
|
||||||
fileList: [],
|
fileList: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (
|
||||||
|
bodyshop.md_email_cc[emailConfig.template.name] &&
|
||||||
|
bodyshop.md_email_cc[emailConfig.template.name].length > 0
|
||||||
|
) {
|
||||||
|
form.setFieldsValue({
|
||||||
|
cc: [
|
||||||
|
...(form.getFieldValue("cc") || []),
|
||||||
|
...bodyshop.md_email_cc[emailConfig.template.name],
|
||||||
|
],
|
||||||
|
});
|
||||||
|
}
|
||||||
setLoading(false);
|
setLoading(false);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -176,7 +176,7 @@ export function ScheduleEventComponent({
|
|||||||
t("appointments.labels.reminder", {
|
t("appointments.labels.reminder", {
|
||||||
shopname: bodyshop.shopname,
|
shopname: bodyshop.shopname,
|
||||||
date: moment(event.start).format("MM/DD/YYYY"),
|
date: moment(event.start).format("MM/DD/YYYY"),
|
||||||
time: moment(event.start).format("HH:MM a"),
|
time: moment(event.start).format("HH:mm a"),
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
setVisible(false);
|
setVisible(false);
|
||||||
|
|||||||
@@ -467,6 +467,19 @@ export default function ShopInfoGeneral({ form }) {
|
|||||||
>
|
>
|
||||||
<Switch />
|
<Switch />
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
<Form.Item
|
||||||
|
name={["md_email_cc", "parts_order"]}
|
||||||
|
label={t("bodyshop.fields.md_email_cc", { template: "parts_order" })}
|
||||||
|
rules={[
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
//message: t("general.validation.required"),
|
||||||
|
type: "array",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
>
|
||||||
|
<Select mode="tags" />
|
||||||
|
</Form.Item>
|
||||||
<Form.Item
|
<Form.Item
|
||||||
name={["tt_allow_post_to_invoiced"]}
|
name={["tt_allow_post_to_invoiced"]}
|
||||||
label={t("bodyshop.fields.tt_allow_post_to_invoiced")}
|
label={t("bodyshop.fields.tt_allow_post_to_invoiced")}
|
||||||
|
|||||||
@@ -99,6 +99,7 @@ export const QUERY_BODYSHOP = gql`
|
|||||||
pbs_configuration
|
pbs_configuration
|
||||||
pbs_serialnumber
|
pbs_serialnumber
|
||||||
md_filehandlers
|
md_filehandlers
|
||||||
|
md_email_cc
|
||||||
employees {
|
employees {
|
||||||
user_email
|
user_email
|
||||||
id
|
id
|
||||||
@@ -195,6 +196,7 @@ export const UPDATE_SHOP = gql`
|
|||||||
pbs_configuration
|
pbs_configuration
|
||||||
pbs_serialnumber
|
pbs_serialnumber
|
||||||
md_filehandlers
|
md_filehandlers
|
||||||
|
md_email_cc
|
||||||
employees {
|
employees {
|
||||||
id
|
id
|
||||||
first_name
|
first_name
|
||||||
|
|||||||
@@ -271,6 +271,7 @@
|
|||||||
"md_ccc_rates": "Courtesy Car Contract Rate Presets",
|
"md_ccc_rates": "Courtesy Car Contract Rate Presets",
|
||||||
"md_classes": "Classes",
|
"md_classes": "Classes",
|
||||||
"md_ded_notes": "Deductible Notes",
|
"md_ded_notes": "Deductible Notes",
|
||||||
|
"md_email_cc": "Auto Email CC: $t(printcenter.subjects.jobs.{{template}})",
|
||||||
"md_hour_split": {
|
"md_hour_split": {
|
||||||
"paint": "Paint Hour Split",
|
"paint": "Paint Hour Split",
|
||||||
"prep": "Prep Hour Split"
|
"prep": "Prep Hour Split"
|
||||||
|
|||||||
@@ -271,6 +271,7 @@
|
|||||||
"md_ccc_rates": "",
|
"md_ccc_rates": "",
|
||||||
"md_classes": "",
|
"md_classes": "",
|
||||||
"md_ded_notes": "",
|
"md_ded_notes": "",
|
||||||
|
"md_email_cc": "",
|
||||||
"md_hour_split": {
|
"md_hour_split": {
|
||||||
"paint": "",
|
"paint": "",
|
||||||
"prep": ""
|
"prep": ""
|
||||||
|
|||||||
@@ -271,6 +271,7 @@
|
|||||||
"md_ccc_rates": "",
|
"md_ccc_rates": "",
|
||||||
"md_classes": "",
|
"md_classes": "",
|
||||||
"md_ded_notes": "",
|
"md_ded_notes": "",
|
||||||
|
"md_email_cc": "",
|
||||||
"md_hour_split": {
|
"md_hour_split": {
|
||||||
"paint": "",
|
"paint": "",
|
||||||
"prep": ""
|
"prep": ""
|
||||||
|
|||||||
@@ -829,6 +829,7 @@
|
|||||||
- md_ccc_rates
|
- md_ccc_rates
|
||||||
- md_classes
|
- md_classes
|
||||||
- md_ded_notes
|
- md_ded_notes
|
||||||
|
- md_email_cc
|
||||||
- md_estimators
|
- md_estimators
|
||||||
- md_filehandlers
|
- md_filehandlers
|
||||||
- md_hour_split
|
- md_hour_split
|
||||||
@@ -908,6 +909,7 @@
|
|||||||
- md_ccc_rates
|
- md_ccc_rates
|
||||||
- md_classes
|
- md_classes
|
||||||
- md_ded_notes
|
- md_ded_notes
|
||||||
|
- md_email_cc
|
||||||
- md_estimators
|
- md_estimators
|
||||||
- md_filehandlers
|
- md_filehandlers
|
||||||
- md_hour_split
|
- md_hour_split
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
-- Could not auto-generate a down migration.
|
||||||
|
-- Please write an appropriate down migration for the SQL below:
|
||||||
|
-- alter table "public"."bodyshops" add column "md_email_cc" jsonb
|
||||||
|
-- null default jsonb_build_object();
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
alter table "public"."bodyshops" add column "md_email_cc" jsonb
|
||||||
|
null default jsonb_build_object();
|
||||||
@@ -866,9 +866,9 @@ async function InsertServiceVehicleHistory(socket) {
|
|||||||
roNumber: socket.JobData.ro_number.match(/\d+/g),
|
roNumber: socket.JobData.ro_number.match(/\d+/g),
|
||||||
mileage: socket.txEnvelope.kmout,
|
mileage: socket.txEnvelope.kmout,
|
||||||
openDate: moment(socket.JobData.actual_in).format("YYYY-MM-DD"),
|
openDate: moment(socket.JobData.actual_in).format("YYYY-MM-DD"),
|
||||||
openTime: moment(socket.JobData.actual_in).format("HH:MM:ss"),
|
openTime: moment(socket.JobData.actual_in).format("HH:mm:ss"),
|
||||||
closeDate: moment(socket.JobData.invoice_date).format("YYYY-MM-DD"),
|
closeDate: moment(socket.JobData.invoice_date).format("YYYY-MM-DD"),
|
||||||
closeTime: moment(socket.JobData.invoice_date).format("HH:MM:ss"),
|
closeTime: moment(socket.JobData.invoice_date).format("HH:mm:ss"),
|
||||||
comments: socket.txEnvelope.story,
|
comments: socket.txEnvelope.story,
|
||||||
cashierID: socket.JobData.bodyshop.cdk_configuration.cashierid,
|
cashierID: socket.JobData.bodyshop.cdk_configuration.cashierid,
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user