refactor/qrcode #7

Merged
behnam merged 2 commits from refactor/qrcode into develop 2023-05-29 15:06:08 +00:00
27 changed files with 27 additions and 12 deletions
Showing only changes of commit c8cc39d72f - Show all commits

View File

@ -1,7 +1,10 @@
import StateManagementService from '~/driven/boundaries/state-management';
import StorageService from '~/driven/boundaries/storage-boundary';
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 { staticMessages } from '../constants/staticMessages';
import { errorHandlingStateTypes, UIErrorHandling } from './protocols/globalHelpersProtocols';
import { IUserContext } from './contexts/userContext';
@ -48,3 +51,13 @@ export const navigateToAuth = (userCtx: IUserContext, navigate: NavigateFunction
setUser(null);
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 */
import React, { useState } from 'react';
import { QrPlace } from '~/business-logic/core/places/common/entity/placeEntity';
import Modal from '~/driven/utils/components/modal/Modal';
import { icons } from '~/driven/utils/constants/assertUrls';
import { QRCodeCanvas } from 'qrcode.react';
import { staticMessages } from '~/driven/utils/constants/staticMessages';
import { ITableRowInfra } from '../../../infra/protocols';
interface IRowItemProp {
@ -14,13 +14,15 @@ interface IRowItemProp {
rowData: ITableRowInfra['rowData'];
}
function QrCodeReader(props: { QrCodeData: QrPlace; rowData: ITableRowInfra['rowData'] }) {
const { QrCodeData, rowData } = props;
const placeType = rowData.rowItemsTitle[1];
const placeTitle = rowData.rowItemsTitle[0];
const isOneTime = !QrCodeData.oneTime ? staticMessages.global.multipleTimes : staticMessages.global.oneTime;
const returnQrCodeIdMessage = (dep: { QrCodeData: QrPlace }) => {
const { QrCodeData } = dep;
const message = `${placeType} ${placeTitle} ${staticMessages.global.and} ${staticMessages.global.canUseFor} ${isOneTime}`;
return QrCodeData.id;
};
function QrCodeReader(props: { QrCodeData: QrPlace; rowData: ITableRowInfra['rowData'] }) {
const { QrCodeData } = props;
const message = returnQrCodeIdMessage({ QrCodeData });
return <QRCodeCanvas id='qrCode' value={message} size={150} bgColor='#fff' level='H' />;
}

View File

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

View File

@ -1,7 +1,7 @@
import React from 'react';
import PageTitle from '~/driven/utils/components/page-title/pageTitle';
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() {
return (

View File

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