Merged in feature/IO-2604-vendor-tagging (pull request #2428)
IO-2604 Add vendor tags to search select & vendor edit screen. Approved-by: Dave Richer
This commit is contained in:
@@ -65429,6 +65429,27 @@
|
||||
</translation>
|
||||
</translations>
|
||||
</concept_node>
|
||||
<concept_node>
|
||||
<name>tags</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>taxid</name>
|
||||
<definition_loaded>false</definition_loaded>
|
||||
|
||||
@@ -52,6 +52,7 @@ const VendorSearchSelect = ({ value, onChange, options, onSelect, disabled, pref
|
||||
>
|
||||
{label}
|
||||
</div>
|
||||
|
||||
{discount && discount !== 0 ? <Tag color="green">{`${discount * 100}%`}</Tag> : null}
|
||||
</div>
|
||||
);
|
||||
@@ -116,6 +117,11 @@ const VendorSearchSelect = ({ value, onChange, options, onSelect, disabled, pref
|
||||
{o.name}
|
||||
</div>
|
||||
<Space style={{ marginLeft: "1rem" }}>
|
||||
{o.tags?.map((tag, idx) => (
|
||||
<Tag key={idx} style={{ marginLeft: "0.5rem" }}>
|
||||
{tag}
|
||||
</Tag>
|
||||
))}
|
||||
{o.phone && showPhone && <PhoneNumberFormatter>{o.phone}</PhoneNumberFormatter>}
|
||||
{o.discount && o.discount !== 0 ? <Tag color="green">{`${o.discount * 100}%`}</Tag> : null}
|
||||
</Space>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { DeleteFilled } from "@ant-design/icons";
|
||||
import { useApolloClient } from "@apollo/client";
|
||||
import { useSplitTreatments } from "@splitsoftware/splitio-react";
|
||||
import { Button, Divider, Form, Input, InputNumber, Space, Switch } from "antd";
|
||||
import { Button, Divider, Form, Input, InputNumber, Select, Space, Switch } from "antd";
|
||||
import { PageHeader } from "@ant-design/pro-layout";
|
||||
import React from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
@@ -179,6 +179,18 @@ export function VendorsFormComponent({
|
||||
}
|
||||
</LayoutFormRow>
|
||||
|
||||
<Form.Item
|
||||
name="tags"
|
||||
label={t("vendor.fields.tags")}
|
||||
rules={[
|
||||
{
|
||||
//message: t("general.validation.required"),
|
||||
type: "array"
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Select mode="tags" />
|
||||
</Form.Item>
|
||||
{DmsAp.treatment === "on" && (
|
||||
<Form.Item label={t("vendors.fields.dmsid")} name="dmsid">
|
||||
<Input />
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { SyncOutlined } from "@ant-design/icons";
|
||||
import { Button, Card, Input, Space, Table } from "antd";
|
||||
import { Button, Card, Input, Space, Table, Tag } from "antd";
|
||||
import queryString from "query-string";
|
||||
import React, { useState } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
@@ -38,6 +38,18 @@ export default function VendorsListComponent({ handleNewVendor, loading, handleO
|
||||
title: t("vendors.fields.city"),
|
||||
dataIndex: "city",
|
||||
key: "city"
|
||||
},
|
||||
{
|
||||
title: t("vendors.fields.tags"),
|
||||
dataIndex: "tags",
|
||||
key: "tags",
|
||||
render: (text, record) => (
|
||||
<Space>
|
||||
{record?.tags?.map((tag, idx) => (
|
||||
<Tag key={idx}>{tag}</Tag>
|
||||
))}
|
||||
</Space>
|
||||
)
|
||||
}
|
||||
];
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@ export const QUERY_VENDOR_BY_ID = gql`
|
||||
active
|
||||
phone
|
||||
dmsid
|
||||
tags
|
||||
}
|
||||
}
|
||||
`;
|
||||
@@ -54,6 +55,7 @@ export const QUERY_ALL_VENDORS = gql`
|
||||
city
|
||||
phone
|
||||
active
|
||||
tags
|
||||
}
|
||||
}
|
||||
`;
|
||||
@@ -89,6 +91,7 @@ export const QUERY_ALL_VENDORS_FOR_ORDER = gql`
|
||||
email
|
||||
active
|
||||
phone
|
||||
tags
|
||||
}
|
||||
jobs(where: { id: { _eq: $jobId } }) {
|
||||
v_make_desc
|
||||
@@ -105,6 +108,7 @@ export const SEARCH_VENDOR_AUTOCOMPLETE = gql`
|
||||
cost_center
|
||||
active
|
||||
favorite
|
||||
tags
|
||||
}
|
||||
}
|
||||
`;
|
||||
@@ -124,6 +128,7 @@ export const SEARCH_VENDOR_AUTOCOMPLETE_WITH_ADDR = gql`
|
||||
email
|
||||
state
|
||||
active
|
||||
tags
|
||||
}
|
||||
}
|
||||
`;
|
||||
|
||||
@@ -3890,6 +3890,7 @@
|
||||
"state": "Provincia del estado",
|
||||
"street1": "calle",
|
||||
"street2": "Dirección 2",
|
||||
"tags": "",
|
||||
"taxid": "Identificación del impuesto",
|
||||
"terms": "Términos de pago",
|
||||
"zip": "código postal"
|
||||
|
||||
@@ -3890,6 +3890,7 @@
|
||||
"state": "Etat / Province",
|
||||
"street1": "rue",
|
||||
"street2": "Adresse 2 ",
|
||||
"tags": "",
|
||||
"taxid": "Identifiant de taxe",
|
||||
"terms": "Modalités de paiement",
|
||||
"zip": "Zip / code postal"
|
||||
|
||||
@@ -302,7 +302,6 @@ export const fetchFilterData = async ({ name }) => {
|
||||
const jsReportFilters = await cleanAxios.get(`${server}/odata/assets?$filter=name eq '${name}.filters'`, {
|
||||
headers: { Authorization: jsrAuth }
|
||||
});
|
||||
console.log("🚀 ~ fetchFilterData ~ jsReportFilters:", jsReportFilters);
|
||||
|
||||
let parsedFilterData;
|
||||
let useShopSpecificTemplate = false;
|
||||
|
||||
@@ -7123,6 +7123,7 @@
|
||||
- state
|
||||
- street1
|
||||
- street2
|
||||
- tags
|
||||
- updated_at
|
||||
- zip
|
||||
select_permissions:
|
||||
@@ -7146,6 +7147,7 @@
|
||||
- state
|
||||
- street1
|
||||
- street2
|
||||
- tags
|
||||
- updated_at
|
||||
- zip
|
||||
filter:
|
||||
@@ -7179,6 +7181,7 @@
|
||||
- state
|
||||
- street1
|
||||
- street2
|
||||
- tags
|
||||
- updated_at
|
||||
- zip
|
||||
filter:
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
-- Could not auto-generate a down migration.
|
||||
-- Please write an appropriate down migration for the SQL below:
|
||||
-- alter table "public"."vendors" add column "tags" jsonb
|
||||
-- not null default jsonb_build_array();
|
||||
@@ -0,0 +1,2 @@
|
||||
alter table "public"."vendors" add column "tags" jsonb
|
||||
not null default jsonb_build_array();
|
||||
Reference in New Issue
Block a user