Compare commits
2 Commits
6896708fb6
...
a7425c8913
| Author | SHA1 | Date |
|---|---|---|
|
|
a7425c8913 | |
|
|
14c454d416 |
|
|
@ -6,7 +6,7 @@
|
||||||
# production
|
# production
|
||||||
/dist
|
/dist
|
||||||
/demo
|
/demo
|
||||||
|
/.trae/
|
||||||
npm-debug.log*
|
npm-debug.log*
|
||||||
yarn-debug.log*
|
yarn-debug.log*
|
||||||
yarn-error.log*
|
yarn-error.log*
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ module.exports = {
|
||||||
javaGitBranch: "<branch-name>",
|
javaGitBranch: "<branch-name>",
|
||||||
// 本地联调 safety-eval-service(context-path: /safety-eval,默认端口 8095)
|
// 本地联调 safety-eval-service(context-path: /safety-eval,默认端口 8095)
|
||||||
// 可通过环境变量覆盖: SAFETY_EVAL_API_HOST=http://192.168.x.x:8095
|
// 可通过环境变量覆盖: SAFETY_EVAL_API_HOST=http://192.168.x.x:8095
|
||||||
API_HOST: process.env.SAFETY_EVAL_API_HOST || "http://192.168.0.124:8095",
|
API_HOST: "http://192.168.0.124:8095",
|
||||||
},
|
},
|
||||||
production: {
|
production: {
|
||||||
// 应用后端分支名称,部署上线需要
|
// 应用后端分支名称,部署上线需要
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@
|
||||||
"@rc-component/motion": "^1.0.0",
|
"@rc-component/motion": "^1.0.0",
|
||||||
"@rc-component/util": "^1.11.1",
|
"@rc-component/util": "^1.11.1",
|
||||||
"ahooks": "^3.9.5",
|
"ahooks": "^3.9.5",
|
||||||
"antd": "^5.11.2",
|
"antd": "^5.29.2",
|
||||||
"dayjs": "^1.11.7",
|
"dayjs": "^1.11.7",
|
||||||
"lodash-es": "^4.17.21",
|
"lodash-es": "^4.17.21",
|
||||||
"qrcode.react": "^4.2.0",
|
"qrcode.react": "^4.2.0",
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ importers:
|
||||||
specifier: ^3.9.5
|
specifier: ^3.9.5
|
||||||
version: 3.9.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 3.9.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
antd:
|
antd:
|
||||||
specifier: ^5.11.2
|
specifier: ^5.29.2
|
||||||
version: 5.29.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 5.29.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
dayjs:
|
dayjs:
|
||||||
specifier: ^1.11.7
|
specifier: ^1.11.7
|
||||||
|
|
@ -1322,30 +1322,35 @@ packages:
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@napi-rs/canvas-linux-arm64-musl@0.1.100':
|
'@napi-rs/canvas-linux-arm64-musl@0.1.100':
|
||||||
resolution: {integrity: sha512-K3mDW66N+xT2/V439u1alFANiBUjdEx2gLiNYnCmUsva5jZMxWTjafBYwTzYK+EMFMHrUoabuU+T1BIP5CgbYQ==}
|
resolution: {integrity: sha512-K3mDW66N+xT2/V439u1alFANiBUjdEx2gLiNYnCmUsva5jZMxWTjafBYwTzYK+EMFMHrUoabuU+T1BIP5CgbYQ==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [musl]
|
||||||
|
|
||||||
'@napi-rs/canvas-linux-riscv64-gnu@0.1.100':
|
'@napi-rs/canvas-linux-riscv64-gnu@0.1.100':
|
||||||
resolution: {integrity: sha512-mooqUBTIsccZpnoQC4NgrC1v6C1vof39etLNMnBwCY+p0gajWJvAHLGQ6g/gGyS5YrpDW+GefSN4+Cvcr08UWw==}
|
resolution: {integrity: sha512-mooqUBTIsccZpnoQC4NgrC1v6C1vof39etLNMnBwCY+p0gajWJvAHLGQ6g/gGyS5YrpDW+GefSN4+Cvcr08UWw==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [riscv64]
|
cpu: [riscv64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@napi-rs/canvas-linux-x64-gnu@0.1.100':
|
'@napi-rs/canvas-linux-x64-gnu@0.1.100':
|
||||||
resolution: {integrity: sha512-1eCvkDCazm7FFhsT7DfGOdSaHgZVK3bt/dSBl5EWHOWmnz+I7j8tPseJqqD81NF+MH21jKUK4wQSDjN0mdhnTg==}
|
resolution: {integrity: sha512-1eCvkDCazm7FFhsT7DfGOdSaHgZVK3bt/dSBl5EWHOWmnz+I7j8tPseJqqD81NF+MH21jKUK4wQSDjN0mdhnTg==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@napi-rs/canvas-linux-x64-musl@0.1.100':
|
'@napi-rs/canvas-linux-x64-musl@0.1.100':
|
||||||
resolution: {integrity: sha512-20arT6lnI19S68qNlii73TSEDbECNgzMz2EpldC1V3mZFuRkeujXkcebRk0LRJe9SEUAooYiLokfMViY8IX7yA==}
|
resolution: {integrity: sha512-20arT6lnI19S68qNlii73TSEDbECNgzMz2EpldC1V3mZFuRkeujXkcebRk0LRJe9SEUAooYiLokfMViY8IX7yA==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [musl]
|
||||||
|
|
||||||
'@napi-rs/canvas-win32-arm64-msvc@0.1.100':
|
'@napi-rs/canvas-win32-arm64-msvc@0.1.100':
|
||||||
resolution: {integrity: sha512-DZFFT1wIAg37LJw37yhMRFfjATd3vTQzjZ1Yki8u2vhO6Hi5VE6BVaGQ1aaDu7xb4iMErz+9EOwjpS7xcxFeBw==}
|
resolution: {integrity: sha512-DZFFT1wIAg37LJw37yhMRFfjATd3vTQzjZ1Yki8u2vhO6Hi5VE6BVaGQ1aaDu7xb4iMErz+9EOwjpS7xcxFeBw==}
|
||||||
|
|
@ -1413,48 +1418,56 @@ packages:
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@oxfmt/binding-linux-arm64-musl@0.35.0':
|
'@oxfmt/binding-linux-arm64-musl@0.35.0':
|
||||||
resolution: {integrity: sha512-5Okqi+uhYFxwKz8hcnUftNNwdm8BCkf6GSCbcz9xJxYMm87k1E4p7PEmAAbhLTk7cjSdDre6TDL0pDzNX+Y22Q==}
|
resolution: {integrity: sha512-5Okqi+uhYFxwKz8hcnUftNNwdm8BCkf6GSCbcz9xJxYMm87k1E4p7PEmAAbhLTk7cjSdDre6TDL0pDzNX+Y22Q==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [musl]
|
||||||
|
|
||||||
'@oxfmt/binding-linux-ppc64-gnu@0.35.0':
|
'@oxfmt/binding-linux-ppc64-gnu@0.35.0':
|
||||||
resolution: {integrity: sha512-9k66pbZQXM/lBJWys3Xbc5yhl4JexyfqkEf/tvtq8976VIJnLAAL3M127xHA3ifYSqxdVHfVGTg84eiBHCGcNw==}
|
resolution: {integrity: sha512-9k66pbZQXM/lBJWys3Xbc5yhl4JexyfqkEf/tvtq8976VIJnLAAL3M127xHA3ifYSqxdVHfVGTg84eiBHCGcNw==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [ppc64]
|
cpu: [ppc64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@oxfmt/binding-linux-riscv64-gnu@0.35.0':
|
'@oxfmt/binding-linux-riscv64-gnu@0.35.0':
|
||||||
resolution: {integrity: sha512-aUcY9ofKPtjO52idT6t0SAQvEF6ctjzUQa1lLp7GDsRpSBvuTrBQGeq0rYKz3gN8dMIQ7mtMdGD9tT4LhR8jAQ==}
|
resolution: {integrity: sha512-aUcY9ofKPtjO52idT6t0SAQvEF6ctjzUQa1lLp7GDsRpSBvuTrBQGeq0rYKz3gN8dMIQ7mtMdGD9tT4LhR8jAQ==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [riscv64]
|
cpu: [riscv64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@oxfmt/binding-linux-riscv64-musl@0.35.0':
|
'@oxfmt/binding-linux-riscv64-musl@0.35.0':
|
||||||
resolution: {integrity: sha512-C6yhY5Hvc2sGM+mCPek9ZLe5xRUOC/BvhAt2qIWFAeXMn4il04EYIjl3DsWiJr0xDMTJhvMOmD55xTRPlNp39w==}
|
resolution: {integrity: sha512-C6yhY5Hvc2sGM+mCPek9ZLe5xRUOC/BvhAt2qIWFAeXMn4il04EYIjl3DsWiJr0xDMTJhvMOmD55xTRPlNp39w==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [riscv64]
|
cpu: [riscv64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [musl]
|
||||||
|
|
||||||
'@oxfmt/binding-linux-s390x-gnu@0.35.0':
|
'@oxfmt/binding-linux-s390x-gnu@0.35.0':
|
||||||
resolution: {integrity: sha512-RG2hlvOMK4OMZpO3mt8MpxLQ0AAezlFqhn5mI/g5YrVbPFyoCv9a34AAvbSJS501ocOxlFIRcKEuw5hFvddf9g==}
|
resolution: {integrity: sha512-RG2hlvOMK4OMZpO3mt8MpxLQ0AAezlFqhn5mI/g5YrVbPFyoCv9a34AAvbSJS501ocOxlFIRcKEuw5hFvddf9g==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [s390x]
|
cpu: [s390x]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@oxfmt/binding-linux-x64-gnu@0.35.0':
|
'@oxfmt/binding-linux-x64-gnu@0.35.0':
|
||||||
resolution: {integrity: sha512-wzmh90Pwvqj9xOKHJjkQYBpydRkaXG77ZvDz+iFDRRQpnqIEqGm5gmim2s6vnZIkDGsvKCuTdtxm0GFmBjM1+w==}
|
resolution: {integrity: sha512-wzmh90Pwvqj9xOKHJjkQYBpydRkaXG77ZvDz+iFDRRQpnqIEqGm5gmim2s6vnZIkDGsvKCuTdtxm0GFmBjM1+w==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@oxfmt/binding-linux-x64-musl@0.35.0':
|
'@oxfmt/binding-linux-x64-musl@0.35.0':
|
||||||
resolution: {integrity: sha512-+HCqYCJPCUy5I+b2cf+gUVaApfgtoQT3HdnSg/l7NIcLHOhKstlYaGyrFZLmUpQt4WkFbpGKZZayG6zjRU0KFA==}
|
resolution: {integrity: sha512-+HCqYCJPCUy5I+b2cf+gUVaApfgtoQT3HdnSg/l7NIcLHOhKstlYaGyrFZLmUpQt4WkFbpGKZZayG6zjRU0KFA==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [musl]
|
||||||
|
|
||||||
'@oxfmt/binding-openharmony-arm64@0.35.0':
|
'@oxfmt/binding-openharmony-arm64@0.35.0':
|
||||||
resolution: {integrity: sha512-kFYmWfR9YL78XyO5ws+1dsxNvZoD973qfVMNFOS4e9bcHXGF7DvGC2tY5UDFwyMCeB33t3sDIuGONKggnVNSJA==}
|
resolution: {integrity: sha512-kFYmWfR9YL78XyO5ws+1dsxNvZoD973qfVMNFOS4e9bcHXGF7DvGC2tY5UDFwyMCeB33t3sDIuGONKggnVNSJA==}
|
||||||
|
|
@ -1568,21 +1581,25 @@ packages:
|
||||||
resolution: {integrity: sha512-C8owWG+yvo7X0oVLIXetkoJhIFBP1LYNcAQqtgLmJnQLQDklGuP83dKC+zISGQWpjawHfZ1ER96vLgoTrxKZdw==}
|
resolution: {integrity: sha512-C8owWG+yvo7X0oVLIXetkoJhIFBP1LYNcAQqtgLmJnQLQDklGuP83dKC+zISGQWpjawHfZ1ER96vLgoTrxKZdw==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@rspack/binding-linux-arm64-musl@1.7.12':
|
'@rspack/binding-linux-arm64-musl@1.7.12':
|
||||||
resolution: {integrity: sha512-i51WWI64aRpsfSki6rN0aepPqXkVfS+vZM7+4bWDcmnhUmdMvhIPcYg0QRk3DtyJnu33jqNLM0WHY78k00NyfA==}
|
resolution: {integrity: sha512-i51WWI64aRpsfSki6rN0aepPqXkVfS+vZM7+4bWDcmnhUmdMvhIPcYg0QRk3DtyJnu33jqNLM0WHY78k00NyfA==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [musl]
|
||||||
|
|
||||||
'@rspack/binding-linux-x64-gnu@1.7.12':
|
'@rspack/binding-linux-x64-gnu@1.7.12':
|
||||||
resolution: {integrity: sha512-MSos0FuPEefqo9V92ULd5hggKG29EkSNg1zDcypy0OkpsKh5pfjVxTLYFXgTcVyFoUQQbdG8zFBzYbwmJ8V4ew==}
|
resolution: {integrity: sha512-MSos0FuPEefqo9V92ULd5hggKG29EkSNg1zDcypy0OkpsKh5pfjVxTLYFXgTcVyFoUQQbdG8zFBzYbwmJ8V4ew==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [glibc]
|
||||||
|
|
||||||
'@rspack/binding-linux-x64-musl@1.7.12':
|
'@rspack/binding-linux-x64-musl@1.7.12':
|
||||||
resolution: {integrity: sha512-JcAMVKXOnjfpC3coWjCFPWD3Yl8RBw6a+IXQQ8mfRlHaHMIiOv8IfZqx15XRxMUn49CtP7Z0Na8iiAg2aKrcfw==}
|
resolution: {integrity: sha512-JcAMVKXOnjfpC3coWjCFPWD3Yl8RBw6a+IXQQ8mfRlHaHMIiOv8IfZqx15XRxMUn49CtP7Z0Na8iiAg2aKrcfw==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
libc: [musl]
|
||||||
|
|
||||||
'@rspack/binding-wasm32-wasi@1.7.12':
|
'@rspack/binding-wasm32-wasi@1.7.12':
|
||||||
resolution: {integrity: sha512-n+ZqP6ZMc0nhOgvadg5VhEs9ojtbES80AcWeFnmGkbzIszvGSO63GKNiRkXtjJ9KFuRzytbbmsCqkUVH+Tywxg==}
|
resolution: {integrity: sha512-n+ZqP6ZMc0nhOgvadg5VhEs9ojtbES80AcWeFnmGkbzIszvGSO63GKNiRkXtjJ9KFuRzytbbmsCqkUVH+Tywxg==}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Descriptions, Divider } from "antd";
|
import { Descriptions, Divider } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import PreviewImg from "zy-react-library/components/PreviewImg";
|
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||||
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
||||||
import useGetFile from "zy-react-library/hooks/useGetFile";
|
import useGetFile from "zy-react-library/hooks/useGetFile";
|
||||||
|
|
@ -49,7 +49,7 @@ function PersonInChargeInfo({ props, certificatePhotoType }) {
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<Page headerTitle="证书信息查看">
|
<PageLayout title="证书信息查看">
|
||||||
<div>
|
<div>
|
||||||
<Divider orientation="left">人员信息</Divider>
|
<Divider orientation="left">人员信息</Divider>
|
||||||
<Descriptions
|
<Descriptions
|
||||||
|
|
@ -133,7 +133,7 @@ function PersonInChargeInfo({ props, certificatePhotoType }) {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</Page>
|
</PageLayout>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import { Button, Form, message, Modal, Space } from "antd";
|
||||||
import { useEffect, useRef, useState } from "react";
|
import { useEffect, useRef, useState } from "react";
|
||||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
import FormBuilder from "zy-react-library/components/FormBuilder";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import DictionarySelect from "zy-react-library/components/Select/Dictionary";
|
import DictionarySelect from "zy-react-library/components/Select/Dictionary";
|
||||||
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
|
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
|
||||||
|
|
@ -227,7 +227,7 @@ function List({ props, certificatePhotoType, displayType, personnelType, permiss
|
||||||
}, [tableProps.dataSource]);
|
}, [tableProps.dataSource]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
|
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
|
|
@ -388,7 +388,7 @@ function List({ props, certificatePhotoType, displayType, personnelType, permiss
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
function AddModalComponent(props) {
|
function AddModalComponent(props) {
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
|
|
||||||
import { Descriptions, Divider } from "antd";
|
import { Descriptions, Divider } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import PreviewImg from "zy-react-library/components/PreviewImg";
|
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||||
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
||||||
import useGetFile from "zy-react-library/hooks/useGetFile";
|
import useGetFile from "zy-react-library/hooks/useGetFile";
|
||||||
|
|
@ -47,7 +47,7 @@ function SpecialCertificateInfo({ props, certificatePhotoType }) {
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<Page headerTitle="证书信息查看">
|
<PageLayout title="证书信息查看">
|
||||||
<div>
|
<div>
|
||||||
<Divider orientation="left">人员信息</Divider>
|
<Divider orientation="left">人员信息</Divider>
|
||||||
<Descriptions
|
<Descriptions
|
||||||
|
|
@ -142,7 +142,7 @@ function SpecialCertificateInfo({ props, certificatePhotoType }) {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</Page>
|
</PageLayout>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ import { useEffect, useRef, useState } from "react";
|
||||||
import { useLocation } from "react-router-dom";
|
import { useLocation } from "react-router-dom";
|
||||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
import FormBuilder from "zy-react-library/components/FormBuilder";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import DictionarySelect from "zy-react-library/components/Select/Dictionary";
|
import DictionarySelect from "zy-react-library/components/Select/Dictionary";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
|
|
@ -256,7 +256,7 @@ function SpecialCertificateList({ props, certificatePhotoType, displayType, pers
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
|
|
||||||
<Search
|
<Search
|
||||||
onValuesChange={onValuesChange}
|
onValuesChange={onValuesChange}
|
||||||
|
|
@ -439,7 +439,7 @@ function SpecialCertificateList({ props, certificatePhotoType, displayType, pers
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
function AddModalComponent(props) {
|
function AddModalComponent(props) {
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ if (!window.__POWERED_BY_QIANKUN__) {
|
||||||
// 本地开发时注入 Token,使 API 请求可携带认证信息
|
// 本地开发时注入 Token,使 API 请求可携带认证信息
|
||||||
sessionStorage.setItem(
|
sessionStorage.setItem(
|
||||||
"token",
|
"token",
|
||||||
"jjb-saas-auth:oauth:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ7XCJjbGllbnRJZFwiOlwiWlFBUVBKXCIsXCJhY2NvdW50SWRcIjoyMDY5Njc0MjM3ODc0MDEyMTYwLFwidXNlclR5cGVFbnVtXCI6XCJQTEFURk9STVwiLFwidXNlcklkXCI6MjA2OTY3NDIzNzE3MzQzNjQxNixcInRlbmFudElkXCI6MjA2OTU5NjM5NzkyMDg0OTkyMCxcInRlbmFudE5hbWVcIjpcIumHjeW6huWuieWFqOivhOS7t1wiLFwidGVuYW50UGFyZW50SWRzXCI6XCIwLDIwNjk1OTYzOTc5MjA4NDk5MjBcIixcIm5hbWVcIjpcInRlc3QwMVwiLFwiYWNjZXNzVGlja2V0XCI6XCJ0eGd0MjA3dktBd21OeTUwY3ppdmhUZlNaSm9ZbmxZV003ZHJQbUlsS0wxV2ZYTnNFckp2OUxCMzNBSXRcIixcInJlZnJlc2hUaWNrZXRcIjpcIkl3cHdlMWpCeXZnQTRvTlNtZXNzdHl4cXQ3WWdmb3NuMlZyd01RVUtkanNyWjFpSFBHMXZQQVRRT1A3c1wiLFwiZXhwaXJlSW5cIjo2MDQ4MDAsXCJyZWZyZXNoRXhwaXJlc0luXCI6NjA0ODAwLFwib3JnSWRcIjoyMDY5NTk2Mzk3OTIwODQ5OTIwLFwib3JnTmFtZVwiOlwi6YeN5bqG5a6J5YWo6K-E5Lu3XCIsXCJvcmdJZHNcIjpbMjA2OTU5NjM5NzkyMDg0OTkyMF0sXCJyb2xlc1R5cGVzXCI6W1wiR0xZSlNcIl0sXCJyb2xlSWRzXCI6WzIwNjk2NzEzMDc1OTg4OTMwNThdLFwic2NvcGVzXCI6W10sXCJycGNUeXBlRW51bVwiOlwiSFRUUFwiLFwiYmluZE1vYmlsZVNpZ25cIjpcIkZBTFNFXCJ9IiwiaXNzIjoicHJvLXNlcnZlciIsImV4cCI6MTc4MzMwNDY3OX0.HSQlvOrqikDKAOPfTuXGQbm5W8YrUQkYmkhKg03OjuM"
|
"jjb-saas-auth:oauth:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ7XCJjbGllbnRJZFwiOlwiWlFBUVBKXCIsXCJhY2NvdW50SWRcIjoyMDY5Njc0MjM3ODc0MDEyMTYwLFwidXNlclR5cGVFbnVtXCI6XCJQTEFURk9STVwiLFwidXNlcklkXCI6MjA2OTY3NDIzNzE3MzQzNjQxNixcInRlbmFudElkXCI6MjA2OTU5NjM5NzkyMDg0OTkyMCxcInRlbmFudE5hbWVcIjpcIumHjeW6huWuieWFqOivhOS7t1wiLFwidGVuYW50UGFyZW50SWRzXCI6XCIwLDIwNjk1OTYzOTc5MjA4NDk5MjBcIixcIm5hbWVcIjpcInRlc3QwMVwiLFwiYWNjZXNzVGlja2V0XCI6XCJFS0FJVThJT2g4WlE3cjg4UXE5YlkxbENhd2lLOTNBWGhSMGVTN2Z4aFo2SU43QjVOclBncDlnb1pnS0JcIixcInJlZnJlc2hUaWNrZXRcIjpcInJQc2V0ZXR6SjB3aHBSSk8ycDlRb3RPaHJTcFdFY0xkblBkdURxb0JwU0F0VmdENU56QW1XTkVCc09jMFwiLFwiZXhwaXJlSW5cIjo2MDQ4MDAsXCJyZWZyZXNoRXhwaXJlc0luXCI6NjA0ODAwLFwib3JnSWRcIjoyMDY5NTk2Mzk3OTIwODQ5OTIwLFwib3JnTmFtZVwiOlwi6YeN5bqG5a6J5YWo6K-E5Lu3XCIsXCJvcmdJZHNcIjpbMjA2OTU5NjM5NzkyMDg0OTkyMF0sXCJyb2xlc1R5cGVzXCI6W1wiR0xZSlNcIl0sXCJyb2xlSWRzXCI6WzIwNjk2NzEzMDc1OTg4OTMwNThdLFwic2NvcGVzXCI6W10sXCJycGNUeXBlRW51bVwiOlwiSFRUUFwiLFwiYmluZE1vYmlsZVNpZ25cIjpcIkZBTFNFXCJ9IiwiaXNzIjoicHJvLXNlcnZlciIsImV4cCI6MTc4MzMxOTc4OX0.rt-lrdDQlyhDu9S7xUtJ3L3F9k_C8710Ah1dJ-0-A1c"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,14 +2,13 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Empty, Form, Input, message, Modal, Row, Col, Select, Space, Tree } from "antd";
|
import { Button, Empty, Form, Input, message, Modal, Row, Col, Select, Space, Tree } from "antd";
|
||||||
import { useEffect, useMemo, useRef, useState } from "react";
|
import { useEffect, useMemo, useRef, useState } from "react";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import useTable from "zy-react-library/hooks/useTable";
|
import useTable from "zy-react-library/hooks/useTable";
|
||||||
import { NS_ORG_DEPARTMENT, NS_ORG_POSITION, NS_STAFF_INFO } from "~/enumerate/namespace";
|
import { NS_ORG_DEPARTMENT, NS_ORG_POSITION, NS_STAFF_INFO } from "~/enumerate/namespace";
|
||||||
import { asId, sameId } from "~/api/enterpriseInfo/idUtil";
|
import { asId, sameId } from "~/api/enterpriseInfo/idUtil";
|
||||||
import { safeListRequest, safeRequest } from "~/utils";
|
import { safeListRequest, safeRequest } from "~/utils";
|
||||||
import PageHeader from "../components/PageHeader";
|
|
||||||
|
|
||||||
function findDeptNode(nodes = [], id) {
|
function findDeptNode(nodes = [], id) {
|
||||||
for (const node of nodes) {
|
for (const node of nodes) {
|
||||||
|
|
@ -218,8 +217,7 @@ function DepartmentPositionPage(props) {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout title="部门岗位管理">
|
||||||
<PageHeader title="部门岗位管理" />
|
|
||||||
<div style={{ display: "flex", gap: 16, minHeight: 480 }}>
|
<div style={{ display: "flex", gap: 16, minHeight: 480 }}>
|
||||||
<div style={{ width: 260, borderRight: "1px solid #f0f0f0", paddingRight: 16, flexShrink: 0 }}>
|
<div style={{ width: 260, borderRight: "1px solid #f0f0f0", paddingRight: 16, flexShrink: 0 }}>
|
||||||
<Space direction="vertical" style={{ width: "100%", marginBottom: 12 }}>
|
<Space direction="vertical" style={{ width: "100%", marginBottom: 12 }}>
|
||||||
|
|
@ -339,7 +337,7 @@ function DepartmentPositionPage(props) {
|
||||||
</Form>
|
</Form>
|
||||||
</Modal>
|
</Modal>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Descriptions, Form, Input, InputNumber, message, Modal, Row, Col, Select, Space } from "antd";
|
import { Button, Descriptions, Form, Input, InputNumber, message, Modal, Row, Col, Select, Space } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
||||||
|
|
@ -11,7 +11,6 @@ import { NS_EQUIP_INFO } from "~/enumerate/namespace";
|
||||||
import { isEquipEnabled } from "~/api/enterpriseInfo/adapter";
|
import { isEquipEnabled } from "~/api/enterpriseInfo/adapter";
|
||||||
import { safeListRequest, safeRequest } from "~/utils";
|
import { safeListRequest, safeRequest } from "~/utils";
|
||||||
import { positiveNumberRule } from "~/utils/validators";
|
import { positiveNumberRule } from "~/utils/validators";
|
||||||
import PageHeader from "../components/PageHeader";
|
|
||||||
|
|
||||||
const DUAL_CHANNEL = { 1: "是", 0: "否" };
|
const DUAL_CHANNEL = { 1: "是", 0: "否" };
|
||||||
|
|
||||||
|
|
@ -64,11 +63,10 @@ function EquipInfoPage(props) {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="装备信息管理"
|
实现对评价机构内装备信息的维护管理。
|
||||||
subTitle="实现对评价机构内装备信息的维护管理。"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
options={[
|
options={[
|
||||||
|
|
@ -157,7 +155,7 @@ function EquipInfoPage(props) {
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,34 +1,69 @@
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Form, message, Space } from "antd";
|
import {
|
||||||
|
Button,
|
||||||
|
Col,
|
||||||
|
DatePicker,
|
||||||
|
Form,
|
||||||
|
Input,
|
||||||
|
InputNumber,
|
||||||
|
message,
|
||||||
|
Row,
|
||||||
|
Select,
|
||||||
|
Space,
|
||||||
|
Upload,
|
||||||
|
} from "antd";
|
||||||
|
import dayjs from "dayjs";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Page from "zy-react-library/components/Page";
|
|
||||||
import { getOrgInfoDetail } from "~/api/enterpriseInfo/orgBootstrap";
|
import {
|
||||||
import PageHeader from "../components/PageHeader";
|
CHONGQING_DISTRICTS,
|
||||||
|
ENTERPRISE_SCALE_OPTIONS,
|
||||||
|
ENTERPRISE_STATUS_OPTIONS,
|
||||||
|
FILING_RECORD_STATUS_OPTIONS,
|
||||||
|
FILING_TYPE_OPTIONS,
|
||||||
|
} from "~/enumerate/enterpriseOptions";
|
||||||
import { NS_ORG_INFO } from "~/enumerate/namespace";
|
import { NS_ORG_INFO } from "~/enumerate/namespace";
|
||||||
import { mockUploadFileList } from "~/utils/mockUpload";
|
import { mockUploadFileList } from "~/utils/mockUpload";
|
||||||
import { buildOrgInfoFormOptions } from "./formOptions";
|
import {
|
||||||
|
creditCodeRule,
|
||||||
|
latitudeRule,
|
||||||
|
longitudeRule,
|
||||||
|
nonNegativeIntegerRule,
|
||||||
|
phoneRule,
|
||||||
|
positiveNumberRule,
|
||||||
|
urlRule,
|
||||||
|
} from "~/utils/validators";
|
||||||
|
|
||||||
function OrgInfoPage(props) {
|
function OrgInfoPage(props) {
|
||||||
const [form] = Form.useForm();
|
const [form] = Form.useForm();
|
||||||
|
const { orgInfoLoading } = props.orgInfo;
|
||||||
const [editing, setEditing] = useState(true);
|
const [editing, setEditing] = useState(true);
|
||||||
const [submitting, setSubmitting] = useState(false);
|
const [submitting, setSubmitting] = useState(false);
|
||||||
const [detail, setDetail] = useState({});
|
const [detail, setDetail] = useState({});
|
||||||
/** 是否已存在机构数据(有 id 视为已入库,只能修改) */
|
/** 是否已存在机构数据(有 id 视为已入库,只能修改) */
|
||||||
const [hasExistingData, setHasExistingData] = useState(false);
|
const [hasExistingData, setHasExistingData] = useState(false);
|
||||||
|
|
||||||
const formOptions = buildOrgInfoFormOptions();
|
const selectDistrictOptions = CHONGQING_DISTRICTS.map((v) => ({
|
||||||
|
label: v,
|
||||||
|
value: v,
|
||||||
|
}));
|
||||||
|
|
||||||
const loadDetail = async () => {
|
const loadDetail = async () => {
|
||||||
try {
|
try {
|
||||||
const res = getOrgInfoDetail();
|
const res = await props.orgInfoGet();
|
||||||
if (res?.data?.id) {
|
if (res?.data?.id) {
|
||||||
setDetail(res.data);
|
setDetail(res.data);
|
||||||
form.setFieldsValue(res.data);
|
form.setFieldsValue({
|
||||||
|
...res.data,
|
||||||
|
productionDate: res.data.productionDate
|
||||||
|
? dayjs(res.data.productionDate)
|
||||||
|
: undefined,
|
||||||
|
|
||||||
|
});
|
||||||
setHasExistingData(true);
|
setHasExistingData(true);
|
||||||
setEditing(false);
|
setEditing(false);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
setDetail({});
|
setDetail({});
|
||||||
setHasExistingData(false);
|
setHasExistingData(false);
|
||||||
setEditing(true);
|
setEditing(true);
|
||||||
|
|
@ -38,8 +73,7 @@ function OrgInfoPage(props) {
|
||||||
attachments: mockUploadFileList("资质申请书.pdf"),
|
attachments: mockUploadFileList("资质申请书.pdf"),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
} catch (err) {
|
||||||
catch (err) {
|
|
||||||
console.warn("[OrgInfo] loadDetail failed:", err);
|
console.warn("[OrgInfo] loadDetail failed:", err);
|
||||||
setDetail({});
|
setDetail({});
|
||||||
setHasExistingData(false);
|
setHasExistingData(false);
|
||||||
|
|
@ -53,17 +87,27 @@ function OrgInfoPage(props) {
|
||||||
|
|
||||||
const handleCancelEdit = () => {
|
const handleCancelEdit = () => {
|
||||||
if (hasExistingData) {
|
if (hasExistingData) {
|
||||||
form.setFieldsValue(detail);
|
form.setFieldsValue({
|
||||||
|
...detail,
|
||||||
|
productionDate: detail.productionDate
|
||||||
|
? dayjs(detail.productionDate)
|
||||||
|
: undefined,
|
||||||
|
});
|
||||||
setEditing(false);
|
setEditing(false);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
form.resetFields();
|
form.resetFields();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleSave = async (submitType) => {
|
const handleSave = async (submitType) => {
|
||||||
try {
|
try {
|
||||||
const values = await form.validateFields();
|
const formValues = await form.validateFields();
|
||||||
|
const values = {
|
||||||
|
...formValues,
|
||||||
|
productionDate: formValues.productionDate
|
||||||
|
? dayjs(formValues.productionDate).format("YYYY-MM-DD")
|
||||||
|
: undefined,
|
||||||
|
};
|
||||||
setSubmitting(true);
|
setSubmitting(true);
|
||||||
|
|
||||||
let request;
|
let request;
|
||||||
|
|
@ -71,10 +115,10 @@ function OrgInfoPage(props) {
|
||||||
// 已有数据:仅走修改接口
|
// 已有数据:仅走修改接口
|
||||||
request = props.orgInfoSave;
|
request = props.orgInfoSave;
|
||||||
values.id = detail.id;
|
values.id = detail.id;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
// 无数据:暂存、提交均走保存接口(草稿/已提交由 authStatusCode 区分)
|
// 无数据:暂存、提交均走保存接口(草稿/已提交由 authStatusCode 区分)
|
||||||
request = submitType === "draft" ? props.orgInfoDraft : props.orgInfoSave;
|
request =
|
||||||
|
submitType === "draft" ? props.orgInfoDraft : props.orgInfoSave;
|
||||||
}
|
}
|
||||||
|
|
||||||
const res = await request(values);
|
const res = await request(values);
|
||||||
|
|
@ -82,61 +126,330 @@ function OrgInfoPage(props) {
|
||||||
message.success(
|
message.success(
|
||||||
hasExistingData
|
hasExistingData
|
||||||
? "修改成功"
|
? "修改成功"
|
||||||
: (submitType === "draft" ? "暂存成功" : "提交成功"),
|
: submitType === "draft"
|
||||||
|
? "暂存成功"
|
||||||
|
: "提交成功",
|
||||||
);
|
);
|
||||||
setEditing(false);
|
setEditing(false);
|
||||||
loadDetail();
|
loadDetail();
|
||||||
}
|
}
|
||||||
}
|
} catch (err) {
|
||||||
catch (err) {
|
|
||||||
if (err?.errorFields) {
|
if (err?.errorFields) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
message.error(hasExistingData ? "修改失败,请稍后重试" : "保存失败,请稍后重试");
|
message.error(
|
||||||
}
|
hasExistingData ? "修改失败,请稍后重试" : "保存失败,请稍后重试",
|
||||||
finally {
|
);
|
||||||
|
} finally {
|
||||||
setSubmitting(false);
|
setSubmitting(false);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const subTitleText =
|
||||||
|
"新成立或首次使用系统的安全评价机构,可通过系统提供的引导页面,详细填写机构的基本信息。";
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout
|
||||||
<PageHeader
|
|
||||||
title="机构信息管理"
|
title="机构信息管理"
|
||||||
subTitle="新成立或首次使用系统的安全评价机构,可通过系统提供的引导页面,详细填写机构的基本信息。"
|
extra={
|
||||||
extra={hasExistingData && !editing && (
|
hasExistingData &&
|
||||||
<Button type="primary" onClick={() => setEditing(true)}>
|
!editing && (
|
||||||
|
<Button type="primary" loading={orgInfoLoading} onClick={() => setEditing(true)}>
|
||||||
修改
|
修改
|
||||||
</Button>
|
</Button>
|
||||||
)}
|
)
|
||||||
|
}
|
||||||
|
>
|
||||||
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
|
{subTitleText}
|
||||||
|
</p>
|
||||||
|
<Form form={form} labelCol={{ span: 10 }} disabled={!editing}>
|
||||||
|
<Row gutter={[16, 16]}>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="orgName"
|
||||||
|
label="生产经营单位名称"
|
||||||
|
rules={[{ required: true, message: "请输入生产经营单位名称" }]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入生产经营单位名称" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="creditCode"
|
||||||
|
label="统一社会信用代码"
|
||||||
|
rules={[creditCodeRule(true)]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入统一社会信用代码" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="safetyIndustryCategory"
|
||||||
|
label="安全生产监管行业类别"
|
||||||
|
rules={[
|
||||||
|
{ required: true, message: "请输入安全生产监管行业类别" },
|
||||||
|
]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入安全生产监管行业类别" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="regionCountyName"
|
||||||
|
label="属地"
|
||||||
|
rules={[{ required: true, message: "请选择属地" }]}
|
||||||
|
>
|
||||||
|
<Select options={selectDistrictOptions} placeholder="请选择属地" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="regionStreetName"
|
||||||
|
label="所属镇、街道"
|
||||||
|
rules={[{ required: true, message: "请输入所属镇街道" }]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入所属镇街道" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="regionCommunityName" label="属村(社区)">
|
||||||
|
<Input placeholder="请输入属村(社区)" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="longitude"
|
||||||
|
label="所在地坐标经度"
|
||||||
|
rules={[longitudeRule(false)]}
|
||||||
|
>
|
||||||
|
<InputNumber
|
||||||
|
style={{ width: "100%" }}
|
||||||
|
min={-180}
|
||||||
|
max={180}
|
||||||
|
precision={6}
|
||||||
|
placeholder="请输入经度"
|
||||||
/>
|
/>
|
||||||
<FormBuilder
|
</Form.Item>
|
||||||
form={form}
|
</Col>
|
||||||
span={12}
|
<Col span={12}>
|
||||||
disabled={!editing}
|
<Form.Item
|
||||||
useAutoGenerateRequired={false}
|
name="latitude"
|
||||||
options={formOptions}
|
label="所在地坐标纬度"
|
||||||
labelCol={{ span: 10 }}
|
rules={[latitudeRule(false)]}
|
||||||
showActionButtons={false}
|
>
|
||||||
|
<InputNumber
|
||||||
|
style={{ width: "100%" }}
|
||||||
|
min={-90}
|
||||||
|
max={90}
|
||||||
|
precision={6}
|
||||||
|
placeholder="请输入纬度"
|
||||||
/>
|
/>
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="registerAddress"
|
||||||
|
label="注册地址"
|
||||||
|
rules={[{ required: true, message: "请输入注册地址" }]}
|
||||||
|
>
|
||||||
|
<Input.TextArea rows={3} placeholder="请输入注册地址" />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="businessAddress"
|
||||||
|
label="经营地址"
|
||||||
|
rules={[{ required: true, message: "请输入经营地址" }]}
|
||||||
|
>
|
||||||
|
<Input.TextArea rows={3} placeholder="请输入经营地址" />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="ownershipType" label="归属类型">
|
||||||
|
<Input placeholder="请输入归属类型" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="gbIndustryCode"
|
||||||
|
label="国民经济行业分类(GB/T4754-2017)"
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入国民经济行业分类" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="legalRepresentative"
|
||||||
|
label="法定代表人"
|
||||||
|
rules={[{ required: true, message: "请输入法定代表人" }]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入法定代表人" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="legalRepPhone"
|
||||||
|
label="法定代表人联系电话"
|
||||||
|
rules={[phoneRule("法定代表人联系电话", false)]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入法定代表人联系电话" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="principal"
|
||||||
|
label="主要负责人"
|
||||||
|
rules={[{ required: true, message: "请输入主要负责人" }]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入主要负责人" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="principalPhone"
|
||||||
|
label="主要负责人联系电话"
|
||||||
|
rules={[phoneRule("主要负责人联系电话", true)]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入主要负责人联系电话" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="safetyDeptHead" label="安全管理部门负责人">
|
||||||
|
<Input placeholder="请输入安全管理部门负责人" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="safetyDeptPhone"
|
||||||
|
label="安全管理部门负责人联系电话"
|
||||||
|
rules={[phoneRule("安全管理部门负责人联系电话", false)]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入安全管理部门负责人联系电话" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="safetyVp" label="主管安全副总">
|
||||||
|
<Input placeholder="请输入主管安全副总" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="safetyVpPhone"
|
||||||
|
label="主管安全副总联系电话"
|
||||||
|
rules={[phoneRule("主管安全副总联系电话", false)]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入主管安全副总联系电话" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="productionDate" label="投产日期">
|
||||||
|
<DatePicker style={{ width: "100%" }} placeholder="请选择投产日期" />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="businessStatus" label="企业经营状态">
|
||||||
|
<Input placeholder="请输入企业经营状态" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="disclosureUrl"
|
||||||
|
label="信息公开网址"
|
||||||
|
rules={[urlRule("信息公开网址", false)]}
|
||||||
|
>
|
||||||
|
<Input placeholder="请输入信息公开网址" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="workplaceArea"
|
||||||
|
label="工作场所建筑面积"
|
||||||
|
rules={[positiveNumberRule("工作场所建筑面积", false)]}
|
||||||
|
>
|
||||||
|
<InputNumber style={{ width: "100%" }} min={0} precision={2} placeholder="请输入工作场所建筑面积" />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="archiveRoomArea"
|
||||||
|
label="档案室面积"
|
||||||
|
rules={[positiveNumberRule("档案室面积", false)]}
|
||||||
|
>
|
||||||
|
<InputNumber style={{ width: "100%" }} min={0} precision={2} placeholder="请输入档案室面积" />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="fullTimeEvaluatorCount"
|
||||||
|
label="专职安全评价师数量"
|
||||||
|
rules={[nonNegativeIntegerRule("专职安全评价师数量", false)]}
|
||||||
|
>
|
||||||
|
<InputNumber style={{ width: "100%" }} min={0} precision={0} placeholder="请输入专职安全评价师数量" />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="registeredSafetyEngineerCount"
|
||||||
|
label="注册安全工程师数量"
|
||||||
|
rules={[nonNegativeIntegerRule("注册安全工程师数量", false)]}
|
||||||
|
>
|
||||||
|
<InputNumber style={{ width: "100%" }} min={0} precision={0} placeholder="请输入注册安全工程师数量" />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="enterpriseStatus" label="企业状态">
|
||||||
|
<Select options={ENTERPRISE_STATUS_OPTIONS} placeholder="请选择企业状态" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="enterpriseScale" label="企业规模">
|
||||||
|
<Select options={ENTERPRISE_SCALE_OPTIONS} placeholder="请选择企业规模" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="filingType" label="备案类型">
|
||||||
|
<Select options={FILING_TYPE_OPTIONS} placeholder="请选择备案类型" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item name="filingRecordStatus" label="备案状态">
|
||||||
|
<Select options={FILING_RECORD_STATUS_OPTIONS} placeholder="请选择备案状态" allowClear />
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
<Col span={12}>
|
||||||
|
<Form.Item
|
||||||
|
name="attachments"
|
||||||
|
label="上传附件"
|
||||||
|
valuePropName="fileList"
|
||||||
|
>
|
||||||
|
<Upload maxCount={5} listType="picture-card">
|
||||||
|
<Button>上传附件</Button>
|
||||||
|
</Upload>
|
||||||
|
</Form.Item>
|
||||||
|
</Col>
|
||||||
|
</Row>
|
||||||
|
</Form>
|
||||||
{editing && (
|
{editing && (
|
||||||
<div style={{ marginTop: 24, textAlign: "center" }}>
|
<div style={{ marginTop: 24, textAlign: "center" }}>
|
||||||
<Space>
|
<Space>
|
||||||
<Button onClick={handleCancelEdit}>
|
<Button onClick={handleCancelEdit}>取消</Button>
|
||||||
取消
|
|
||||||
</Button>
|
|
||||||
{!hasExistingData && (
|
{!hasExistingData && (
|
||||||
<Button loading={submitting} onClick={() => handleSave("draft")}>
|
<Button loading={submitting} onClick={() => handleSave("draft")}>
|
||||||
暂存
|
暂存
|
||||||
</Button>
|
</Button>
|
||||||
)}
|
)}
|
||||||
<Button type="primary" loading={submitting} onClick={() => handleSave("submit")}>
|
<Button
|
||||||
|
type="primary"
|
||||||
|
loading={submitting}
|
||||||
|
onClick={() => handleSave("submit")}
|
||||||
|
>
|
||||||
提交
|
提交
|
||||||
</Button>
|
</Button>
|
||||||
</Space>
|
</Space>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Descriptions, Form, Input, message, Modal, Select, Space, Typography } from "antd";
|
import { Button, Descriptions, Form, Input, message, Modal, Select, Space, Typography } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import useTable from "zy-react-library/hooks/useTable";
|
import useTable from "zy-react-library/hooks/useTable";
|
||||||
import { NS_STAFF_CHANGE_LOG, NS_STAFF_INFO } from "~/enumerate/namespace";
|
import { NS_STAFF_CHANGE_LOG, NS_STAFF_INFO } from "~/enumerate/namespace";
|
||||||
import { safeListRequest, safeRequest } from "~/utils";
|
import { safeListRequest, safeRequest } from "~/utils";
|
||||||
import { CHANGE_COUNT_STYLE, formSelectField, getChangeCount, getEmploymentStatusLabel, getResignAuditStatusLabel } from "~/utils/enterpriseForm";
|
import { CHANGE_COUNT_STYLE, formSelectField, getChangeCount, getEmploymentStatusLabel, getResignAuditStatusLabel } from "~/utils/enterpriseForm";
|
||||||
import PageHeader from "../components/PageHeader";
|
|
||||||
|
|
||||||
const EMPLOYMENT_STATUS = { 1: "在职", 2: "离职" };
|
const EMPLOYMENT_STATUS = { 1: "在职", 2: "离职" };
|
||||||
const RESIGN_AUDIT_STATUS = { 0: "未审核", 1: "已审核", 2: "已退回" };
|
const RESIGN_AUDIT_STATUS = { 0: "未审核", 1: "已审核", 2: "已退回" };
|
||||||
|
|
@ -119,8 +119,7 @@ function PersonnelChangePage(props) {
|
||||||
|
|
||||||
if (viewMode === "log") {
|
if (viewMode === "log") {
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout title="人员变更次数">
|
||||||
<PageHeader title="人员变更次数" />
|
|
||||||
<Button style={{ marginBottom: 16 }} onClick={() => setViewMode("list")}>返回</Button>
|
<Button style={{ marginBottom: 16 }} onClick={() => setViewMode("list")}>返回</Button>
|
||||||
<div style={{ marginBottom: 8 }}>
|
<div style={{ marginBottom: 8 }}>
|
||||||
人员:
|
人员:
|
||||||
|
|
@ -134,16 +133,15 @@ function PersonnelChangePage(props) {
|
||||||
]}
|
]}
|
||||||
{...logTableProps}
|
{...logTableProps}
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="人员变更管理"
|
机构管理员在人员信息管理页面进行相应的修改操作
|
||||||
subTitle="机构管理员在人员信息管理页面进行相应的修改操作"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
options={[
|
options={[
|
||||||
|
|
@ -265,7 +263,7 @@ function PersonnelChangePage(props) {
|
||||||
<Descriptions.Item label="备注">{resignInfo.remark}</Descriptions.Item>
|
<Descriptions.Item label="备注">{resignInfo.remark}</Descriptions.Item>
|
||||||
</Descriptions>
|
</Descriptions>
|
||||||
</Modal>
|
</Modal>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ import { Button, Descriptions, Form, message, Modal, Space } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
import FormBuilder from "zy-react-library/components/FormBuilder";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import CertPreviewImg from "~/components/CertPreviewImg";
|
import CertPreviewImg from "~/components/CertPreviewImg";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
|
|
@ -16,7 +16,7 @@ import { NS_STAFF_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
import { safeGetFiles, safeListRequest, safeRequest } from "~/utils";
|
import { safeGetFiles, safeListRequest, safeRequest } from "~/utils";
|
||||||
import { mockUploadFileList, resolveUploadFileId } from "~/utils/mockUpload";
|
import { mockUploadFileList, resolveUploadFileId } from "~/utils/mockUpload";
|
||||||
import { dateRangeRule } from "~/utils/validators";
|
import { dateRangeRule } from "~/utils/validators";
|
||||||
import PageHeader from "../../components/PageHeader";
|
|
||||||
|
|
||||||
function StaffCertificatePage(props) {
|
function StaffCertificatePage(props) {
|
||||||
const query = useGetUrlQuery();
|
const query = useGetUrlQuery();
|
||||||
|
|
@ -62,8 +62,7 @@ function StaffCertificatePage(props) {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout title={`人员证书 - ${staffName || ""}`}>
|
||||||
<PageHeader title={`人员证书 - ${staffName || ""}`} />
|
|
||||||
<Button style={{ marginBottom: 16 }} onClick={goBack}>返回</Button>
|
<Button style={{ marginBottom: 16 }} onClick={goBack}>返回</Button>
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
|
|
@ -136,7 +135,7 @@ function StaffCertificatePage(props) {
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, DatePicker, Form, Input, message, Modal, Row, Col, Select, Space } from "antd";
|
import { Button, DatePicker, Form, Input, message, Modal, Row, Col, Select, Space } from "antd";
|
||||||
import { useEffect, useRef, useState } from "react";
|
import { useEffect, useRef, useState } from "react";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import Upload from "zy-react-library/components/Upload";
|
import Upload from "zy-react-library/components/Upload";
|
||||||
|
|
@ -22,7 +22,6 @@ import { getBirthDateFromIdCard, safeListRequest, safeRequest } from "~/utils";
|
||||||
import { toDayjs } from "~/utils/dateFormat";
|
import { toDayjs } from "~/utils/dateFormat";
|
||||||
import { formSelectField } from "~/utils/enterpriseForm";
|
import { formSelectField } from "~/utils/enterpriseForm";
|
||||||
import { idCardRule, mobileRule } from "~/utils/validators";
|
import { idCardRule, mobileRule } from "~/utils/validators";
|
||||||
import PageHeader from "../../components/PageHeader";
|
|
||||||
import StaffViewModal from "../StaffViewModal";
|
import StaffViewModal from "../StaffViewModal";
|
||||||
|
|
||||||
function mapPositionOptions(list = []) {
|
function mapPositionOptions(list = []) {
|
||||||
|
|
@ -111,11 +110,10 @@ function PersonnelInfoPage(props) {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="人员信息管理"
|
机构管理员在系统中为本机构的人员进行信息录入,包括姓名、性别、身份证号、出生日期等。
|
||||||
subTitle="机构管理员在系统中为本机构的人员进行信息录入,包括姓名、性别、身份证号、出生日期等。"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
options={[
|
options={[
|
||||||
|
|
@ -198,7 +196,7 @@ function PersonnelInfoPage(props) {
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@ import { Button, Descriptions, Form, message, Modal, Space } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
import FormBuilder from "zy-react-library/components/FormBuilder";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
|
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import Upload from "zy-react-library/components/Upload";
|
import Upload from "zy-react-library/components/Upload";
|
||||||
|
|
@ -19,7 +20,6 @@ import { safeGetFiles, safeListRequest, safeRequest } from "~/utils";
|
||||||
import { toDayjs } from "~/utils/dateFormat";
|
import { toDayjs } from "~/utils/dateFormat";
|
||||||
import { mockUploadFileList, resolveUploadFileId } from "~/utils/mockUpload";
|
import { mockUploadFileList, resolveUploadFileId } from "~/utils/mockUpload";
|
||||||
import { dateRangeRule } from "~/utils/validators";
|
import { dateRangeRule } from "~/utils/validators";
|
||||||
import PageHeader from "../components/PageHeader";
|
|
||||||
|
|
||||||
function QualificationCertPage(props) {
|
function QualificationCertPage(props) {
|
||||||
const [addModalOpen, setAddModalOpen] = useState(false);
|
const [addModalOpen, setAddModalOpen] = useState(false);
|
||||||
|
|
@ -90,11 +90,10 @@ function QualificationCertPage(props) {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="资质信息管理"
|
机构需将自身拥有的安全评价资质证书信息录入系统,包括资质等级、发证机关、发证日期、有效期等。
|
||||||
subTitle="机构需将自身拥有的安全评价资质证书信息录入系统,包括资质等级、发证机关、发证日期、有效期等。"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
options={[
|
options={[
|
||||||
|
|
@ -210,7 +209,7 @@ function QualificationCertPage(props) {
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, DatePicker, Descriptions, Form, Input, message, Modal, Select } from "antd";
|
import { Button, DatePicker, Descriptions, Form, Input, message, Modal, Select } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import Upload from "zy-react-library/components/Upload";
|
import Upload from "zy-react-library/components/Upload";
|
||||||
|
|
@ -12,7 +12,7 @@ import { NS_STAFF_INFO, NS_STAFF_RESIGNATION_APPLY } from "~/enumerate/namespace
|
||||||
import { safeListRequest, safeRequest } from "~/utils";
|
import { safeListRequest, safeRequest } from "~/utils";
|
||||||
import { formSelectField, getResignAuditStatusLabel } from "~/utils/enterpriseForm";
|
import { formSelectField, getResignAuditStatusLabel } from "~/utils/enterpriseForm";
|
||||||
import { DEFAULT_UPLOAD_FILE_URL, mockUploadFileList, resolveUploadFileId } from "~/utils/mockUpload";
|
import { DEFAULT_UPLOAD_FILE_URL, mockUploadFileList, resolveUploadFileId } from "~/utils/mockUpload";
|
||||||
import PageHeader from "../components/PageHeader";
|
|
||||||
|
|
||||||
const RESIGN_AUDIT_STATUS = { 0: "未审核", 1: "已审核", 2: "已退回" };
|
const RESIGN_AUDIT_STATUS = { 0: "未审核", 1: "已审核", 2: "已退回" };
|
||||||
|
|
||||||
|
|
@ -49,11 +49,10 @@ function ResignationApplyPage(props) {
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="人员离职申请"
|
机构管理员在人员信息管理页面进行相应的修改操作
|
||||||
subTitle="机构管理员在人员信息管理页面进行相应的修改操作"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
options={[
|
options={[
|
||||||
|
|
@ -129,7 +128,7 @@ function ResignationApplyPage(props) {
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
export default function PageHeader({ title, subTitle, extra }) {
|
|
||||||
return (
|
|
||||||
<div style={{ display: "flex", justifyContent: "space-between", alignItems: "flex-start", marginBottom: 16 }}>
|
|
||||||
<div>
|
|
||||||
<h2 style={{ margin: 0, fontSize: 20, fontWeight: 600 }}>{title}</h2>
|
|
||||||
{subTitle && (
|
|
||||||
<p style={{ margin: "8px 0 0", color: "rgba(0, 0, 0, 0.45)" }}>{subTitle}</p>
|
|
||||||
)}
|
|
||||||
</div>
|
|
||||||
{extra}
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
@ -51,7 +51,7 @@ function EnterpriseInfo(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div style={{ height: "100%" }}>
|
||||||
{props.children}
|
{props.children}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { Button, Card, Col, Descriptions, Form, Modal, Row, Statistic, Tag } from "antd";
|
import { Button, Card, Col, Descriptions, Form, Modal, Row, Statistic, Tag } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
||||||
|
|
@ -11,7 +11,6 @@ import {
|
||||||
getEnterprisePortraitDetail,
|
getEnterprisePortraitDetail,
|
||||||
queryEnterprisePortraitPage,
|
queryEnterprisePortraitPage,
|
||||||
} from "~/mock/regulator/basicInfo";
|
} from "~/mock/regulator/basicInfo";
|
||||||
import PageHeader from "../../../EnterpriseInfo/components/PageHeader";
|
|
||||||
|
|
||||||
const INFO_LEVEL_COLOR = {
|
const INFO_LEVEL_COLOR = {
|
||||||
level1: "success",
|
level1: "success",
|
||||||
|
|
@ -51,11 +50,10 @@ function EnterprisePortraitPage() {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="企业画像管理"
|
监管端查看企业安全能力画像与综合评级(当前为 Mock 数据)。
|
||||||
subTitle="监管端查看企业安全能力画像与综合评级(当前为 Mock 数据)。"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
options={[
|
options={[
|
||||||
|
|
@ -198,7 +196,7 @@ function EnterprisePortraitPage() {
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
</Modal>
|
</Modal>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,11 @@
|
||||||
import { Button, Descriptions, Form, Modal, Table, Tag, Tooltip } from "antd";
|
import { Button, Descriptions, Form, Modal, Table, Tag, Tooltip } from "antd";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import TableList from "zy-react-library/components/Table";
|
import TableList from "zy-react-library/components/Table";
|
||||||
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
||||||
import useTable from "zy-react-library/hooks/useTable";
|
import useTable from "zy-react-library/hooks/useTable";
|
||||||
import { getEvaluatorDetail, queryEvaluatorPage } from "~/mock/regulator/basicInfo";
|
import { getEvaluatorDetail, queryEvaluatorPage } from "~/mock/regulator/basicInfo";
|
||||||
import PageHeader from "../../../EnterpriseInfo/components/PageHeader";
|
|
||||||
|
|
||||||
const YES_NO_OPTIONS = [
|
const YES_NO_OPTIONS = [
|
||||||
{ label: "是", value: 1 },
|
{ label: "是", value: 1 },
|
||||||
|
|
@ -52,11 +51,10 @@ function EvaluatorInfoPage() {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="评价师信息管理"
|
监管端查看辖区内评价师备案及资质状态(当前为 Mock 数据)。
|
||||||
subTitle="监管端查看辖区内评价师备案及资质状态(当前为 Mock 数据)。"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
options={[
|
options={[
|
||||||
|
|
@ -201,7 +199,7 @@ function EvaluatorInfoPage() {
|
||||||
</Descriptions>
|
</Descriptions>
|
||||||
)}
|
)}
|
||||||
</Modal>
|
</Modal>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ import {
|
||||||
} from "antd";
|
} from "antd";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
||||||
|
|
@ -18,7 +18,6 @@ import {
|
||||||
import { NS_ORG_INFO } from "~/enumerate/namespace";
|
import { NS_ORG_INFO } from "~/enumerate/namespace";
|
||||||
import { safeListRequest, safeRequest } from "~/utils";
|
import { safeListRequest, safeRequest } from "~/utils";
|
||||||
import { formSelectField } from "~/utils/enterpriseForm";
|
import { formSelectField } from "~/utils/enterpriseForm";
|
||||||
import PageHeader from "../../../EnterpriseInfo/components/PageHeader";
|
|
||||||
|
|
||||||
const SEARCH_COL = { xs: 24, sm: 12, md: 8, lg: 6 };
|
const SEARCH_COL = { xs: 24, sm: 12, md: 8, lg: 6 };
|
||||||
const SEARCH_DEFAULT_VALUES = { state: "" };
|
const SEARCH_DEFAULT_VALUES = { state: "" };
|
||||||
|
|
@ -164,11 +163,10 @@ function OrgAccountPage(props) {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="评价机构账号管理"
|
监管端维护评价机构开户账号。
|
||||||
subTitle="监管端维护评价机构开户账号。"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
values={SEARCH_DEFAULT_VALUES}
|
values={SEARCH_DEFAULT_VALUES}
|
||||||
|
|
@ -339,7 +337,7 @@ function OrgAccountPage(props) {
|
||||||
</Row>
|
</Row>
|
||||||
</Form>
|
</Form>
|
||||||
</Modal>
|
</Modal>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Button, Card, Form, Spin, Table, Tabs, Tag, message } from "antd";
|
import { Button, Card, Form, Spin, Table, Tabs, Tag, message } from "antd";
|
||||||
import { useEffect, useMemo, useState } from "react";
|
import { useEffect, useMemo, useState } from "react";
|
||||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
import FormBuilder from "zy-react-library/components/FormBuilder";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import FilePreviewModal from "~/components/FilePreviewModal";
|
import FilePreviewModal from "~/components/FilePreviewModal";
|
||||||
import {
|
import {
|
||||||
fetchRegisteredOrgDetail,
|
fetchRegisteredOrgDetail,
|
||||||
|
|
@ -12,7 +12,6 @@ import {
|
||||||
fetchRegisteredOrgQualificationGroups,
|
fetchRegisteredOrgQualificationGroups,
|
||||||
} from "~/api/regulatorOrgInfo";
|
} from "~/api/regulatorOrgInfo";
|
||||||
import { buildOrgInfoFormOptions } from "../../../../EnterpriseInfo/OrgInfo/formOptions";
|
import { buildOrgInfoFormOptions } from "../../../../EnterpriseInfo/OrgInfo/formOptions";
|
||||||
import PageHeader from "../../../../EnterpriseInfo/components/PageHeader";
|
|
||||||
import StaffViewModal from "../../../../EnterpriseInfo/PersonnelInfo/StaffViewModal";
|
import StaffViewModal from "../../../../EnterpriseInfo/PersonnelInfo/StaffViewModal";
|
||||||
|
|
||||||
const LIST_PATH = "/container/supervision/basicInfo/registeredOrg/list";
|
const LIST_PATH = "/container/supervision/basicInfo/registeredOrg/list";
|
||||||
|
|
@ -192,9 +191,11 @@ function RegisteredOrgDetailPage(props) {
|
||||||
|
|
||||||
if (!id) {
|
if (!id) {
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout title="备案信息详情" extra={<Button onClick={goBack}>返回</Button>}>
|
||||||
<PageHeader title="备案信息详情" subTitle="缺少机构 ID 参数" extra={<Button onClick={goBack}>返回</Button>} />
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
</Page>
|
缺少机构 ID 参数
|
||||||
|
</p>
|
||||||
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -241,12 +242,10 @@ function RegisteredOrgDetailPage(props) {
|
||||||
];
|
];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout title="备案信息详情" extra={<Button onClick={goBack}>← 返回</Button>}>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="备案信息详情"
|
{orgName || undefined}
|
||||||
subTitle={orgName || undefined}
|
</p>
|
||||||
extra={<Button onClick={goBack}>← 返回</Button>}
|
|
||||||
/>
|
|
||||||
<Tabs items={tabItems} />
|
<Tabs items={tabItems} />
|
||||||
|
|
||||||
<FilePreviewModal
|
<FilePreviewModal
|
||||||
|
|
@ -267,7 +266,7 @@ function RegisteredOrgDetailPage(props) {
|
||||||
onCancel={() => setViewPersonnelId("")}
|
onCancel={() => setViewPersonnelId("")}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Button, Form, Tag } from "antd";
|
import { Button, Form, Tag } from "antd";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { useEffect } from "react";
|
import { useEffect } from "react";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import TableList from "zy-react-library/components/Table";
|
import TableList from "zy-react-library/components/Table";
|
||||||
import useTable from "zy-react-library/hooks/useTable";
|
import useTable from "zy-react-library/hooks/useTable";
|
||||||
|
|
@ -12,7 +12,6 @@ import {
|
||||||
import { NS_ORG_INFO } from "~/enumerate/namespace";
|
import { NS_ORG_INFO } from "~/enumerate/namespace";
|
||||||
import { safeListRequest } from "~/utils";
|
import { safeListRequest } from "~/utils";
|
||||||
import { formSelectField } from "~/utils/enterpriseForm";
|
import { formSelectField } from "~/utils/enterpriseForm";
|
||||||
import PageHeader from "../../../../EnterpriseInfo/components/PageHeader";
|
|
||||||
|
|
||||||
const FILING_RECORD_STATUS_COLOR = {
|
const FILING_RECORD_STATUS_COLOR = {
|
||||||
1: "success",
|
1: "success",
|
||||||
|
|
@ -46,11 +45,10 @@ function RegisteredOrgListPage(props) {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
<PageHeader
|
<p style={{ margin: 0, marginBottom: 24, color: "rgba(0, 0, 0, 0.45)" }}>
|
||||||
title="已备案机构管理"
|
监管端查看已备案评价机构及备案详情。
|
||||||
subTitle="监管端查看已备案评价机构及备案详情。"
|
</p>
|
||||||
/>
|
|
||||||
<Search
|
<Search
|
||||||
form={searchForm}
|
form={searchForm}
|
||||||
values={SEARCH_DEFAULT_VALUES}
|
values={SEARCH_DEFAULT_VALUES}
|
||||||
|
|
@ -94,7 +92,7 @@ function RegisteredOrgListPage(props) {
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Form, Space } from "antd";
|
import { Button, Form, Space } from "antd";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
|
|
||||||
|
|
@ -21,7 +21,7 @@ function List(props) {
|
||||||
});
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
|
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
|
|
@ -64,7 +64,7 @@ function List(props) {
|
||||||
{...tableProps}
|
{...tableProps}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
export default Connect([NS_CORP_CERTIFICATE], true)(Permission(List));
|
export default Connect([NS_CORP_CERTIFICATE], true)(Permission(List));
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import { Button, Descriptions, Form, message, Modal, Space } from "antd";
|
||||||
import { useEffect, useRef, useState } from "react";
|
import { useEffect, useRef, useState } from "react";
|
||||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
import FormBuilder from "zy-react-library/components/FormBuilder";
|
||||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import PreviewImg from "zy-react-library/components/PreviewImg";
|
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
|
|
@ -159,7 +159,7 @@ function EnterpriseLicense(props) {
|
||||||
};
|
};
|
||||||
}, [tableProps.dataSource]);
|
}, [tableProps.dataSource]);
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
|
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
|
|
@ -317,7 +317,7 @@ function EnterpriseLicense(props) {
|
||||||
|
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
function AddModalComponent(props) {
|
function AddModalComponent(props) {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Form, Space } from "antd";
|
import { Button, Form, Space } from "antd";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
|
|
||||||
|
|
@ -22,7 +22,7 @@ function List(props) {
|
||||||
});
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
|
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
|
|
@ -66,7 +66,7 @@ function List(props) {
|
||||||
{...tableProps}
|
{...tableProps}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
export default Connect([NS_CORP_CERTIFICATE], true)(Permission(List));
|
export default Connect([NS_CORP_CERTIFICATE], true)(Permission(List));
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Form, Space } from "antd";
|
import { Button, Form, Space } from "antd";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
|
|
||||||
|
|
@ -21,7 +21,7 @@ function List(props) {
|
||||||
});
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
|
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
|
|
@ -111,7 +111,7 @@ function List(props) {
|
||||||
{...tableProps}
|
{...tableProps}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
export default Connect([NS_USER_CERTIFICATE], true)(Permission(List));
|
export default Connect([NS_USER_CERTIFICATE], true)(Permission(List));
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import PersonInChargeList from "~/components/PersonInChargeList";
|
import PersonInChargeList from "~/components/PersonInChargeList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业主要负责人管理
|
// 企业主要负责人管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="主要负责人证书数" isShowFooter={false}>
|
<PageLayout title="主要负责人证书数">
|
||||||
<div>
|
<div>
|
||||||
<PersonInChargeList
|
<PersonInChargeList
|
||||||
props={props}
|
props={props}
|
||||||
|
|
@ -17,7 +17,7 @@ function List(props) {
|
||||||
dictionaryType="zyfzrgwmc0000"
|
dictionaryType="zyfzrgwmc0000"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import PersonInChargeList from "~/components/PersonInChargeList";
|
import PersonInChargeList from "~/components/PersonInChargeList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业安全生产管理人员管理
|
// 企业安全生产管理人员管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="安全生产管理人员证书数" isShowFooter={false}>
|
<PageLayout title="安全生产管理人员证书数">
|
||||||
<PersonInChargeList
|
<PersonInChargeList
|
||||||
props={props}
|
props={props}
|
||||||
certificatePhotoType={162}
|
certificatePhotoType={162}
|
||||||
|
|
@ -15,7 +15,7 @@ function List(props) {
|
||||||
permissionView="gfd-fzgsryzztj-aqgly-infoNb"
|
permissionView="gfd-fzgsryzztj-aqgly-infoNb"
|
||||||
dictionaryType="aqscglrygwmc0000"
|
dictionaryType="aqscglrygwmc0000"
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业特种设备操作人员管理
|
// 企业特种设备操作人员管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="特种设备操作人员证书数" isShowFooter={false}>
|
<PageLayout title="特种设备操作人员证书数">
|
||||||
<SpecialCertificateList
|
<SpecialCertificateList
|
||||||
props={props}
|
props={props}
|
||||||
certificatePhotoType={160}
|
certificatePhotoType={160}
|
||||||
|
|
@ -15,7 +15,7 @@ function List(props) {
|
||||||
permissionView="gfd-fzgsryzztj-tzsbInfoNb"
|
permissionView="gfd-fzgsryzztj-tzsbInfoNb"
|
||||||
dictionaryType="tzsbczryczxmzylb0000"
|
dictionaryType="tzsbczryczxmzylb0000"
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业特种作业人员管理
|
// 企业特种作业人员管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="特种作业人员证书数" isShowFooter={false}>
|
<PageLayout title="特种作业人员证书数">
|
||||||
<SpecialCertificateList
|
<SpecialCertificateList
|
||||||
props={props}
|
props={props}
|
||||||
certificatePhotoType={159}
|
certificatePhotoType={159}
|
||||||
|
|
@ -15,7 +15,7 @@ function List(props) {
|
||||||
permissionView="gfd-fzgsryzztj-tzzyInfoNb"
|
permissionView="gfd-fzgsryzztj-tzzyInfoNb"
|
||||||
dictionaryType="tzzyryhylb0000"
|
dictionaryType="tzzyryhylb0000"
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { Button, Form, Space } from "antd";
|
import { Button, Form, Space } from "antd";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import Search from "zy-react-library/components/Search";
|
import Search from "zy-react-library/components/Search";
|
||||||
import Table from "zy-react-library/components/Table";
|
import Table from "zy-react-library/components/Table";
|
||||||
|
|
||||||
|
|
@ -21,7 +21,7 @@ function List(props) {
|
||||||
});
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Page isShowAllAction={false}>
|
<PageLayout>
|
||||||
|
|
||||||
<Search
|
<Search
|
||||||
form={form}
|
form={form}
|
||||||
|
|
@ -113,7 +113,7 @@ function List(props) {
|
||||||
{...tableProps}
|
{...tableProps}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
export default Connect([NS_USER_CERTIFICATE], true)(Permission(List));
|
export default Connect([NS_USER_CERTIFICATE], true)(Permission(List));
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import PersonInChargeList from "~/components/PersonInChargeList";
|
import PersonInChargeList from "~/components/PersonInChargeList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业主要负责人管理
|
// 企业主要负责人管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="主要负责人证书数" isShowFooter={false}>
|
<PageLayout title="主要负责人证书数">
|
||||||
<PersonInChargeList
|
<PersonInChargeList
|
||||||
props={props}
|
props={props}
|
||||||
certificatePhotoType={161}
|
certificatePhotoType={161}
|
||||||
|
|
@ -15,7 +15,7 @@ function List(props) {
|
||||||
permissionView="gfd-xgfryzztj-zyfzrInfoNb"
|
permissionView="gfd-xgfryzztj-zyfzrInfoNb"
|
||||||
dictionaryType="zyfzrgwmc0000"
|
dictionaryType="zyfzrgwmc0000"
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import PersonInChargeList from "~/components/PersonInChargeList";
|
import PersonInChargeList from "~/components/PersonInChargeList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业安全生产管理人员管理
|
// 企业安全生产管理人员管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="安全生产管理人员证书数" isShowFooter={false}>
|
<PageLayout title="安全生产管理人员证书数">
|
||||||
<PersonInChargeList
|
<PersonInChargeList
|
||||||
props={props}
|
props={props}
|
||||||
certificatePhotoType={162}
|
certificatePhotoType={162}
|
||||||
|
|
@ -15,7 +15,7 @@ function List(props) {
|
||||||
permissionView="gfd-xgfryzztj-aqscInfoNb"
|
permissionView="gfd-xgfryzztj-aqscInfoNb"
|
||||||
dictionaryType="aqscglrygwmc0000"
|
dictionaryType="aqscglrygwmc0000"
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业特种设备操作人员管理
|
// 企业特种设备操作人员管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="特种设备操作人员证书数" isShowFooter={false}>
|
<PageLayout title="特种设备操作人员证书数">
|
||||||
<SpecialCertificateList
|
<SpecialCertificateList
|
||||||
props={props}
|
props={props}
|
||||||
certificatePhotoType={160}
|
certificatePhotoType={160}
|
||||||
|
|
@ -15,7 +15,7 @@ function List(props) {
|
||||||
permissionView="gfd-xgfryzztj-tzsbInfoNb"
|
permissionView="gfd-xgfryzztj-tzsbInfoNb"
|
||||||
dictionaryType="tzsbczryczxmzylb0000"
|
dictionaryType="tzsbczryczxmzylb0000"
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import Page from "zy-react-library/components/Page";
|
import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
|
||||||
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
import SpecialCertificateList from "~/components/SpecialCertificateList";
|
||||||
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
import { NS_USER_CERTIFICATE } from "~/enumerate/namespace";
|
||||||
// 企业特种作业人员管理
|
// 企业特种作业人员管理
|
||||||
function List(props) {
|
function List(props) {
|
||||||
return (
|
return (
|
||||||
<Page headerTitle="特种作业人员证书数" isShowFooter={false}>
|
<PageLayout title="特种作业人员证书数">
|
||||||
<SpecialCertificateList
|
<SpecialCertificateList
|
||||||
props={props}
|
props={props}
|
||||||
certificatePhotoType={159}
|
certificatePhotoType={159}
|
||||||
|
|
@ -15,7 +15,7 @@ function List(props) {
|
||||||
permissionView="gfd-xgfryzztj-tzzyInfoNb"
|
permissionView="gfd-xgfryzztj-tzzyInfoNb"
|
||||||
dictionaryType="tzzyryhylb0000"
|
dictionaryType="tzzyryhylb0000"
|
||||||
/>
|
/>
|
||||||
</Page>
|
</PageLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue