IO-1228 IO-1282 RC Categories & Searching
This commit is contained in:
@@ -34524,6 +34524,116 @@
|
|||||||
</translation>
|
</translation>
|
||||||
</translations>
|
</translations>
|
||||||
</concept_node>
|
</concept_node>
|
||||||
|
<folder_node>
|
||||||
|
<name>groups</name>
|
||||||
|
<children>
|
||||||
|
<concept_node>
|
||||||
|
<name>customers</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>
|
||||||
|
<concept_node>
|
||||||
|
<name>jobs</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>
|
||||||
|
<concept_node>
|
||||||
|
<name>payroll</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>
|
||||||
|
<concept_node>
|
||||||
|
<name>purchases</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>
|
||||||
|
<concept_node>
|
||||||
|
<name>sales</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>
|
||||||
|
</children>
|
||||||
|
</folder_node>
|
||||||
<concept_node>
|
<concept_node>
|
||||||
<name>key</name>
|
<name>key</name>
|
||||||
<definition_loaded>false</definition_loaded>
|
<definition_loaded>false</definition_loaded>
|
||||||
|
|||||||
@@ -1,5 +1,16 @@
|
|||||||
import { useLazyQuery } from "@apollo/client";
|
import { useLazyQuery } from "@apollo/client";
|
||||||
import { Button, DatePicker, Form, Radio, Space } from "antd";
|
import {
|
||||||
|
Button,
|
||||||
|
Card,
|
||||||
|
Col,
|
||||||
|
DatePicker,
|
||||||
|
Form,
|
||||||
|
Input,
|
||||||
|
Radio,
|
||||||
|
Row,
|
||||||
|
Typography,
|
||||||
|
} from "antd";
|
||||||
|
import _ from "lodash";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
import React, { useState } from "react";
|
import React, { useState } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
@@ -14,7 +25,6 @@ import { TemplateList } from "../../utils/TemplateConstants";
|
|||||||
import EmployeeSearchSelect from "../employee-search-select/employee-search-select.component";
|
import EmployeeSearchSelect from "../employee-search-select/employee-search-select.component";
|
||||||
import VendorSearchSelect from "../vendor-search-select/vendor-search-select.component";
|
import VendorSearchSelect from "../vendor-search-select/vendor-search-select.component";
|
||||||
import "./report-center-modal.styles.scss";
|
import "./report-center-modal.styles.scss";
|
||||||
|
|
||||||
const mapStateToProps = createStructuredSelector({
|
const mapStateToProps = createStructuredSelector({
|
||||||
reportCenterModal: selectReportCenter,
|
reportCenterModal: selectReportCenter,
|
||||||
});
|
});
|
||||||
@@ -28,9 +38,14 @@ export default connect(
|
|||||||
|
|
||||||
export function ReportCenterModalComponent({ reportCenterModal }) {
|
export function ReportCenterModalComponent({ reportCenterModal }) {
|
||||||
const [form] = Form.useForm();
|
const [form] = Form.useForm();
|
||||||
|
const [search, setSearch] = useState("");
|
||||||
|
|
||||||
const [loading, setLoading] = useState(false);
|
const [loading, setLoading] = useState(false);
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
const Templates = TemplateList("report_center");
|
const Templates = TemplateList("report_center");
|
||||||
|
const ReportsList = Object.keys(Templates).map((key) => {
|
||||||
|
return Templates[key];
|
||||||
|
});
|
||||||
const { visible } = reportCenterModal;
|
const { visible } = reportCenterModal;
|
||||||
|
|
||||||
const [callVendorQuery, { data: vendorData, called: vendorCalled }] =
|
const [callVendorQuery, { data: vendorData, called: vendorCalled }] =
|
||||||
@@ -80,6 +95,17 @@ export function ReportCenterModalComponent({ reportCenterModal }) {
|
|||||||
setLoading(false);
|
setLoading(false);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const FilteredReportsList =
|
||||||
|
search !== ""
|
||||||
|
? ReportsList.filter((r) =>
|
||||||
|
r.title.toLowerCase().includes(search.toLowerCase())
|
||||||
|
)
|
||||||
|
: ReportsList;
|
||||||
|
|
||||||
|
//Group it, create cards, and then filter out.
|
||||||
|
|
||||||
|
const grouped = _.groupBy(FilteredReportsList, "group");
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<Form
|
<Form
|
||||||
@@ -88,6 +114,10 @@ export function ReportCenterModalComponent({ reportCenterModal }) {
|
|||||||
layout="vertical"
|
layout="vertical"
|
||||||
form={form}
|
form={form}
|
||||||
>
|
>
|
||||||
|
<Input.Search
|
||||||
|
onChange={(e) => setSearch(e.target.value)}
|
||||||
|
value={search}
|
||||||
|
/>
|
||||||
<Form.Item
|
<Form.Item
|
||||||
name="key"
|
name="key"
|
||||||
label={t("reportcenter.labels.key")}
|
label={t("reportcenter.labels.key")}
|
||||||
@@ -100,23 +130,42 @@ export function ReportCenterModalComponent({ reportCenterModal }) {
|
|||||||
]}
|
]}
|
||||||
>
|
>
|
||||||
<Radio.Group>
|
<Radio.Group>
|
||||||
<Space
|
{/* {Object.keys(Templates).map((key) => (
|
||||||
direction="vertical"
|
|
||||||
wrap
|
|
||||||
size="small"
|
|
||||||
style={{
|
|
||||||
maxHeight: "50vh",
|
|
||||||
}}
|
|
||||||
>
|
|
||||||
{Object.keys(Templates).map((key) => (
|
|
||||||
<Radio key={key} value={key}>
|
<Radio key={key} value={key}>
|
||||||
{Templates[key].title}
|
{Templates[key].title}
|
||||||
</Radio>
|
</Radio>
|
||||||
|
))} */}
|
||||||
|
|
||||||
|
<Row gutter={[16, 16]}>
|
||||||
|
{Object.keys(grouped).map((key) => (
|
||||||
|
<Col md={8} sm={12} key={key}>
|
||||||
|
<Card.Grid
|
||||||
|
style={{
|
||||||
|
width: "100%",
|
||||||
|
height: "100%",
|
||||||
|
maxHeight: "33vh",
|
||||||
|
overflowY: "scroll",
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<Typography.Title level={4}>
|
||||||
|
{t(`reportcenter.labels.groups.${key}`)}
|
||||||
|
</Typography.Title>
|
||||||
|
<ul style={{ columns: "3 auto" }}>
|
||||||
|
{grouped[key].map((item) => (
|
||||||
|
<li key={item.key}>
|
||||||
|
<Radio key={item.key} value={item.key}>
|
||||||
|
{item.title}
|
||||||
|
</Radio>
|
||||||
|
</li>
|
||||||
|
))}
|
||||||
|
</ul>
|
||||||
|
</Card.Grid>
|
||||||
|
</Col>
|
||||||
))}
|
))}
|
||||||
</Space>
|
</Row>
|
||||||
</Radio.Group>
|
</Radio.Group>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
<Form.Item dependencies={["key"]}>
|
<Form.Item style={{ margin: 0, padding: 0 }} dependencies={["key"]}>
|
||||||
{() => {
|
{() => {
|
||||||
const key = form.getFieldValue("key");
|
const key = form.getFieldValue("key");
|
||||||
if (!key) return null;
|
if (!key) return null;
|
||||||
@@ -137,14 +186,14 @@ export function ReportCenterModalComponent({ reportCenterModal }) {
|
|||||||
shouldUpdate={(prev, cur) =>
|
shouldUpdate={(prev, cur) =>
|
||||||
Templates[prev.key]?.idtype !== Templates[cur.key]?.idtype
|
Templates[prev.key]?.idtype !== Templates[cur.key]?.idtype
|
||||||
}
|
}
|
||||||
style={{ display: "none" }}
|
style={{ display: "none", margin: 0, padding: 0 }}
|
||||||
>
|
>
|
||||||
{() => {
|
{() => {
|
||||||
form.setFieldsValue({ id: null });
|
form.setFieldsValue({ id: null });
|
||||||
return null;
|
return null;
|
||||||
}}
|
}}
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
<Form.Item dependencies={["key"]}>
|
<Form.Item style={{ margin: 0, padding: 0 }} dependencies={["key"]}>
|
||||||
{() => {
|
{() => {
|
||||||
const key = form.getFieldValue("key");
|
const key = form.getFieldValue("key");
|
||||||
if (!key) return null;
|
if (!key) return null;
|
||||||
|
|||||||
@@ -2073,6 +2073,13 @@
|
|||||||
"employee": "Employee",
|
"employee": "Employee",
|
||||||
"filterson": "Filters on {{object}}: {{field}}",
|
"filterson": "Filters on {{object}}: {{field}}",
|
||||||
"generateasemail": "Generate as Email?",
|
"generateasemail": "Generate as Email?",
|
||||||
|
"groups": {
|
||||||
|
"customers": "Customers",
|
||||||
|
"jobs": "Jobs & Costing",
|
||||||
|
"payroll": "Payroll",
|
||||||
|
"purchases": "Purchases",
|
||||||
|
"sales": "Sales"
|
||||||
|
},
|
||||||
"key": "Report",
|
"key": "Report",
|
||||||
"objects": {
|
"objects": {
|
||||||
"appointments": "Appointments",
|
"appointments": "Appointments",
|
||||||
|
|||||||
@@ -2073,6 +2073,13 @@
|
|||||||
"employee": "",
|
"employee": "",
|
||||||
"filterson": "",
|
"filterson": "",
|
||||||
"generateasemail": "",
|
"generateasemail": "",
|
||||||
|
"groups": {
|
||||||
|
"customers": "",
|
||||||
|
"jobs": "",
|
||||||
|
"payroll": "",
|
||||||
|
"purchases": "",
|
||||||
|
"sales": ""
|
||||||
|
},
|
||||||
"key": "",
|
"key": "",
|
||||||
"objects": {
|
"objects": {
|
||||||
"appointments": "",
|
"appointments": "",
|
||||||
|
|||||||
@@ -2073,6 +2073,13 @@
|
|||||||
"employee": "",
|
"employee": "",
|
||||||
"filterson": "",
|
"filterson": "",
|
||||||
"generateasemail": "",
|
"generateasemail": "",
|
||||||
|
"groups": {
|
||||||
|
"customers": "",
|
||||||
|
"jobs": "",
|
||||||
|
"payroll": "",
|
||||||
|
"purchases": "",
|
||||||
|
"sales": ""
|
||||||
|
},
|
||||||
"key": "",
|
"key": "",
|
||||||
"objects": {
|
"objects": {
|
||||||
"appointments": "",
|
"appointments": "",
|
||||||
|
|||||||
@@ -417,222 +417,6 @@ export const TemplateList = (type, context) => {
|
|||||||
...(!type || type === "csi" ? {} : {}),
|
...(!type || type === "csi" ? {} : {}),
|
||||||
...(!type || type === "report_center"
|
...(!type || type === "report_center"
|
||||||
? {
|
? {
|
||||||
payments_by_date: {
|
|
||||||
title: i18n.t("reportcenter.templates.payments_by_date"),
|
|
||||||
subject: i18n.t("reportcenter.templates.payments_by_date"),
|
|
||||||
key: "payments_by_date",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.payments"),
|
|
||||||
field: i18n.t("payments.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
payments_by_date_type: {
|
|
||||||
title: i18n.t("reportcenter.templates.payments_by_date_type"),
|
|
||||||
subject: i18n.t("reportcenter.templates.payments_by_date_type"),
|
|
||||||
key: "payments_by_date_type",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.payments"),
|
|
||||||
field: i18n.t("payments.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_by_date_range_detail: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_date_range_detail"
|
|
||||||
),
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_date_range_detail"
|
|
||||||
),
|
|
||||||
key: "purchases_by_date_range_detail",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.bills"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_by_date_range_summary: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_date_range_summary"
|
|
||||||
),
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_date_range_summary"
|
|
||||||
),
|
|
||||||
key: "purchases_by_date_range_summary",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.bills"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_by_vendor_detailed_date_range: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_vendor_detailed_date_range"
|
|
||||||
),
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_vendor_detailed_date_range"
|
|
||||||
),
|
|
||||||
key: "purchases_by_vendor_detailed_date_range",
|
|
||||||
idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.bills"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_by_vendor_summary_date_range: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_vendor_summary_date_range"
|
|
||||||
),
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_vendor_summary_date_range"
|
|
||||||
),
|
|
||||||
key: "purchases_by_vendor_summary_date_range",
|
|
||||||
idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.bills"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_by_cost_center_detail: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_cost_center_detail"
|
|
||||||
),
|
|
||||||
description: "",
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_cost_center_detail"
|
|
||||||
),
|
|
||||||
key: "purchases_by_cost_center_detail",
|
|
||||||
//idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.bills"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_by_cost_center_summary: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_cost_center_summary"
|
|
||||||
),
|
|
||||||
description: "",
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_by_cost_center_summary"
|
|
||||||
),
|
|
||||||
key: "purchases_by_cost_center_summary",
|
|
||||||
//idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.bills"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_grouped_by_vendor_detailed: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_grouped_by_vendor_detailed"
|
|
||||||
),
|
|
||||||
description: "",
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_grouped_by_vendor_detailed"
|
|
||||||
),
|
|
||||||
key: "purchases_grouped_by_vendor_detailed",
|
|
||||||
//idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
purchases_grouped_by_vendor_summary: {
|
|
||||||
title: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_grouped_by_vendor_summary"
|
|
||||||
),
|
|
||||||
description: "",
|
|
||||||
subject: i18n.t(
|
|
||||||
"reportcenter.templates.purchases_grouped_by_vendor_summary"
|
|
||||||
),
|
|
||||||
key: "purchases_grouped_by_vendor_summary",
|
|
||||||
//idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
|
||||||
field: i18n.t("bills.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
schedule: {
|
|
||||||
title: i18n.t("reportcenter.templates.schedule"),
|
|
||||||
subject: i18n.t("reportcenter.templates.schedule"),
|
|
||||||
key: "schedule",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.appointments"),
|
|
||||||
field: i18n.t("appointments.fields.time"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
timetickets: {
|
|
||||||
title: i18n.t("reportcenter.templates.timetickets"),
|
|
||||||
subject: i18n.t("reportcenter.templates.timetickets"),
|
|
||||||
key: "timetickets",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
|
||||||
field: i18n.t("timetickets.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
timetickets_employee: {
|
|
||||||
title: i18n.t("reportcenter.templates.timetickets_employee"),
|
|
||||||
subject: i18n.t("reportcenter.templates.timetickets_employee"),
|
|
||||||
key: "timetickets_employee",
|
|
||||||
idtype: "employee",
|
|
||||||
disabled: false,
|
|
||||||
},
|
|
||||||
attendance_detail: {
|
|
||||||
title: i18n.t("reportcenter.templates.attendance_detail"),
|
|
||||||
subject: i18n.t("reportcenter.templates.attendance_detail"),
|
|
||||||
key: "attendance_detail",
|
|
||||||
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
|
||||||
field: i18n.t("timetickets.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
attendance_summary: {
|
|
||||||
title: i18n.t("reportcenter.templates.attendance_summary"),
|
|
||||||
subject: i18n.t("reportcenter.templates.attendance_summary"),
|
|
||||||
key: "attendance_summary",
|
|
||||||
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
|
||||||
field: i18n.t("timetickets.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
attendance_employee: {
|
|
||||||
title: i18n.t("reportcenter.templates.attendance_employee"),
|
|
||||||
subject: i18n.t("reportcenter.templates.attendance_employee"),
|
|
||||||
key: "attendance_employee",
|
|
||||||
idtype: "employee",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
|
||||||
field: i18n.t("timetickets.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
timetickets_summary: {
|
|
||||||
title: i18n.t("reportcenter.templates.timetickets_summary"),
|
|
||||||
subject: i18n.t("reportcenter.templates.timetickets_summary"),
|
|
||||||
key: "timetickets_summary",
|
|
||||||
//idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
|
||||||
field: i18n.t("timetickets.fields.date"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
hours_sold_detail_closed: {
|
hours_sold_detail_closed: {
|
||||||
title: i18n.t("reportcenter.templates.hours_sold_detail_closed"),
|
title: i18n.t("reportcenter.templates.hours_sold_detail_closed"),
|
||||||
description: "",
|
description: "",
|
||||||
@@ -644,6 +428,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_detail_closed_ins_co: {
|
hours_sold_detail_closed_ins_co: {
|
||||||
@@ -661,6 +446,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_summary_closed: {
|
hours_sold_summary_closed: {
|
||||||
@@ -674,6 +460,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_summary_closed_ins_co: {
|
hours_sold_summary_closed_ins_co: {
|
||||||
@@ -691,6 +478,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_detail_open: {
|
hours_sold_detail_open: {
|
||||||
@@ -704,6 +492,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_detail_open_ins_co: {
|
hours_sold_detail_open_ins_co: {
|
||||||
@@ -721,6 +510,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_summary_open: {
|
hours_sold_summary_open: {
|
||||||
@@ -734,6 +524,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_summary_open_ins_co: {
|
hours_sold_summary_open_ins_co: {
|
||||||
@@ -751,6 +542,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
hours_sold_detail_closed_csr: {
|
hours_sold_detail_closed_csr: {
|
||||||
@@ -768,6 +560,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
hours_sold_detail_open_csr: {
|
hours_sold_detail_open_csr: {
|
||||||
title: i18n.t("reportcenter.templates.hours_sold_detail_open_csr"),
|
title: i18n.t("reportcenter.templates.hours_sold_detail_open_csr"),
|
||||||
@@ -782,6 +575,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
hours_sold_summary_closed_csr: {
|
hours_sold_summary_closed_csr: {
|
||||||
title: i18n.t(
|
title: i18n.t(
|
||||||
@@ -798,6 +592,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
hours_sold_summary_open_csr: {
|
hours_sold_summary_open_csr: {
|
||||||
title: i18n.t("reportcenter.templates.hours_sold_summary_open_csr"),
|
title: i18n.t("reportcenter.templates.hours_sold_summary_open_csr"),
|
||||||
@@ -812,54 +607,137 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
estimator_detail: {
|
purchases_by_date_range_detail: {
|
||||||
title: i18n.t("reportcenter.templates.estimator_detail"),
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_date_range_detail"
|
||||||
|
),
|
||||||
|
subject: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_date_range_detail"
|
||||||
|
),
|
||||||
|
key: "purchases_by_date_range_detail",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.bills"),
|
||||||
|
field: i18n.t("bills.fields.date"),
|
||||||
|
},
|
||||||
|
group: "purchases",
|
||||||
|
},
|
||||||
|
purchases_by_date_range_summary: {
|
||||||
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_date_range_summary"
|
||||||
|
),
|
||||||
|
subject: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_date_range_summary"
|
||||||
|
),
|
||||||
|
key: "purchases_by_date_range_summary",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.bills"),
|
||||||
|
field: i18n.t("bills.fields.date"),
|
||||||
|
},
|
||||||
|
group: "purchases",
|
||||||
|
},
|
||||||
|
purchases_by_vendor_detailed_date_range: {
|
||||||
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_vendor_detailed_date_range"
|
||||||
|
),
|
||||||
|
subject: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_vendor_detailed_date_range"
|
||||||
|
),
|
||||||
|
key: "purchases_by_vendor_detailed_date_range",
|
||||||
|
idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.bills"),
|
||||||
|
field: i18n.t("bills.fields.date"),
|
||||||
|
},
|
||||||
|
group: "purchases",
|
||||||
|
},
|
||||||
|
purchases_by_vendor_summary_date_range: {
|
||||||
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_vendor_summary_date_range"
|
||||||
|
),
|
||||||
|
subject: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_vendor_summary_date_range"
|
||||||
|
),
|
||||||
|
key: "purchases_by_vendor_summary_date_range",
|
||||||
|
idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.bills"),
|
||||||
|
field: i18n.t("bills.fields.date"),
|
||||||
|
},
|
||||||
|
group: "purchases",
|
||||||
|
},
|
||||||
|
purchases_by_cost_center_detail: {
|
||||||
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_cost_center_detail"
|
||||||
|
),
|
||||||
description: "",
|
description: "",
|
||||||
subject: i18n.t("reportcenter.templates.estimator_detail"),
|
subject: i18n.t(
|
||||||
key: "estimator_detail",
|
"reportcenter.templates.purchases_by_cost_center_detail"
|
||||||
|
),
|
||||||
|
key: "purchases_by_cost_center_detail",
|
||||||
|
//idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.bills"),
|
||||||
|
field: i18n.t("bills.fields.date"),
|
||||||
|
},
|
||||||
|
group: "purchases",
|
||||||
|
},
|
||||||
|
purchases_by_cost_center_summary: {
|
||||||
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_cost_center_summary"
|
||||||
|
),
|
||||||
|
description: "",
|
||||||
|
subject: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_by_cost_center_summary"
|
||||||
|
),
|
||||||
|
key: "purchases_by_cost_center_summary",
|
||||||
|
//idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.bills"),
|
||||||
|
field: i18n.t("bills.fields.date"),
|
||||||
|
},
|
||||||
|
group: "purchases",
|
||||||
|
},
|
||||||
|
purchases_grouped_by_vendor_detailed: {
|
||||||
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_grouped_by_vendor_detailed"
|
||||||
|
),
|
||||||
|
description: "",
|
||||||
|
subject: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_grouped_by_vendor_detailed"
|
||||||
|
),
|
||||||
|
key: "purchases_grouped_by_vendor_detailed",
|
||||||
//idtype: "vendor",
|
//idtype: "vendor",
|
||||||
disabled: false,
|
disabled: false,
|
||||||
rangeFilter: {
|
rangeFilter: {
|
||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("bills.fields.date"),
|
||||||
},
|
},
|
||||||
|
group: "purchases",
|
||||||
},
|
},
|
||||||
estimator_summary: {
|
purchases_grouped_by_vendor_summary: {
|
||||||
title: i18n.t("reportcenter.templates.estimator_summary"),
|
title: i18n.t(
|
||||||
|
"reportcenter.templates.purchases_grouped_by_vendor_summary"
|
||||||
|
),
|
||||||
description: "",
|
description: "",
|
||||||
subject: i18n.t("reportcenter.templates.estimator_summary"),
|
subject: i18n.t(
|
||||||
key: "estimator_summary",
|
"reportcenter.templates.purchases_grouped_by_vendor_summary"
|
||||||
|
),
|
||||||
|
key: "purchases_grouped_by_vendor_summary",
|
||||||
//idtype: "vendor",
|
//idtype: "vendor",
|
||||||
disabled: false,
|
disabled: false,
|
||||||
rangeFilter: {
|
rangeFilter: {
|
||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("bills.fields.date"),
|
||||||
},
|
|
||||||
},
|
|
||||||
supplement_ratio_ins_co: {
|
|
||||||
title: i18n.t("reportcenter.templates.supplement_ratio_ins_co"),
|
|
||||||
description: "",
|
|
||||||
subject: i18n.t("reportcenter.templates.supplement_ratio_ins_co"),
|
|
||||||
key: "supplement_ratio_ins_co",
|
|
||||||
//idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
credits_not_received_date: {
|
|
||||||
title: i18n.t("reportcenter.templates.credits_not_received_date"),
|
|
||||||
description: "",
|
|
||||||
subject: i18n.t("reportcenter.templates.credits_not_received_date"),
|
|
||||||
key: "credits_not_received_date",
|
|
||||||
//idtype: "vendor",
|
|
||||||
disabled: false,
|
|
||||||
rangeFilter: {
|
|
||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
|
||||||
},
|
},
|
||||||
|
group: "purchases",
|
||||||
},
|
},
|
||||||
job_costing_ro_date_summary: {
|
job_costing_ro_date_summary: {
|
||||||
title: i18n.t("reportcenter.templates.job_costing_ro_date_summary"),
|
title: i18n.t("reportcenter.templates.job_costing_ro_date_summary"),
|
||||||
@@ -874,6 +752,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
job_costing_ro_csr: {
|
job_costing_ro_csr: {
|
||||||
title: i18n.t("reportcenter.templates.job_costing_ro_csr"),
|
title: i18n.t("reportcenter.templates.job_costing_ro_csr"),
|
||||||
@@ -886,6 +765,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
job_costing_ro_ins_co: {
|
job_costing_ro_ins_co: {
|
||||||
title: i18n.t("reportcenter.templates.job_costing_ro_ins_co"),
|
title: i18n.t("reportcenter.templates.job_costing_ro_ins_co"),
|
||||||
@@ -898,6 +778,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
job_costing_ro_date_detail: {
|
job_costing_ro_date_detail: {
|
||||||
title: i18n.t("reportcenter.templates.job_costing_ro_date_detail"),
|
title: i18n.t("reportcenter.templates.job_costing_ro_date_detail"),
|
||||||
@@ -912,6 +793,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
job_costing_ro_estimator: {
|
job_costing_ro_estimator: {
|
||||||
title: i18n.t("reportcenter.templates.job_costing_ro_estimator"),
|
title: i18n.t("reportcenter.templates.job_costing_ro_estimator"),
|
||||||
@@ -924,7 +806,165 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
|
payments_by_date: {
|
||||||
|
title: i18n.t("reportcenter.templates.payments_by_date"),
|
||||||
|
subject: i18n.t("reportcenter.templates.payments_by_date"),
|
||||||
|
key: "payments_by_date",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.payments"),
|
||||||
|
field: i18n.t("payments.fields.date"),
|
||||||
|
},
|
||||||
|
group: "customers",
|
||||||
|
},
|
||||||
|
payments_by_date_type: {
|
||||||
|
title: i18n.t("reportcenter.templates.payments_by_date_type"),
|
||||||
|
subject: i18n.t("reportcenter.templates.payments_by_date_type"),
|
||||||
|
key: "payments_by_date_type",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.payments"),
|
||||||
|
field: i18n.t("payments.fields.date"),
|
||||||
|
},
|
||||||
|
group: "customers",
|
||||||
|
},
|
||||||
|
|
||||||
|
schedule: {
|
||||||
|
title: i18n.t("reportcenter.templates.schedule"),
|
||||||
|
subject: i18n.t("reportcenter.templates.schedule"),
|
||||||
|
key: "schedule",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.appointments"),
|
||||||
|
field: i18n.t("appointments.fields.time"),
|
||||||
|
},
|
||||||
|
group: "customers",
|
||||||
|
},
|
||||||
|
|
||||||
|
timetickets: {
|
||||||
|
title: i18n.t("reportcenter.templates.timetickets"),
|
||||||
|
subject: i18n.t("reportcenter.templates.timetickets"),
|
||||||
|
key: "timetickets",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
||||||
|
field: i18n.t("timetickets.fields.date"),
|
||||||
|
},
|
||||||
|
group: "payroll",
|
||||||
|
},
|
||||||
|
timetickets_employee: {
|
||||||
|
title: i18n.t("reportcenter.templates.timetickets_employee"),
|
||||||
|
subject: i18n.t("reportcenter.templates.timetickets_employee"),
|
||||||
|
key: "timetickets_employee",
|
||||||
|
idtype: "employee",
|
||||||
|
disabled: false,
|
||||||
|
group: "payroll",
|
||||||
|
},
|
||||||
|
attendance_detail: {
|
||||||
|
title: i18n.t("reportcenter.templates.attendance_detail"),
|
||||||
|
subject: i18n.t("reportcenter.templates.attendance_detail"),
|
||||||
|
key: "attendance_detail",
|
||||||
|
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
||||||
|
field: i18n.t("timetickets.fields.date"),
|
||||||
|
},
|
||||||
|
group: "payroll",
|
||||||
|
},
|
||||||
|
attendance_summary: {
|
||||||
|
title: i18n.t("reportcenter.templates.attendance_summary"),
|
||||||
|
subject: i18n.t("reportcenter.templates.attendance_summary"),
|
||||||
|
key: "attendance_summary",
|
||||||
|
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
||||||
|
field: i18n.t("timetickets.fields.date"),
|
||||||
|
},
|
||||||
|
group: "payroll",
|
||||||
|
},
|
||||||
|
attendance_employee: {
|
||||||
|
title: i18n.t("reportcenter.templates.attendance_employee"),
|
||||||
|
subject: i18n.t("reportcenter.templates.attendance_employee"),
|
||||||
|
key: "attendance_employee",
|
||||||
|
idtype: "employee",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
||||||
|
field: i18n.t("timetickets.fields.date"),
|
||||||
|
},
|
||||||
|
group: "payroll",
|
||||||
|
},
|
||||||
|
|
||||||
|
timetickets_summary: {
|
||||||
|
title: i18n.t("reportcenter.templates.timetickets_summary"),
|
||||||
|
subject: i18n.t("reportcenter.templates.timetickets_summary"),
|
||||||
|
key: "timetickets_summary",
|
||||||
|
//idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.timetickets"),
|
||||||
|
field: i18n.t("timetickets.fields.date"),
|
||||||
|
},
|
||||||
|
group: "payroll",
|
||||||
|
},
|
||||||
|
|
||||||
|
estimator_detail: {
|
||||||
|
title: i18n.t("reportcenter.templates.estimator_detail"),
|
||||||
|
description: "",
|
||||||
|
subject: i18n.t("reportcenter.templates.estimator_detail"),
|
||||||
|
key: "estimator_detail",
|
||||||
|
//idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
|
},
|
||||||
|
group: "sales",
|
||||||
|
},
|
||||||
|
estimator_summary: {
|
||||||
|
title: i18n.t("reportcenter.templates.estimator_summary"),
|
||||||
|
description: "",
|
||||||
|
subject: i18n.t("reportcenter.templates.estimator_summary"),
|
||||||
|
key: "estimator_summary",
|
||||||
|
//idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
|
},
|
||||||
|
group: "sales",
|
||||||
|
},
|
||||||
|
supplement_ratio_ins_co: {
|
||||||
|
title: i18n.t("reportcenter.templates.supplement_ratio_ins_co"),
|
||||||
|
description: "",
|
||||||
|
subject: i18n.t("reportcenter.templates.supplement_ratio_ins_co"),
|
||||||
|
key: "supplement_ratio_ins_co",
|
||||||
|
//idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
|
},
|
||||||
|
group: "sales",
|
||||||
|
},
|
||||||
|
credits_not_received_date: {
|
||||||
|
title: i18n.t("reportcenter.templates.credits_not_received_date"),
|
||||||
|
description: "",
|
||||||
|
subject: i18n.t("reportcenter.templates.credits_not_received_date"),
|
||||||
|
key: "credits_not_received_date",
|
||||||
|
//idtype: "vendor",
|
||||||
|
disabled: false,
|
||||||
|
rangeFilter: {
|
||||||
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
|
},
|
||||||
|
group: "purchases",
|
||||||
|
},
|
||||||
|
|
||||||
void_ros: {
|
void_ros: {
|
||||||
title: i18n.t("reportcenter.templates.void_ros"),
|
title: i18n.t("reportcenter.templates.void_ros"),
|
||||||
description: "",
|
description: "",
|
||||||
@@ -936,6 +976,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_by_csr: {
|
gsr_by_csr: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_by_csr"),
|
title: i18n.t("reportcenter.templates.gsr_by_csr"),
|
||||||
@@ -948,6 +989,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_by_make: {
|
gsr_by_make: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_by_make"),
|
title: i18n.t("reportcenter.templates.gsr_by_make"),
|
||||||
@@ -960,6 +1002,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_by_delivery_date: {
|
gsr_by_delivery_date: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_by_delivery_date"),
|
title: i18n.t("reportcenter.templates.gsr_by_delivery_date"),
|
||||||
@@ -972,6 +1015,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.actual_delivery"),
|
field: i18n.t("jobs.fields.actual_delivery"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_by_referral: {
|
gsr_by_referral: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_by_referral"),
|
title: i18n.t("reportcenter.templates.gsr_by_referral"),
|
||||||
@@ -984,6 +1028,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_by_ro: {
|
gsr_by_ro: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_by_ro"),
|
title: i18n.t("reportcenter.templates.gsr_by_ro"),
|
||||||
@@ -996,6 +1041,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_by_ins_co: {
|
gsr_by_ins_co: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_by_ins_co"),
|
title: i18n.t("reportcenter.templates.gsr_by_ins_co"),
|
||||||
@@ -1008,6 +1054,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_by_exported_date: {
|
gsr_by_exported_date: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_by_exported_date"),
|
title: i18n.t("reportcenter.templates.gsr_by_exported_date"),
|
||||||
@@ -1020,6 +1067,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_exported"),
|
field: i18n.t("jobs.fields.date_exported"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
|
|
||||||
gsr_by_estimator: {
|
gsr_by_estimator: {
|
||||||
@@ -1033,6 +1081,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
gsr_labor_only: {
|
gsr_labor_only: {
|
||||||
title: i18n.t("reportcenter.templates.gsr_labor_only"),
|
title: i18n.t("reportcenter.templates.gsr_labor_only"),
|
||||||
@@ -1045,6 +1094,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
open_orders: {
|
open_orders: {
|
||||||
title: i18n.t("reportcenter.templates.open_orders"),
|
title: i18n.t("reportcenter.templates.open_orders"),
|
||||||
@@ -1057,6 +1107,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
open_orders_csr: {
|
open_orders_csr: {
|
||||||
title: i18n.t("reportcenter.templates.open_orders_csr"),
|
title: i18n.t("reportcenter.templates.open_orders_csr"),
|
||||||
@@ -1069,6 +1120,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
open_orders_estimator: {
|
open_orders_estimator: {
|
||||||
title: i18n.t("reportcenter.templates.open_orders_estimator"),
|
title: i18n.t("reportcenter.templates.open_orders_estimator"),
|
||||||
@@ -1081,6 +1133,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
open_orders_ins_co: {
|
open_orders_ins_co: {
|
||||||
title: i18n.t("reportcenter.templates.open_orders_ins_co"),
|
title: i18n.t("reportcenter.templates.open_orders_ins_co"),
|
||||||
@@ -1093,6 +1146,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
export_payables: {
|
export_payables: {
|
||||||
title: i18n.t("reportcenter.templates.export_payables"),
|
title: i18n.t("reportcenter.templates.export_payables"),
|
||||||
@@ -1105,6 +1159,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.exportlogs"),
|
object: i18n.t("reportcenter.labels.objects.exportlogs"),
|
||||||
field: i18n.t("exportlogs.fields.createdat"),
|
field: i18n.t("exportlogs.fields.createdat"),
|
||||||
},
|
},
|
||||||
|
group: "purchases",
|
||||||
},
|
},
|
||||||
export_payments: {
|
export_payments: {
|
||||||
title: i18n.t("reportcenter.templates.export_payments"),
|
title: i18n.t("reportcenter.templates.export_payments"),
|
||||||
@@ -1117,6 +1172,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.exportlogs"),
|
object: i18n.t("reportcenter.labels.objects.exportlogs"),
|
||||||
field: i18n.t("exportlogs.fields.createdat"),
|
field: i18n.t("exportlogs.fields.createdat"),
|
||||||
},
|
},
|
||||||
|
group: "customers",
|
||||||
},
|
},
|
||||||
export_receivables: {
|
export_receivables: {
|
||||||
title: i18n.t("reportcenter.templates.export_receivables"),
|
title: i18n.t("reportcenter.templates.export_receivables"),
|
||||||
@@ -1129,6 +1185,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.exportlogs"),
|
object: i18n.t("reportcenter.labels.objects.exportlogs"),
|
||||||
field: i18n.t("exportlogs.fields.createdat"),
|
field: i18n.t("exportlogs.fields.createdat"),
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
parts_backorder: {
|
parts_backorder: {
|
||||||
title: i18n.t("reportcenter.templates.parts_backorder"),
|
title: i18n.t("reportcenter.templates.parts_backorder"),
|
||||||
@@ -1141,6 +1198,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.actual_in"),
|
field: i18n.t("jobs.fields.actual_in"),
|
||||||
},
|
},
|
||||||
|
group: "purchases",
|
||||||
},
|
},
|
||||||
thank_you_date: {
|
thank_you_date: {
|
||||||
title: i18n.t("reportcenter.templates.thank_you_date"),
|
title: i18n.t("reportcenter.templates.thank_you_date"),
|
||||||
@@ -1153,6 +1211,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "customers",
|
||||||
},
|
},
|
||||||
unclaimed_hrs: {
|
unclaimed_hrs: {
|
||||||
title: i18n.t("reportcenter.templates.unclaimed_hrs"),
|
title: i18n.t("reportcenter.templates.unclaimed_hrs"),
|
||||||
@@ -1165,6 +1224,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
work_in_progress_labour: {
|
work_in_progress_labour: {
|
||||||
title: i18n.t("reportcenter.templates.work_in_progress_labour"),
|
title: i18n.t("reportcenter.templates.work_in_progress_labour"),
|
||||||
@@ -1177,6 +1237,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
work_in_progress_payables: {
|
work_in_progress_payables: {
|
||||||
title: i18n.t("reportcenter.templates.work_in_progress_payables"),
|
title: i18n.t("reportcenter.templates.work_in_progress_payables"),
|
||||||
@@ -1189,6 +1250,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_open"),
|
field: i18n.t("jobs.fields.date_open"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
lag_time: {
|
lag_time: {
|
||||||
title: i18n.t("reportcenter.templates.lag_time"),
|
title: i18n.t("reportcenter.templates.lag_time"),
|
||||||
@@ -1201,6 +1263,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.date_invoiced"),
|
field: i18n.t("jobs.fields.date_invoiced"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
parts_not_recieved: {
|
parts_not_recieved: {
|
||||||
title: i18n.t("reportcenter.templates.parts_not_recieved"),
|
title: i18n.t("reportcenter.templates.parts_not_recieved"),
|
||||||
@@ -1213,6 +1276,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.parts_orders"),
|
object: i18n.t("reportcenter.labels.objects.parts_orders"),
|
||||||
field: i18n.t("parts_orders.fields.order_date"),
|
field: i18n.t("parts_orders.fields.order_date"),
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
scoreboard_detail: {
|
scoreboard_detail: {
|
||||||
title: i18n.t("reportcenter.templates.scoreboard_detail"),
|
title: i18n.t("reportcenter.templates.scoreboard_detail"),
|
||||||
@@ -1225,6 +1289,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.scoreboard"),
|
object: i18n.t("reportcenter.labels.objects.scoreboard"),
|
||||||
field: i18n.t("scoreboard.fields.date"),
|
field: i18n.t("scoreboard.fields.date"),
|
||||||
},
|
},
|
||||||
|
group: "payroll",
|
||||||
},
|
},
|
||||||
scoreboard_summary: {
|
scoreboard_summary: {
|
||||||
title: i18n.t("reportcenter.templates.scoreboard_summary"),
|
title: i18n.t("reportcenter.templates.scoreboard_summary"),
|
||||||
@@ -1237,6 +1302,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.scoreboard"),
|
object: i18n.t("reportcenter.labels.objects.scoreboard"),
|
||||||
field: i18n.t("scoreboard.fields.date"),
|
field: i18n.t("scoreboard.fields.date"),
|
||||||
},
|
},
|
||||||
|
group: "payroll",
|
||||||
},
|
},
|
||||||
anticipated_revenue: {
|
anticipated_revenue: {
|
||||||
title: i18n.t("reportcenter.templates.anticipated_revenue"),
|
title: i18n.t("reportcenter.templates.anticipated_revenue"),
|
||||||
@@ -1249,6 +1315,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.jobs"),
|
object: i18n.t("reportcenter.labels.objects.jobs"),
|
||||||
field: i18n.t("jobs.fields.scheduled_completion"), // Also date invoice.
|
field: i18n.t("jobs.fields.scheduled_completion"), // Also date invoice.
|
||||||
},
|
},
|
||||||
|
group: "sales",
|
||||||
},
|
},
|
||||||
csi: {
|
csi: {
|
||||||
title: i18n.t("reportcenter.templates.csi"),
|
title: i18n.t("reportcenter.templates.csi"),
|
||||||
@@ -1261,6 +1328,7 @@ export const TemplateList = (type, context) => {
|
|||||||
object: i18n.t("reportcenter.labels.objects.csi"),
|
object: i18n.t("reportcenter.labels.objects.csi"),
|
||||||
field: i18n.t("csi.fields.created_at"), // Also date invoice.
|
field: i18n.t("csi.fields.created_at"), // Also date invoice.
|
||||||
},
|
},
|
||||||
|
group: "jobs",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
: {}),
|
: {}),
|
||||||
|
|||||||
Reference in New Issue
Block a user