Skip to content

Commit de5e258

Browse files
authored
Merge pull request #15 from fabmob/1.21.0
Programme Mon Compte Mobilité - Version 1.21.0
2 parents c66fd68 + 6972868 commit de5e258

File tree

434 files changed

+27843
-16644
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

434 files changed

+27843
-16644
lines changed
2.38 MB
Loading

administration/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "administration",
3-
"version": "1.16.0",
3+
"version": "1.21.0",
44
"author": "Mon Compte Mobilité",
55
"private": true,
66
"dependencies": {

administration/src/App.tsx

Lines changed: 30 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,32 @@
11
/* eslint-disable */
2-
import { Admin, Resource, resolveBrowserLocale } from 'react-admin';
2+
import {
3+
Admin,
4+
Resource,
5+
resolveBrowserLocale
6+
} from 'react-admin';
37
import polyglotI18nProvider from 'ra-i18n-polyglot';
48
import frenchMessages from 'ra-language-french';
59
import { QueryClient, QueryClientProvider } from 'react-query';
10+
import {
11+
Person,
12+
PeopleTwoTone,
13+
BusinessCenter,
14+
NoteOutlined,
15+
Map,
16+
} from '@material-ui/icons';
617

718
import dataProvider from './api/provider/dataProvider';
819
import AuthProvider from './modules/Auth/authProvider';
920
import { KeycloakProviderInit } from './components/Keycloak/KeycloakProviderInit';
1021
import LogoutButton from './components/LoginForm/LogoutButton';
1122
import Dashboard from './components/Dashboard/Dashboard';
1223
import AccessRole from './components/Access/AccessRole';
13-
import EntrepriseForm from './components/Entreprises';
14-
import CollectiviteForm from './components/Collectivites/CollectiviteForm';
15-
import CollectiviteList from './components/Collectivites/CollectiviteList';
16-
import CommunateForm from './components/Communautes';
1724
import Aide from './components/Aide';
1825
import UtilisateurForm from './components/utilisateurs';
1926
import customTheme from './components/customTheme/customTheme';
2027
import TerritoryForm from './components/Territories';
28+
import FunderForm from './components/Funders';
29+
import CommunityForm from './components/Communities';
2130

2231
const queryClient = new QueryClient();
2332

@@ -44,31 +53,34 @@ function App(): JSX.Element {
4453
theme={customTheme}
4554
>
4655
<Resource
47-
name="collectivites"
48-
options={{ label: 'Collectivités' }}
49-
list={CollectiviteList}
50-
create={CollectiviteForm}
56+
name="territoires"
57+
options={{ label: 'Territoires' }}
58+
icon={Map}
59+
{...TerritoryForm}
5160
/>
5261
<Resource
53-
name="entreprises"
54-
options={{ label: 'Entreprises' }}
55-
{...EntrepriseForm}
62+
name="financeurs"
63+
options={{ label: 'Financeurs' }}
64+
icon={BusinessCenter}
65+
{...FunderForm}
5666
/>
57-
<Resource name="aides" options={{ label: 'Aides' }} {...Aide} />
5867
<Resource
5968
name="communautes"
6069
options={{ label: 'Communautés' }}
61-
{...CommunateForm}
70+
icon={PeopleTwoTone}
71+
{...CommunityForm}
6272
/>
6373
<Resource
6474
name="utilisateurs"
65-
options={{ label: 'Utilisateurs financeur' }}
75+
options={{ label: 'Utilisateurs financeurs' }}
76+
icon={Person}
6677
{...UtilisateurForm}
6778
/>
6879
<Resource
69-
name="territoires"
70-
options={{ label: 'Territoires' }}
71-
{...TerritoryForm}
80+
name="aides"
81+
options={{ label: 'Aides' }}
82+
icon={NoteOutlined}
83+
{...Aide}
7284
/>
7385
</Admin>
7486
</AccessRole>

administration/src/api/clients.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import axios from 'axios';
2+
import { URL_API } from '../utils/constant';
3+
import { getAuthHeader } from '../utils/httpHeaders';
4+
5+
export const getClients = async (): Promise<{
6+
clientId: string;
7+
id: string;
8+
}> => {
9+
const { data } = await axios.get(`${await URL_API()}/clients`, {
10+
headers: getAuthHeader(),
11+
});
12+
return data;
13+
};
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import axios from 'axios';
2+
import { URL_API } from '../utils/constant';
3+
import { getAuthHeader } from '../utils/httpHeaders';
4+
5+
export const getFunderCommunityList = async (
6+
funderId: string
7+
): Promise<{ id: string; name: string; funderId: string }[]> => {
8+
const { data } = await axios.get(
9+
`${await URL_API()}/funders/${funderId}/communities`,
10+
{
11+
headers: getAuthHeader(),
12+
}
13+
);
14+
return data;
15+
};

administration/src/api/funders.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import axios from 'axios';
2+
import { IFunders, URL_API } from '../utils/constant';
3+
import { getAuthHeader } from '../utils/httpHeaders';
4+
5+
export const getFunders = async (): Promise<IFunders[]> => {
6+
const filter = { order: 'name ASC' };
7+
return (
8+
await axios.get(
9+
`${await URL_API()}/funders?filter=${JSON.stringify(filter)}`,
10+
{
11+
headers: getAuthHeader(),
12+
}
13+
)
14+
).data;
15+
};

administration/src/api/provider/dataProvider.ts

Lines changed: 66 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,14 @@ export default async (type: string, resource: string, params: any) => {
1616
const data = await URL_API();
1717
const dataProvider = lb4Provider(data, getAuthHeader);
1818
const url: string = resourceConverter(type, resource);
19-
return dataProvider(type, url, params);
19+
const convertedParams: any = paramConverter(type, params, resource);
20+
return dataProvider(type, url, convertedParams);
2021
};
2122

2223
const resourceConverter = (type: string, resource: string): string => {
2324
switch (resource) {
24-
case 'collectivites':
25-
return 'collectivities';
26-
case 'entreprises':
27-
return 'enterprises';
25+
case 'financeurs':
26+
return 'funders';
2827
case 'aides':
2928
return 'incentives';
3029
case 'communautes':
@@ -40,3 +39,65 @@ const resourceConverter = (type: string, resource: string): string => {
4039
return resource;
4140
}
4241
};
42+
43+
const paramConverter = (type: string, params: any, resource: string): any => {
44+
45+
switch (type) {
46+
case 'GET_MANY':
47+
const flattenArray = [].concat(...params.ids);
48+
return { ids: Array.from(new Set(flattenArray)) };
49+
case 'GET_LIST':
50+
if (
51+
resource === 'territoires' &&
52+
params?.filter?.name &&
53+
!params.filter.name.like
54+
) {
55+
return {
56+
...params,
57+
filter: {
58+
name: { like: params.filter.name, options: 'i' },
59+
},
60+
};
61+
}
62+
if (
63+
resource === 'aides' &&
64+
params?.filter?.title &&
65+
!params.filter?.title.like
66+
) {
67+
return {
68+
...params,
69+
filter: {
70+
title: { like: params.filter.title, options: 'i' },
71+
},
72+
};
73+
}
74+
if (
75+
resource === 'financeurs' &&
76+
params?.filter?.name &&
77+
!params.filter?.name.like
78+
) {
79+
return {
80+
...params,
81+
filter: {
82+
name: { like: params.filter.name, options: 'i' },
83+
},
84+
};
85+
}
86+
if (
87+
resource === 'utilisateurs' &&
88+
params?.filter?.lastName &&
89+
!params.filter?.lastName.like
90+
) {
91+
return {
92+
...params,
93+
filter: {
94+
lastName: { like: params.filter.lastName, options: 'i' },
95+
},
96+
};
97+
}
98+
99+
return params;
100+
default:
101+
return params;
102+
}
103+
};

administration/src/api/territories.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
import axios from 'axios';
22
import { URL_API } from '../utils/constant';
33
import { getAuthHeader } from '../utils/httpHeaders';
4+
import { Territory } from '../utils/helpers';
45

5-
export const getTerritories = async (): Promise<{
6-
name: string;
7-
id: string;
8-
}> => {
6+
export const getTerritories = async (): Promise<Territory[]> => {
97
const { data } = await axios.get(`${await URL_API()}/territories`, {
108
headers: getAuthHeader(),
119
});

administration/src/components/Aide/AideCreate.tsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,14 @@ const AideCreate: FC<CreateProps> = (props) => {
4141
};
4242

4343
const transform = (data): Record => {
44+
delete data.emailDomainNames;
45+
delete data.hasManualAffiliation;
46+
4447
if (data.eligibilityChecks && data.eligibilityChecks.length > 0) {
4548
return getFormData(data);
4649
}
47-
48-
if (data.specificFields && !data.specificFields.length ) {
49-
delete data.specificFields
50+
if (data.specificFields && !data.specificFields.length) {
51+
delete data.specificFields;
5052
}
5153

5254
return { ...data };

0 commit comments

Comments
 (0)