Merge pull request 'refactor/qrcode' (#7) from refactor/qrcode into develop

Reviewed-on: http://10.244.188.80:30210/behnam/diapal-panel/pulls/7
This commit is contained in:
behnam 2023-05-29 15:06:07 +00:00
commit b25c3f2064
27 changed files with 25 additions and 12 deletions

View File

@ -1,7 +1,10 @@
import StateManagementService from '~/driven/boundaries/state-management'; import StateManagementService from '~/driven/boundaries/state-management';
import StorageService from '~/driven/boundaries/storage-boundary'; import StorageService from '~/driven/boundaries/storage-boundary';
import { NavigateFunction } from 'react-router-dom'; import { NavigateFunction } from 'react-router-dom';
import { QrPlace } from '~/business-logic/core/places/common/entity/placeEntity';
import { ITableRowInfra } from '~/driving/application/core/common/table-row/infra/protocols';
import { appConfig, routes } from '../configs/appConfig'; import { appConfig, routes } from '../configs/appConfig';
import { staticMessages } from '../constants/staticMessages';
import { errorHandlingStateTypes, UIErrorHandling } from './protocols/globalHelpersProtocols'; import { errorHandlingStateTypes, UIErrorHandling } from './protocols/globalHelpersProtocols';
import { IUserContext } from './contexts/userContext'; import { IUserContext } from './contexts/userContext';
@ -48,3 +51,13 @@ export const navigateToAuth = (userCtx: IUserContext, navigate: NavigateFunction
setUser(null); setUser(null);
navigate(routes.authentication); navigate(routes.authentication);
}; };
export const returnPlacesDetailsMessage = (dep: { QrCodeData: QrPlace; rowData: ITableRowInfra['rowData'] }) => {
const { QrCodeData, rowData } = dep;
const placeType = rowData.rowItemsTitle[1];
const placeTitle = rowData.rowItemsTitle[0];
const isOneTime = !QrCodeData.oneTime ? staticMessages.global.multipleTimes : staticMessages.global.oneTime;
const message = `${placeType} ${placeTitle} ${staticMessages.global.and} ${staticMessages.global.canUseFor} ${isOneTime}`;
return message;
};

View File

@ -1,10 +1,10 @@
/* eslint-disable react/no-unused-prop-types */
/* eslint-disable import/no-extraneous-dependencies */ /* eslint-disable import/no-extraneous-dependencies */
import React, { useState } from 'react'; import React, { useState } from 'react';
import { QrPlace } from '~/business-logic/core/places/common/entity/placeEntity'; import { QrPlace } from '~/business-logic/core/places/common/entity/placeEntity';
import Modal from '~/driven/utils/components/modal/Modal'; import Modal from '~/driven/utils/components/modal/Modal';
import { icons } from '~/driven/utils/constants/assertUrls'; import { icons } from '~/driven/utils/constants/assertUrls';
import { QRCodeCanvas } from 'qrcode.react'; import { QRCodeCanvas } from 'qrcode.react';
import { staticMessages } from '~/driven/utils/constants/staticMessages';
import { ITableRowInfra } from '../../../infra/protocols'; import { ITableRowInfra } from '../../../infra/protocols';
interface IRowItemProp { interface IRowItemProp {
@ -14,13 +14,13 @@ interface IRowItemProp {
rowData: ITableRowInfra['rowData']; rowData: ITableRowInfra['rowData'];
} }
function QrCodeReader(props: { QrCodeData: QrPlace; rowData: ITableRowInfra['rowData'] }) { const returnQrCodeIdMessage = (dep: { QrCodeData: QrPlace }) => {
const { QrCodeData, rowData } = props; const { QrCodeData } = dep;
const placeType = rowData.rowItemsTitle[1];
const placeTitle = rowData.rowItemsTitle[0];
const isOneTime = !QrCodeData.oneTime ? staticMessages.global.multipleTimes : staticMessages.global.oneTime;
const message = `${placeType} ${placeTitle} ${staticMessages.global.and} ${staticMessages.global.canUseFor} ${isOneTime}`; return QrCodeData.id;
};
function QrCodeReader(props: { QrCodeData: QrPlace; rowData: ITableRowInfra['rowData'] }) {
const message = returnQrCodeIdMessage(props);
return <QRCodeCanvas id='qrCode' value={message} size={150} bgColor='#fff' level='H' />; return <QRCodeCanvas id='qrCode' value={message} size={150} bgColor='#fff' level='H' />;
} }

View File

@ -1,7 +1,7 @@
import React, { useMemo } from 'react'; import React, { useMemo } from 'react';
import { staticMessages } from '~/driven/utils/constants/staticMessages'; import { staticMessages } from '~/driven/utils/constants/staticMessages';
import Loading from '~/driven/utils/components/loading/Loading'; import Loading from '~/driven/utils/components/loading/Loading';
import TableRow from '../../common/table-row'; import TableRow from '../../../common/table-row';
import { IPlacesListProps } from './protocols'; import { IPlacesListProps } from './protocols';
export default function PlacesListView(props: IPlacesListProps) { export default function PlacesListView(props: IPlacesListProps) {

View File

@ -3,7 +3,7 @@ import React, { useMemo } from 'react';
import { staticMessages } from '~/driven/utils/constants/staticMessages'; import { staticMessages } from '~/driven/utils/constants/staticMessages';
import Users from '~/business-logic/core/users/common/entity/entity'; import Users from '~/business-logic/core/users/common/entity/entity';
import Loading from '~/driven/utils/components/loading/Loading'; import Loading from '~/driven/utils/components/loading/Loading';
import TableRow from '../../common/table-row'; import TableRow from '../../../common/table-row';
import { IUserListProps } from './protocols'; import { IUserListProps } from './protocols';
export default function UsersListView(props: IUserListProps) { export default function UsersListView(props: IUserListProps) {

View File

@ -1,7 +1,7 @@
import React from 'react'; import React from 'react';
import PageTitle from '~/driven/utils/components/page-title/pageTitle'; import PageTitle from '~/driven/utils/components/page-title/pageTitle';
import { staticMessages } from '~/driven/utils/constants/staticMessages'; import { staticMessages } from '~/driven/utils/constants/staticMessages';
import CreateUser from '~/driving/application/core/create-user'; import CreateUser from '~/driving/application/core/users/create-user';
export default function CreateUserPage() { export default function CreateUserPage() {
return ( return (

View File

@ -8,8 +8,8 @@ import PageTitle from '~/driven/utils/components/page-title/pageTitle';
import { apiUrls } from '~/driven/utils/configs/appConfig'; import { apiUrls } from '~/driven/utils/configs/appConfig';
import { staticMessages } from '~/driven/utils/constants/staticMessages'; import { staticMessages } from '~/driven/utils/constants/staticMessages';
import useGetNavigatorAndTokenUpdater from '~/driven/utils/helpers/hooks/getNavigatorAndAccessTokenUpdator'; import useGetNavigatorAndTokenUpdater from '~/driven/utils/helpers/hooks/getNavigatorAndAccessTokenUpdator';
import PlacesList from '~/driving/application/core/places-list'; import PlacesList from '~/driving/application/core/places/places-list';
import UsersList from '~/driving/application/core/users-list'; import UsersList from '~/driving/application/core/users/users-list';
export default function index() { export default function index() {
const [selectedUserRowId, setSelectedUserRowId] = useState<string>(''); const [selectedUserRowId, setSelectedUserRowId] = useState<string>('');