Merged PR 341: 画面実装(ルーティングルール一覧画面)
## 概要 [Task2410: 画面実装(ルーティングルール一覧画面)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2410) - ワークフロー画面と遷移先のタイピストグループ設定画面を実装しました。 - ワークフロー画面はタブ制御とリンク以外は仮です。 - 管理者ユーザーでログインした時だけタブが見えるようにしています。 - タイピストグループ設定画面は空の仮画面です。 - 画面コンポーネントをルーティングしました。 - /workflow - /workflow/typist-group ## レビューポイント - タブ制御は適切か - URL設計は適切か ## UIの変更 - [Task2410](https://ndstokyo.sharepoint.com/:f:/r/sites/Piranha/Shared%20Documents/General/OMDS/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88/Task2410?csf=1&web=1&e=10GUjM) ## 動作確認状況 - ローカルで確認
This commit is contained in:
parent
422622c9ef
commit
c85ecbfc90
@ -16,6 +16,8 @@ import UserListPage from "pages/UserListPage";
|
||||
import LicensePage from "pages/LicensePage";
|
||||
import DictationPage from "pages/DictationPage";
|
||||
import PartnerPage from "pages/PartnerPage";
|
||||
import WorkflowPage from "pages/WorkflowPage";
|
||||
import TypistGroupSettingPage from "pages/TypistGroupSettingPage";
|
||||
|
||||
const AppRouter: React.FC = () => (
|
||||
<Routes>
|
||||
@ -58,7 +60,11 @@ const AppRouter: React.FC = () => (
|
||||
/>
|
||||
<Route
|
||||
path="/workflow"
|
||||
element={<RouteAuthGuard component={<SamplePage />} />}
|
||||
element={<RouteAuthGuard component={<WorkflowPage />} />}
|
||||
/>
|
||||
<Route
|
||||
path="/workflow/typist-group"
|
||||
element={<RouteAuthGuard component={<TypistGroupSettingPage />} />}
|
||||
/>
|
||||
<Route
|
||||
path="/partners"
|
||||
|
||||
@ -26,6 +26,7 @@ export const HEADER_NAME = "ODMS Cloud";
|
||||
export const ADMIN_ONLY_TABS = [
|
||||
HEADER_MENUS_LICENSE,
|
||||
HEADER_MENUS_USER,
|
||||
HEADER_MENUS_WORKFLOW,
|
||||
HEADER_MENUS_PARTNER,
|
||||
];
|
||||
|
||||
|
||||
18
dictation_client/src/pages/TypistGroupSettingPage/index.tsx
Normal file
18
dictation_client/src/pages/TypistGroupSettingPage/index.tsx
Normal file
@ -0,0 +1,18 @@
|
||||
import React from "react";
|
||||
import Header from "components/header";
|
||||
import Footer from "components/footer";
|
||||
import styles from "styles/app.module.scss";
|
||||
import { UpdateTokenTimer } from "components/auth/updateTokenTimer";
|
||||
|
||||
const TypistGroupSettingPage: React.FC = (): JSX.Element => (
|
||||
<div className={styles.wrap}>
|
||||
<Header userName="XXXXXX" />
|
||||
<UpdateTokenTimer />
|
||||
<main className={styles.main}>
|
||||
<div className="">Transcriptionist Group Setting</div>
|
||||
</main>
|
||||
<Footer />
|
||||
</div>
|
||||
);
|
||||
|
||||
export default TypistGroupSettingPage;
|
||||
24
dictation_client/src/pages/WorkflowPage/index.tsx
Normal file
24
dictation_client/src/pages/WorkflowPage/index.tsx
Normal file
@ -0,0 +1,24 @@
|
||||
import React from "react";
|
||||
import Header from "components/header";
|
||||
import Footer from "components/footer";
|
||||
import styles from "styles/app.module.scss";
|
||||
import { UpdateTokenTimer } from "components/auth/updateTokenTimer";
|
||||
|
||||
const WorkflowPage: React.FC = (): JSX.Element => (
|
||||
<div className={styles.wrap}>
|
||||
<Header userName="XXXXXX" />
|
||||
<UpdateTokenTimer />
|
||||
<main className={styles.main}>
|
||||
<div className="">
|
||||
<span>
|
||||
<a style={{ margin: 20 }} href="/workflow/typist-group">
|
||||
Transcriptionist Group Setting
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
</main>
|
||||
<Footer />
|
||||
</div>
|
||||
);
|
||||
|
||||
export default WorkflowPage;
|
||||
@ -935,13 +935,75 @@ h3 + .brCrumb .tlIcon {
|
||||
.modal .formInput {
|
||||
padding: 0.5rem 0.8rem;
|
||||
}
|
||||
.modal .formInput[type="file"] {
|
||||
border: none;
|
||||
background: inherit;
|
||||
}
|
||||
.modal .formInput[type="file"].isHide {
|
||||
display: none;
|
||||
}
|
||||
.modal .form label {
|
||||
padding: 0.5rem 0 0.2rem;
|
||||
}
|
||||
.modal .form label.formFileButton {
|
||||
padding: 0.5rem 0.8rem;
|
||||
border: 1px #999999 solid;
|
||||
background: #ffffff;
|
||||
font-size: 16px;
|
||||
line-height: 1.4;
|
||||
letter-spacing: 0.01rem;
|
||||
font-weight: normal;
|
||||
cursor: pointer;
|
||||
border-radius: 0.3rem;
|
||||
position: relative;
|
||||
-moz-transition: all 0.3s ease-out;
|
||||
-ms-transition: all 0.3s ease-out;
|
||||
-webkit-transition: all 0.3s ease-out;
|
||||
transition: all 0.3s ease-out;
|
||||
}
|
||||
.modal .form label.formFileButton:hover {
|
||||
background: #f0f0f0;
|
||||
}
|
||||
.modal .formFileName {
|
||||
display: inline-block;
|
||||
width: 350px;
|
||||
padding: 0.6rem 0.8rem;
|
||||
border: 1px #e6e6e6 solid;
|
||||
background: #e6e6e6;
|
||||
box-sizing: border-box;
|
||||
font-size: 16px;
|
||||
line-height: 1.4;
|
||||
letter-spacing: 0;
|
||||
font-weight: normal;
|
||||
text-align: left;
|
||||
}
|
||||
.modal .form .icLoading {
|
||||
bottom: 1.5rem;
|
||||
left: calc(50% - 25px);
|
||||
}
|
||||
.modal .form .tableWrap {
|
||||
max-height: 60vh;
|
||||
overflow-y: scroll;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
.modal .form .table {
|
||||
width: 95%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.modal .form .table .tableHeader th {
|
||||
position: -webkit-sticky;
|
||||
position: sticky;
|
||||
top: 0;
|
||||
padding: 0.4rem 0.5rem;
|
||||
background: #282828;
|
||||
}
|
||||
.modal .form .table td {
|
||||
padding: 0.6rem 0.4rem;
|
||||
}
|
||||
.modal .form .table .formInput {
|
||||
width: inherit;
|
||||
padding: 0.2rem 0.5rem;
|
||||
}
|
||||
.modal .encryptionPass {
|
||||
display: none;
|
||||
}
|
||||
@ -2199,12 +2261,38 @@ tr.isSelected .menuInTable li a {
|
||||
.workflow .table.workflow td.txWsline {
|
||||
white-space: pre;
|
||||
}
|
||||
.workflow .table.group {
|
||||
.workflow .table.group,
|
||||
.workflow .table.template {
|
||||
width: 600px;
|
||||
}
|
||||
.workflow .table.group td:last-child {
|
||||
.workflow .table.group td:last-child,
|
||||
.workflow .table.template td:last-child {
|
||||
text-align: right;
|
||||
}
|
||||
.workflow .table.worktype {
|
||||
width: 1000px;
|
||||
}
|
||||
.workflow .table.worktype td:last-child {
|
||||
text-align: right;
|
||||
}
|
||||
.workflow .table .menuLink {
|
||||
min-width: 3rem;
|
||||
text-align: center;
|
||||
}
|
||||
.workflow .menuAction.worktype {
|
||||
width: 1000px;
|
||||
}
|
||||
.workflow .menuAction.worktype .selectMenu {
|
||||
padding-top: 0.5rem;
|
||||
float: right;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
.workflow .menuAction.worktype .formInput {
|
||||
width: inherit;
|
||||
margin-left: 0.5rem;
|
||||
padding: 0.2rem 0.8rem;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.formList dd.formChange {
|
||||
display: flex;
|
||||
|
||||
15
dictation_client/src/styles/app.module.scss.d.ts
vendored
15
dictation_client/src/styles/app.module.scss.d.ts
vendored
@ -60,6 +60,12 @@ declare const classNames: {
|
||||
readonly modalTitleIcon: "modalTitleIcon";
|
||||
readonly last: "last";
|
||||
readonly slideSet: "slideSet";
|
||||
readonly isHide: "isHide";
|
||||
readonly formFileButton: "formFileButton";
|
||||
readonly formFileName: "formFileName";
|
||||
readonly tableWrap: "tableWrap";
|
||||
readonly table: "table";
|
||||
readonly tableHeader: "tableHeader";
|
||||
readonly encryptionPass: "encryptionPass";
|
||||
readonly pageHeader: "pageHeader";
|
||||
readonly pageTitle: "pageTitle";
|
||||
@ -75,8 +81,6 @@ declare const classNames: {
|
||||
readonly snackbarMessage: "snackbarMessage";
|
||||
readonly snackbarIcon: "snackbarIcon";
|
||||
readonly snackbarIconClose: "snackbarIconClose";
|
||||
readonly table: "table";
|
||||
readonly tableHeader: "tableHeader";
|
||||
readonly hasSort: "hasSort";
|
||||
readonly isActiveAz: "isActiveAz";
|
||||
readonly isActiveZa: "isActiveZa";
|
||||
@ -100,8 +104,8 @@ declare const classNames: {
|
||||
readonly menuAction: "menuAction";
|
||||
readonly inTable: "inTable";
|
||||
readonly menuLink: "menuLink";
|
||||
readonly colorLink: "colorLink";
|
||||
readonly menuIcon: "menuIcon";
|
||||
readonly colorLink: "colorLink";
|
||||
readonly isDisable: "isDisable";
|
||||
readonly icCheckCircle: "icCheckCircle";
|
||||
readonly icInTable: "icInTable";
|
||||
@ -112,7 +116,6 @@ declare const classNames: {
|
||||
readonly displayOptions: "displayOptions";
|
||||
readonly tableFilter: "tableFilter";
|
||||
readonly tableFilter2: "tableFilter2";
|
||||
readonly tableWrap: "tableWrap";
|
||||
readonly txWsline: "txWsline";
|
||||
readonly hidePri: "hidePri";
|
||||
readonly opPri: "opPri";
|
||||
@ -178,6 +181,9 @@ declare const classNames: {
|
||||
readonly changeTitle: "changeTitle";
|
||||
readonly role4: "role4";
|
||||
readonly group: "group";
|
||||
readonly template: "template";
|
||||
readonly worktype: "worktype";
|
||||
readonly selectMenu: "selectMenu";
|
||||
readonly alignCenter: "alignCenter";
|
||||
readonly alignLeft: "alignLeft";
|
||||
readonly alignRight: "alignRight";
|
||||
@ -203,6 +209,5 @@ declare const classNames: {
|
||||
readonly txNormal: "txNormal";
|
||||
readonly txIcon: "txIcon";
|
||||
readonly txWswrap: "txWswrap";
|
||||
readonly widthMid: "widthMid";
|
||||
};
|
||||
export = classNames;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user