相关方端 需求变更
parent
30951578f5
commit
8b5f6319c4
|
|
@ -28,8 +28,8 @@ module.exports = {
|
|||
// 应用Key
|
||||
appKey: "",
|
||||
// fileUrl: "http://192.168.20.240:9787/mnt/",
|
||||
// fileUrl: "https://jpfz.qhdsafety.com/gbsFileTest/",
|
||||
fileUrl: "https://skqhdg.porthebei.com:9004/file/uploadFiles2/",
|
||||
fileUrl: "https://jpfz.qhdsafety.com/gbsFileTest/",
|
||||
// fileUrl: "https://skqhdg.porthebei.com:9004/file/uploadFiles2/",
|
||||
},
|
||||
// public/index.html注入全局变量
|
||||
windowInject: {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,344 @@
|
|||
import { Button, Descriptions, Divider, Form, message, Modal } from "antd";
|
||||
import { useEffect, useState } from "react";
|
||||
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
||||
import useGetFile from "zy-react-library/hooks/useGetFile";
|
||||
|
||||
import { UseDecodeIdCard } from "~/utils";
|
||||
|
||||
function XgfUserInfo(props) {
|
||||
const [form] = Form.useForm();
|
||||
const [info, setInfo] = useState({});
|
||||
const { loading: getFileLoading, getFile } = useGetFile();
|
||||
|
||||
useEffect(() => {
|
||||
if (props.currentId) {
|
||||
const fetchData = async () => {
|
||||
const res = await props.requestDetails({
|
||||
id: props.currentId,
|
||||
});
|
||||
|
||||
const userImg = (res.data && res.data.userAvatarUrl)
|
||||
? [
|
||||
{
|
||||
filePath: res.data.userAvatarUrl,
|
||||
},
|
||||
]
|
||||
: await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["13"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
|
||||
const cardImg = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["14"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
const socSecurity = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["15"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
const empInsurance = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["16"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
const insurance = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["11"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
|
||||
const contract = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["10"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
const threeLevel = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["19"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
res.data.userImg = userImg;
|
||||
res.data.cardImg = cardImg;
|
||||
res.data.socSecurity = socSecurity;
|
||||
res.data.empInsurance = empInsurance;
|
||||
res.data.insurance = insurance;
|
||||
res.data.contract = contract;
|
||||
res.data.threeLevel = threeLevel;
|
||||
|
||||
setInfo(res.data);
|
||||
};
|
||||
fetchData();
|
||||
}
|
||||
}, [props.currentId]);
|
||||
|
||||
const onCancel = () => {
|
||||
form.resetFields();
|
||||
props.onCancel();
|
||||
};
|
||||
|
||||
const handleReview = (reviewStatus, successMessage) => {
|
||||
Modal.confirm({
|
||||
title: "提示",
|
||||
content: reviewStatus === 2 ? "确定审核通过吗?" : "确定驳回吗?",
|
||||
onOk: () => {
|
||||
props.requestReviewStatus({
|
||||
corpinfoId: info.corpinfoId,
|
||||
employmentFlag: info.employmentFlag,
|
||||
reviewStatus,
|
||||
userId: info.id,
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
message.success(successMessage);
|
||||
props.getData?.();
|
||||
props.onCancel();
|
||||
}
|
||||
});
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
const footer = props.modalType === "review"
|
||||
? [
|
||||
<Button key="return" onClick={onCancel}>
|
||||
关闭
|
||||
</Button>,
|
||||
<Button key="reject" onClick={() => handleReview(3, "驳回成功")}>
|
||||
驳回
|
||||
</Button>,
|
||||
<Button key="pass" type="primary" onClick={() => handleReview(2, "审核成功")}>
|
||||
审核通过
|
||||
</Button>,
|
||||
]
|
||||
: undefined;
|
||||
|
||||
return (
|
||||
<Modal
|
||||
maskClosable={false}
|
||||
open={props.open}
|
||||
title={props.modalType === "review" ? "审核" : "查看"}
|
||||
cancelText="关闭"
|
||||
width={1200}
|
||||
okButtonProps={{
|
||||
style: {
|
||||
display: "none",
|
||||
},
|
||||
}}
|
||||
confirmLoading={getFileLoading}
|
||||
onOk={form.submit}
|
||||
onCancel={onCancel}
|
||||
footer={footer}
|
||||
>
|
||||
<div
|
||||
style={{
|
||||
padding: 20,
|
||||
}}
|
||||
>
|
||||
<Divider orientation="left">基础信息</Divider>
|
||||
<Descriptions
|
||||
bordered
|
||||
items={[
|
||||
{
|
||||
label: props.userPhotoLabel || "人脸照片",
|
||||
children: <PreviewImg files={info.userImg} />,
|
||||
},
|
||||
{
|
||||
label: "身份证照片",
|
||||
children: <PreviewImg files={info.cardImg} />,
|
||||
},
|
||||
{
|
||||
label: "姓名",
|
||||
children: info.name,
|
||||
},
|
||||
{
|
||||
label: "性别",
|
||||
children: info.sex,
|
||||
},
|
||||
|
||||
{
|
||||
label: "出生年月",
|
||||
children: info.birthday,
|
||||
},
|
||||
{
|
||||
label: "年龄",
|
||||
children: info.age,
|
||||
},
|
||||
{
|
||||
label: "手机号",
|
||||
children: (
|
||||
<div>
|
||||
{info.phone}
|
||||
</div>
|
||||
),
|
||||
},
|
||||
{
|
||||
label: "身份证号",
|
||||
children: (
|
||||
<div>
|
||||
{UseDecodeIdCard(info.userIdCard) }
|
||||
</div>
|
||||
),
|
||||
|
||||
},
|
||||
|
||||
...(
|
||||
props.showEmail
|
||||
? [
|
||||
{
|
||||
label: "电子邮箱",
|
||||
children: info.email,
|
||||
},
|
||||
]
|
||||
: []
|
||||
),
|
||||
{
|
||||
label: "民族",
|
||||
children: info.nationName,
|
||||
},
|
||||
// {
|
||||
// label: "婚姻状况",
|
||||
// children: info.maritalStatusName,
|
||||
// },
|
||||
{
|
||||
label: "政治面貌",
|
||||
children: info.politicalAffiliationName,
|
||||
},
|
||||
// {
|
||||
// label: "户口所在地",
|
||||
// children: info.locationAddress,
|
||||
// },
|
||||
// {
|
||||
// label: "现住址",
|
||||
// children: info.currentAddress,
|
||||
// },
|
||||
{
|
||||
label: "文化程度",
|
||||
children: info.culturalLevelName,
|
||||
},
|
||||
{
|
||||
label: "岗位名称",
|
||||
children: info.postName,
|
||||
},
|
||||
]}
|
||||
column={2}
|
||||
labelStyle={{
|
||||
width: 200,
|
||||
}}
|
||||
/>
|
||||
<Divider orientation="left">社保信息</Divider>
|
||||
<Descriptions
|
||||
bordered
|
||||
items={[
|
||||
|
||||
{
|
||||
label: "是否缴纳保险",
|
||||
children: info.isBf === 1 ? "是" : "否",
|
||||
},
|
||||
{
|
||||
label: "是否特殊工种",
|
||||
children: info.isSpecialJob === 1 ? "是" : "否",
|
||||
},
|
||||
{
|
||||
label: "是否为部门负责人",
|
||||
children: info.isDepaRrtmentHead === 1 ? "是" : "否",
|
||||
span: 4,
|
||||
},
|
||||
{
|
||||
label: "是否缴纳社保",
|
||||
children: info.isSocial === 1 ? "是" : "否",
|
||||
span: 4,
|
||||
},
|
||||
...(
|
||||
info.isSocia === 1
|
||||
? [
|
||||
{
|
||||
label: "社会保障号码",
|
||||
children: info.socialNumber,
|
||||
},
|
||||
{
|
||||
label: "社保卡照片",
|
||||
children: <PreviewImg files={info.socSecurity} />,
|
||||
},
|
||||
]
|
||||
: []
|
||||
),
|
||||
{
|
||||
label: "是否按期缴纳工伤保险",
|
||||
children: info.isInjuriesPay === 1 ? "是" : "否",
|
||||
span: 4,
|
||||
},
|
||||
...(
|
||||
info.isInjuriesPay === 1
|
||||
? [
|
||||
{
|
||||
label: "工伤保险有效期",
|
||||
children: info.isInjuriesPayTime,
|
||||
},
|
||||
{
|
||||
label: "工伤保险凭证",
|
||||
children: <PreviewImg files={info.empInsurance} />,
|
||||
},
|
||||
]
|
||||
: []
|
||||
),
|
||||
{
|
||||
label: "是否缴纳商业保险",
|
||||
children: info.ispay === 1 ? "是" : "否",
|
||||
span: 4,
|
||||
},
|
||||
...(
|
||||
info.ispay === 1
|
||||
? [
|
||||
{
|
||||
label: "商业保险单号",
|
||||
children: info.ispayNumber,
|
||||
},
|
||||
{
|
||||
label: "保险图片",
|
||||
children: <PreviewImg files={info.insurance} />,
|
||||
},
|
||||
]
|
||||
: []
|
||||
),
|
||||
{
|
||||
label: "是否签订劳动合同",
|
||||
children: info.isSignLabor === 1 ? "是" : "否",
|
||||
span: 4,
|
||||
},
|
||||
...(
|
||||
info.ispay === 1
|
||||
? [
|
||||
|
||||
{
|
||||
label: "合同图片",
|
||||
children: <PreviewImg files={info.contract} />,
|
||||
span: 4,
|
||||
},
|
||||
]
|
||||
: []
|
||||
),
|
||||
{
|
||||
label: "是否参加三级安全培训",
|
||||
children: info.isLevelThree === 1 ? "是" : "否",
|
||||
span: 4,
|
||||
},
|
||||
...(
|
||||
info.ispay === 1
|
||||
? [
|
||||
|
||||
{
|
||||
label: "三级安全培训照片",
|
||||
children: <PreviewImg files={info.threeLevel} />,
|
||||
span: 4,
|
||||
},
|
||||
]
|
||||
: []
|
||||
),
|
||||
]}
|
||||
column={2}
|
||||
labelStyle={{
|
||||
width: 200,
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
</Modal>
|
||||
);
|
||||
}
|
||||
|
||||
export default XgfUserInfo;
|
||||
|
|
@ -1,20 +1,17 @@
|
|||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||
import { Button, Descriptions, Form, Input, message, Modal, Space } from "antd";
|
||||
import { Button, Form, message, Modal, Space } from "antd";
|
||||
import { useEffect, useState } from "react";
|
||||
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
|
||||
|
||||
import Page from "zy-react-library/components/Page";
|
||||
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||
import Search from "zy-react-library/components/Search";
|
||||
import Table from "zy-react-library/components/Table";
|
||||
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
||||
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
||||
import useGetFile from "zy-react-library/hooks/useGetFile";
|
||||
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
|
||||
import useTable from "zy-react-library/hooks/useTable";
|
||||
import XgfUserInfo from "~/components/XgfUserInfo";
|
||||
import { NS_USER } from "~/enumerate/namespace";
|
||||
import { UseDecodeIdCard } from "~/utils";
|
||||
|
||||
const FLOW_USER_TYPE = [
|
||||
{
|
||||
|
|
@ -177,12 +174,12 @@ function List(props) {
|
|||
</div>
|
||||
</div>
|
||||
{addModalOpen && (
|
||||
<AddModal
|
||||
<XgfUserInfo
|
||||
open={addModalOpen}
|
||||
getData={getData}
|
||||
currentId={currentId}
|
||||
requestDetails={props["userDetails"]}
|
||||
requwstRolesAll={props["authRolesAll"]}
|
||||
requwstRolesAll={props["rolesAll"]}
|
||||
requestGetEncryInfo={props["getEncryInfo"]}
|
||||
onCancel={() => {
|
||||
setAddModalOpen(false);
|
||||
|
|
@ -195,241 +192,4 @@ function List(props) {
|
|||
);
|
||||
}
|
||||
|
||||
function AddModalComponent(props) {
|
||||
const [form] = Form.useForm();
|
||||
const [info, setInfo] = useState({});
|
||||
const { loading: getFileLoading, getFile } = useGetFile();
|
||||
const [isModalOpen, setIsModalOpen] = useState(false);
|
||||
const [viewType, setViewType] = useState(false);
|
||||
const [viewData, setViewData] = useState(false);
|
||||
|
||||
useEffect(() => {
|
||||
if (props.currentId) {
|
||||
const fetchData = async () => {
|
||||
const res = await props.requestDetails({
|
||||
id: props.currentId,
|
||||
});
|
||||
const userImg = (res.data && res.data.userAvatarUrl)
|
||||
? [
|
||||
{
|
||||
filePath: res.data.userAvatarUrl,
|
||||
},
|
||||
]
|
||||
: await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["13"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
const cardImg = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["14"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
res.data.userImg = userImg;
|
||||
res.data.cardImg = cardImg;
|
||||
setInfo(res.data);
|
||||
};
|
||||
fetchData();
|
||||
}
|
||||
}, [props.currentId]);
|
||||
const onCancel = () => {
|
||||
form.resetFields();
|
||||
props.onCancel();
|
||||
};
|
||||
const handleOk = async () => {
|
||||
const values = await form.validateFields();
|
||||
|
||||
const { data } = await props.requestGetEncryInfo({ id: props.currentId, password: values.password });
|
||||
if (data) {
|
||||
if (viewType === "phone") {
|
||||
setViewData(data.phone);
|
||||
}
|
||||
else {
|
||||
setViewData(data.userIdCard);
|
||||
}
|
||||
}
|
||||
};
|
||||
return (
|
||||
<>
|
||||
<Modal
|
||||
maskClosable={false}
|
||||
open={props.open}
|
||||
title="查看"
|
||||
width={1200}
|
||||
cancelText="关闭"
|
||||
okButtonProps={{
|
||||
style: {
|
||||
display: "none",
|
||||
},
|
||||
}}
|
||||
onOk={form.submit}
|
||||
onCancel={onCancel}
|
||||
>
|
||||
<div
|
||||
style={{
|
||||
padding: 20,
|
||||
}}
|
||||
>
|
||||
<Descriptions
|
||||
bordered
|
||||
items={[
|
||||
{
|
||||
label: "人脸照片",
|
||||
children: <PreviewImg files={info.userImg} />,
|
||||
},
|
||||
{
|
||||
label: "身份证照片",
|
||||
children: <PreviewImg files={info.cardImg} />,
|
||||
},
|
||||
// {
|
||||
// label: "用户角色",
|
||||
// children: getLabelName({
|
||||
// status: info.roleId,
|
||||
// list: rolesData,
|
||||
// idKey: "id",
|
||||
// nameKey: "roleName",
|
||||
// }),
|
||||
// },
|
||||
{
|
||||
label: "姓名",
|
||||
children: info.name,
|
||||
},
|
||||
{
|
||||
label: "性别",
|
||||
children: info.sex,
|
||||
},
|
||||
|
||||
{
|
||||
label: "出生年月",
|
||||
children: info.birthday,
|
||||
},
|
||||
{
|
||||
label: "年龄",
|
||||
children: info.age,
|
||||
},
|
||||
{
|
||||
label: "手机号",
|
||||
children: (
|
||||
<div>
|
||||
|
||||
{info.phone}
|
||||
{/* {info.phone */}
|
||||
{/* && ( */}
|
||||
{/* <Button */}
|
||||
{/* type="link" */}
|
||||
{/* onClick={() => { */}
|
||||
{/* setIsModalOpen(true); */}
|
||||
{/* setViewType("phone"); */}
|
||||
{/* setViewData(""); */}
|
||||
{/* form.resetFields(); */}
|
||||
{/* }} */}
|
||||
{/* > */}
|
||||
{/* 点击查看 */}
|
||||
{/* </Button> */}
|
||||
{/* )} */}
|
||||
|
||||
</div>
|
||||
),
|
||||
},
|
||||
{
|
||||
label: "身份证号",
|
||||
children: (
|
||||
<div>
|
||||
{UseDecodeIdCard(info.userIdCard) }
|
||||
{/* { info.userIdCard */}
|
||||
{/* && ( */}
|
||||
{/* <Button */}
|
||||
{/* type="link" */}
|
||||
{/* onClick={() => { */}
|
||||
{/* setIsModalOpen(true); */}
|
||||
{/* setViewType("userIdCard"); */}
|
||||
{/* form.resetFields(); */}
|
||||
{/* setViewData(""); */}
|
||||
{/* }} */}
|
||||
{/* > */}
|
||||
{/* 点击查看 */}
|
||||
{/* </Button> */}
|
||||
{/* )} */}
|
||||
</div>
|
||||
),
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
label: "民族",
|
||||
children: info.nationName,
|
||||
},
|
||||
// {
|
||||
// label: "婚姻状况",
|
||||
// children: info.maritalStatusName,
|
||||
// },
|
||||
{
|
||||
label: "政治面貌",
|
||||
children: info.politicalAffiliationName,
|
||||
},
|
||||
// {
|
||||
// label: "户口所在地",
|
||||
// children: info.locationAddress,
|
||||
// },
|
||||
// {
|
||||
// label: "现住址",
|
||||
// children: info.currentAddress,
|
||||
// },
|
||||
{
|
||||
label: "文化程度",
|
||||
children: info.culturalLevelName,
|
||||
},
|
||||
{
|
||||
label: "岗位名称",
|
||||
children: info.postName,
|
||||
},
|
||||
]}
|
||||
column={2}
|
||||
labelStyle={{
|
||||
width: 200,
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
</Modal>
|
||||
{isModalOpen
|
||||
&& (
|
||||
<Modal
|
||||
maskClosable={false}
|
||||
title="查看"
|
||||
open={isModalOpen}
|
||||
onOk={handleOk}
|
||||
onCancel={() => setIsModalOpen(false)}
|
||||
>
|
||||
<Form
|
||||
name="basic"
|
||||
form={form}
|
||||
>
|
||||
<Form.Item
|
||||
label="请输入登录密码"
|
||||
name="password"
|
||||
hidden={
|
||||
viewData
|
||||
}
|
||||
>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item
|
||||
label="手机号"
|
||||
hidden={!(viewType === "phone" && viewData)}
|
||||
>
|
||||
{viewData}
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label="身份证号"
|
||||
hidden={!(viewType === "userIdCard" && viewData)}
|
||||
>
|
||||
{viewData}
|
||||
</Form.Item>
|
||||
|
||||
</Form>
|
||||
</Modal>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
const AddModal = AddModalComponent;
|
||||
export default Connect([NS_USER], true)(Permission(List));
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||
import { Form, message } from "antd";
|
||||
import { Alert, Form, message } from "antd";
|
||||
import { useEffect, useState } from "react";
|
||||
import FormBuilder from "zy-react-library/components/FormBuilder";
|
||||
import Page from "zy-react-library/components/Page";
|
||||
|
|
@ -14,7 +14,7 @@ import useGetFile from "zy-react-library/hooks/useGetFile";
|
|||
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
|
||||
import useUploadFile from "zy-react-library/hooks/useUploadFile";
|
||||
import nation from "zy-react-library/json/nation.json";
|
||||
import { PHONE } from "zy-react-library/regular";
|
||||
import { PHONE } from "zy-react-library/regular";
|
||||
|
||||
import { getLabelName, idCardGetDateAndGender } from "zy-react-library/utils";
|
||||
import { NS_USER } from "~/enumerate/namespace";
|
||||
|
|
@ -65,6 +65,11 @@ function Add(props) {
|
|||
const [politicalAffiliationData, setPoliticalAffiliationData] = useState([]);
|
||||
const [deleteUserImageFiles, setDeleteUserImageFiles] = useState([]);
|
||||
const [deleteCardImageFiles, setDeleteCardImageFiles] = useState([]);
|
||||
const [deleteSocSecurityImageFiles, setDeleteSocSecurityImageFiles] = useState([]);
|
||||
const [deleteEmpInsuranceImageFiles, setDeleteEmpInsuranceImageFiles] = useState([]);
|
||||
const [deleteInsuranceImageFiles, setDeleteInsuranceImageFiles] = useState([]);
|
||||
const [deleteContractImageFiles, setDeleteContractImageFiles] = useState([]);
|
||||
const [deleteThreeLevelImageFiles, setDeleteThreeLevelImageFiles] = useState([]);
|
||||
const { loading: deleteFileLoading, deleteFile } = useDeleteFile();
|
||||
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
|
||||
const { loading: getFileLoading, getFile } = useGetFile();
|
||||
|
|
@ -93,10 +98,39 @@ function Add(props) {
|
|||
eqType: UPLOAD_FILE_TYPE_ENUM["14"],
|
||||
eqForeignKey: data.userId,
|
||||
});
|
||||
// 15 社保卡照片 10 劳动合同图片 11 商业保险图片 16 工伤保险凭证 19三级教育培训
|
||||
|
||||
const socSecurity = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["15"],
|
||||
eqForeignKey: data.userId,
|
||||
});
|
||||
const empInsurance = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["16"],
|
||||
eqForeignKey: data.userId,
|
||||
});
|
||||
const insurance = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["11"],
|
||||
eqForeignKey: data.userId,
|
||||
});
|
||||
|
||||
const contract = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["10"],
|
||||
eqForeignKey: data.userId,
|
||||
});
|
||||
const threeLevel = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["19"],
|
||||
eqForeignKey: data.userId,
|
||||
});
|
||||
const values = {
|
||||
userImg,
|
||||
cardImg,
|
||||
socSecurity,
|
||||
empInsurance,
|
||||
insurance,
|
||||
contract,
|
||||
threeLevel,
|
||||
...data,
|
||||
|
||||
};
|
||||
form.setFieldsValue({
|
||||
...values,
|
||||
|
|
@ -114,6 +148,28 @@ function Add(props) {
|
|||
single: false,
|
||||
files: deleteCardImageFiles,
|
||||
});
|
||||
await deleteFile({
|
||||
single: false,
|
||||
files: deleteSocSecurityImageFiles,
|
||||
});
|
||||
await deleteFile({
|
||||
single: false,
|
||||
files: deleteEmpInsuranceImageFiles,
|
||||
});
|
||||
|
||||
await deleteFile({
|
||||
single: false,
|
||||
files: deleteInsuranceImageFiles,
|
||||
});
|
||||
await deleteFile({
|
||||
single: false,
|
||||
files: deleteContractImageFiles,
|
||||
});
|
||||
await deleteFile({
|
||||
single: false,
|
||||
files: deleteThreeLevelImageFiles,
|
||||
});
|
||||
|
||||
values.mainCorpFlag = 0;
|
||||
values.userType = 1;
|
||||
values.nationName = getLabelName({
|
||||
|
|
@ -148,11 +204,45 @@ function Add(props) {
|
|||
foreignKey: userID,
|
||||
},
|
||||
});
|
||||
|
||||
await uploadFile({
|
||||
single: false,
|
||||
files: values.cardImg,
|
||||
files: values.socSecurity,
|
||||
params: {
|
||||
type: UPLOAD_FILE_TYPE_ENUM["14"],
|
||||
type: UPLOAD_FILE_TYPE_ENUM["15"],
|
||||
foreignKey: userID || id,
|
||||
},
|
||||
});
|
||||
await uploadFile({
|
||||
single: false,
|
||||
files: values.empInsurance,
|
||||
params: {
|
||||
type: UPLOAD_FILE_TYPE_ENUM["16"],
|
||||
foreignKey: userID || id,
|
||||
},
|
||||
});
|
||||
await uploadFile({
|
||||
single: false,
|
||||
files: values.insurance,
|
||||
params: {
|
||||
type: UPLOAD_FILE_TYPE_ENUM["11"],
|
||||
foreignKey: userID || id,
|
||||
},
|
||||
});
|
||||
|
||||
await uploadFile({
|
||||
single: false,
|
||||
files: values.contract,
|
||||
params: {
|
||||
type: UPLOAD_FILE_TYPE_ENUM["10"],
|
||||
foreignKey: userID || id,
|
||||
},
|
||||
});
|
||||
await uploadFile({
|
||||
single: false,
|
||||
files: values.threeLevel,
|
||||
params: {
|
||||
type: UPLOAD_FILE_TYPE_ENUM["19"],
|
||||
foreignKey: userID || id,
|
||||
},
|
||||
});
|
||||
|
|
@ -302,14 +392,21 @@ function Add(props) {
|
|||
>
|
||||
<FormBuilder
|
||||
form={form}
|
||||
labelCol={{
|
||||
span: 8,
|
||||
}}
|
||||
loading={
|
||||
deleteFileLoading
|
||||
|| uploadFileLoading
|
||||
|| getFileLoading
|
||||
|| props.user.userLoading
|
||||
}
|
||||
values={{ flowFlag: 0 }}
|
||||
values={{ flowFlag: 0, isSocial: 0, isBf: 0, isSpecialJob: 0, isDepaRrtmentHead: 0, isInjuriesPay: 0, ispay: 0, isSignLabor: 0, isLevelThree: 0 }}
|
||||
options={[
|
||||
{
|
||||
label: "基础信息",
|
||||
render: FORM_ITEM_RENDER_ENUM.DIVIDER,
|
||||
},
|
||||
{
|
||||
label: "用户照片",
|
||||
name: "userImg",
|
||||
|
|
@ -497,6 +594,10 @@ function Add(props) {
|
|||
items: WHETHER_ENUM,
|
||||
|
||||
},
|
||||
{
|
||||
label: "社保信息",
|
||||
render: FORM_ITEM_RENDER_ENUM.DIVIDER,
|
||||
},
|
||||
// { name: "deputyLeaderFlag", label: "是否为
|
||||
// 分管领导", required: false, render: FORM_ITEM_RENDER_ENUM.RADIO, items: WHETHER_ENUM },
|
||||
// {
|
||||
|
|
@ -507,156 +608,189 @@ function Add(props) {
|
|||
// hidden: formValues => !(formValues.politicalStatus === "zhonggongdangyuan"),
|
||||
// },
|
||||
// { name: "postId", label: "岗位名称(工种)" },
|
||||
// {
|
||||
// name: "isSocial",
|
||||
// label: "是否缴纳社保",
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// componentProps: {
|
||||
// onChange: () => {
|
||||
// form.setFieldValue("socialNumber", undefined);
|
||||
// form.setFieldValue("socSecurity", undefined);
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// {
|
||||
// name: "socialNumber",
|
||||
// label: "社会保障号码",
|
||||
// dependencies: ["isSocial"],
|
||||
// hidden: formValues => !(formValues.isSocial === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "socSecurity",
|
||||
// label: "社保卡照片",
|
||||
// render: <Upload fileType="image" />,
|
||||
// dependencies: ["isSocial"],
|
||||
// hidden: formValues => !(formValues.isSocial === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "isBf",
|
||||
// label: "是否缴纳保险",
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// },
|
||||
// {
|
||||
// name: "isSignLabor",
|
||||
// label: "是否签订劳动合同",
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// componentProps: {
|
||||
// onChange: () => {
|
||||
// form.setFieldValue("contract", undefined);
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// {
|
||||
// name: "contract",
|
||||
// label: "合同图片",
|
||||
// render: <Upload fileType="image" />,
|
||||
// dependencies: ["isSignLabor"],
|
||||
// hidden: formValues => !(formValues.isSignLabor === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "ispay",
|
||||
// label: "是否缴纳商业保险",
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// componentProps: {
|
||||
// onChange: () => {
|
||||
// form.setFieldValue("ispayNumber", undefined);
|
||||
// form.setFieldValue("insurance", undefined);
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// {
|
||||
// name: "ispayNumber",
|
||||
// label: "商业保险单号",
|
||||
// dependencies: ["ispay"],
|
||||
// hidden: formValues => !(formValues.ispay === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "insurance",
|
||||
// label: "保险图片",
|
||||
// render: <Upload fileType="image" />,
|
||||
// dependencies: ["ispay"],
|
||||
// hidden: formValues => !(formValues.ispay === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "isInjuriesPay",
|
||||
// label: "是否按期缴纳工伤保险",
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// componentProps: {
|
||||
// onChange: () => {
|
||||
// form.setFieldValue("isInjuriesPayTime", undefined);
|
||||
// form.setFieldValue("empInsurance", undefined);
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// {
|
||||
// name: "isInjuriesPayTime",
|
||||
// label: "工伤保险有效期",
|
||||
// dependencies: ["isInjuriesPay"],
|
||||
// render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||
// hidden: formValues => !(formValues.isInjuriesPay === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "empInsurance",
|
||||
// label: "工伤保险凭证",
|
||||
// render: <Upload fileType="image" />,
|
||||
// dependencies: ["isInjuriesPay"],
|
||||
// hidden: formValues => !(formValues.isInjuriesPay === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "isLevelThree",
|
||||
// label: "是否参加三级安全培训",
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// componentProps: {
|
||||
// onChange: () => {
|
||||
// form.setFieldValue("threeLevel", undefined);
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// {
|
||||
// name: "threeLevel",
|
||||
// label: "三级安全培训照片",
|
||||
// render: <Upload fileType="image" />,
|
||||
// dependencies: ["isLevelThree"],
|
||||
// hidden: formValues => !(formValues.isLevelThree === "1"),
|
||||
// },
|
||||
// {
|
||||
// name: "isflow",
|
||||
// label: "是否流动人员",
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// },
|
||||
// {
|
||||
// name: "IS_SPECIAL_JOB",
|
||||
// label: "是否特殊工种",
|
||||
// required: false,
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// // componentProps: { disabled: true },
|
||||
// },
|
||||
// {
|
||||
// name: "IS_DEPARTMENT_HEAD",
|
||||
// label: "是否为部门负责人",
|
||||
// required: false,
|
||||
// render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
// items: WHETHER_ENUM,
|
||||
// // componentProps: { disabled: true },
|
||||
// },
|
||||
// {
|
||||
// name: "alert",
|
||||
// span: 24,
|
||||
// customizeRender: true,
|
||||
// render: () => (<Alert message="新增完成后请提示该用户去相关方app端完善特种证书信息,特种证书完善后用户的'是否特殊工种'将变为'是'" type="error" />),
|
||||
// },
|
||||
{
|
||||
name: "isSocial",
|
||||
label: "是否缴纳社保",
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
componentProps: {
|
||||
onChange: () => {
|
||||
form.setFieldValue("socialNumber", undefined);
|
||||
form.setFieldValue("socSecurity", undefined);
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "isBf",
|
||||
label: "是否缴纳保险",
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
},
|
||||
{
|
||||
name: "socialNumber",
|
||||
label: "社会保障号码",
|
||||
dependencies: ["isSocial"],
|
||||
hidden: formValues => !(formValues.isSocial === 1),
|
||||
},
|
||||
{
|
||||
name: "isSpecialJob",
|
||||
label: "是否特殊工种",
|
||||
required: false,
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
componentProps: { disabled: true },
|
||||
},
|
||||
{
|
||||
name: "socSecurity",
|
||||
label: "社保卡照片",
|
||||
render: (
|
||||
<Upload
|
||||
size={2}
|
||||
fileType="image"
|
||||
onGetRemoveFile={(file) => {
|
||||
setDeleteSocSecurityImageFiles([...deleteSocSecurityImageFiles, file]);
|
||||
}}
|
||||
/>
|
||||
),
|
||||
dependencies: ["isSocial"],
|
||||
hidden: formValues => !(formValues.isSocial === 1),
|
||||
},
|
||||
{
|
||||
name: "isDepaRrtmentHead",
|
||||
label: "是否为部门负责人",
|
||||
required: false,
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
// componentProps: { disabled: true },
|
||||
},
|
||||
{
|
||||
name: "isInjuriesPay",
|
||||
label: "是否按期缴纳工伤保险",
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
componentProps: {
|
||||
onChange: () => {
|
||||
form.setFieldValue("isInjuriesPayTime", undefined);
|
||||
form.setFieldValue("empInsurance", undefined);
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "ispay",
|
||||
label: "是否缴纳商业保险",
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
componentProps: {
|
||||
onChange: () => {
|
||||
form.setFieldValue("ispayNumber", undefined);
|
||||
form.setFieldValue("insurance", undefined);
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "isInjuriesPayTime",
|
||||
label: "工伤保险有效期",
|
||||
dependencies: ["isInjuriesPay"],
|
||||
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||
hidden: formValues => !(formValues.isInjuriesPay === 1),
|
||||
},
|
||||
|
||||
{
|
||||
name: "ispayNumber",
|
||||
label: "商业保险单号",
|
||||
dependencies: ["ispay"],
|
||||
hidden: formValues => !(formValues.ispay === 1),
|
||||
},
|
||||
{
|
||||
name: "empInsurance",
|
||||
label: "工伤保险凭证",
|
||||
render: (
|
||||
<Upload
|
||||
size={4}
|
||||
fileType="image"
|
||||
onGetRemoveFile={(file) => {
|
||||
setDeleteEmpInsuranceImageFiles([...deleteEmpInsuranceImageFiles, file]);
|
||||
}}
|
||||
/>
|
||||
),
|
||||
dependencies: ["isInjuriesPay"],
|
||||
hidden: formValues => !(formValues.isInjuriesPay === 1),
|
||||
},
|
||||
{
|
||||
name: "insurance",
|
||||
label: "保险图片",
|
||||
render: (
|
||||
<Upload
|
||||
size={4}
|
||||
fileType="image"
|
||||
onGetRemoveFile={(file) => {
|
||||
setDeleteInsuranceImageFiles([...deleteInsuranceImageFiles, file]);
|
||||
}}
|
||||
/>
|
||||
),
|
||||
dependencies: ["ispay"],
|
||||
hidden: formValues => !(formValues.ispay === 1),
|
||||
},
|
||||
{
|
||||
name: "isSignLabor",
|
||||
label: "是否签订劳动合同",
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
componentProps: {
|
||||
onChange: () => {
|
||||
form.setFieldValue("contract", undefined);
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "isLevelThree",
|
||||
label: "是否参加三级安全培训",
|
||||
render: FORM_ITEM_RENDER_ENUM.RADIO,
|
||||
items: WHETHER_ENUM,
|
||||
componentProps: {
|
||||
onChange: () => {
|
||||
form.setFieldValue("threeLevel", undefined);
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "contract",
|
||||
label: "合同图片",
|
||||
render: (
|
||||
<Upload
|
||||
size={4}
|
||||
fileType="image"
|
||||
onGetRemoveFile={(file) => {
|
||||
setDeleteContractImageFiles([...deleteContractImageFiles, file]);
|
||||
}}
|
||||
/>
|
||||
),
|
||||
dependencies: ["isSignLabor"],
|
||||
hidden: formValues => !(formValues.isSignLabor === 1),
|
||||
},
|
||||
|
||||
{
|
||||
name: "threeLevel",
|
||||
label: "三级安全培训照片",
|
||||
render: (
|
||||
<Upload
|
||||
size={4}
|
||||
fileType="image"
|
||||
onGetRemoveFile={(file) => {
|
||||
setDeleteThreeLevelImageFiles([...deleteThreeLevelImageFiles, file]);
|
||||
}}
|
||||
/>
|
||||
),
|
||||
dependencies: ["isLevelThree"],
|
||||
hidden: formValues => !(formValues.isLevelThree === 1),
|
||||
},
|
||||
|
||||
]}
|
||||
onFinish={onSubmit}
|
||||
onValuesChange={onValuesChange}
|
||||
/>
|
||||
<Alert style={{ height: 40, marginBottom: 40, color: "#f56c6c" }} message="新增完成后请提示该用户去相关方app端完善特种证书信息,特种证书完善后用户的'是否特殊工种'将变为'是'" type="error" />
|
||||
|
||||
</Page>
|
||||
</>
|
||||
);
|
||||
|
|
|
|||
|
|
@ -1,19 +1,16 @@
|
|||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||
import { Button, Descriptions, Form, Input, message, Modal, Space } from "antd";
|
||||
import { useEffect, useState } from "react";
|
||||
import { Button, Form, message, Modal, Space } from "antd";
|
||||
import { useState } from "react";
|
||||
import AddIcon from "zy-react-library/components/Icon/AddIcon";
|
||||
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
|
||||
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||
// import DictionarySelect from "zy-react-library/components/SelectTree/Dictionary";
|
||||
import Search from "zy-react-library/components/Search";
|
||||
import Table from "zy-react-library/components/Table";
|
||||
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
||||
import useGetFile from "zy-react-library/hooks/useGetFile";
|
||||
|
||||
import useTable from "zy-react-library/hooks/useTable";
|
||||
import XgfUserInfo from "~/components/XgfUserInfo";
|
||||
import { NS_USER } from "~/enumerate/namespace";
|
||||
import { UseDecodeIdCard } from "~/utils";
|
||||
|
||||
const JOB_STATUS = {
|
||||
1: "在职",
|
||||
|
|
@ -289,7 +286,7 @@ function List(props) {
|
|||
</div>
|
||||
</div>
|
||||
{addModalOpen && (
|
||||
<AddModal
|
||||
<XgfUserInfo
|
||||
open={addModalOpen}
|
||||
getData={getData}
|
||||
currentId={currentId}
|
||||
|
|
@ -297,6 +294,8 @@ function List(props) {
|
|||
requestGetEncryInfo={props["getEncryInfo"]}
|
||||
requestReviewStatus={props["reviewStatus"]}
|
||||
modalType={modalType}
|
||||
showEmail
|
||||
userPhotoLabel="用户照片"
|
||||
onCancel={() => {
|
||||
setAddModalOpen(false);
|
||||
setCurrentId("");
|
||||
|
|
@ -306,291 +305,4 @@ function List(props) {
|
|||
</div>
|
||||
);
|
||||
}
|
||||
function AddModalComponent(props) {
|
||||
const [form] = Form.useForm();
|
||||
const [info, setInfo] = useState({});
|
||||
const { loading: getFileLoading, getFile } = useGetFile();
|
||||
|
||||
const [isModalOpen, setIsModalOpen] = useState(false);
|
||||
const [viewType, setViewType] = useState(false);
|
||||
const [viewData, setViewData] = useState(false);
|
||||
useEffect(() => {
|
||||
if (props.currentId) {
|
||||
const fetchData = async () => {
|
||||
const res = await props.requestDetails({
|
||||
id: props.currentId,
|
||||
});
|
||||
const userImg = (res.data && res.data.userAvatarUrl)
|
||||
? [
|
||||
{
|
||||
filePath: res.data.userAvatarUrl,
|
||||
},
|
||||
]
|
||||
: await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["13"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
const cardImg = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["14"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
res.data.userImg = userImg;
|
||||
res.data.cardImg = cardImg;
|
||||
setInfo(res.data);
|
||||
};
|
||||
fetchData();
|
||||
}
|
||||
}, [props.currentId]);
|
||||
const onCancel = () => {
|
||||
form.resetFields();
|
||||
props.onCancel();
|
||||
};
|
||||
const handleOk = async () => {
|
||||
const values = await form.validateFields();
|
||||
|
||||
const { data } = await props.requestGetEncryInfo({ id: props.currentId, password: values.password });
|
||||
if (data) {
|
||||
if (viewType === "phone") {
|
||||
setViewData(data.phone);
|
||||
}
|
||||
else {
|
||||
setViewData(data.userIdCard);
|
||||
}
|
||||
}
|
||||
};
|
||||
const handleReject = () => {
|
||||
Modal.confirm({
|
||||
title: "提示",
|
||||
content: "确定驳回吗?",
|
||||
onOk: () => {
|
||||
props.requestReviewStatus({
|
||||
corpinfoId: info.corpinfoId,
|
||||
employmentFlag: info.employmentFlag,
|
||||
reviewStatus: 3,
|
||||
userId: info.id,
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
message.success("驳回成功");
|
||||
props.getData();
|
||||
props.onCancel();
|
||||
}
|
||||
});
|
||||
},
|
||||
});
|
||||
};
|
||||
const handlePass = () => {
|
||||
Modal.confirm({
|
||||
title: "提示",
|
||||
content: "确定审核通过吗?",
|
||||
onOk: () => {
|
||||
props.requestReviewStatus({
|
||||
corpinfoId: info.corpinfoId,
|
||||
employmentFlag: info.employmentFlag,
|
||||
reviewStatus: 2,
|
||||
userId: info.id,
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
message.success("审核成功");
|
||||
props.getData();
|
||||
props.onCancel();
|
||||
}
|
||||
});
|
||||
},
|
||||
});
|
||||
};
|
||||
return (
|
||||
<>
|
||||
<Modal
|
||||
maskClosable={false}
|
||||
open={props.open}
|
||||
title={props.modalType === "see" ? "查看" : "审核"}
|
||||
width={1200}
|
||||
okButtonProps={{
|
||||
style: {
|
||||
display: "none",
|
||||
},
|
||||
}}
|
||||
onOk={form.submit}
|
||||
onCancel={onCancel}
|
||||
confirmLoading={getFileLoading}
|
||||
footer={[
|
||||
<Button key="return" onClick={onCancel}>
|
||||
关闭
|
||||
</Button>,
|
||||
<Button key="reject" onClick={handleReject} hidden={props.modalType === "see"}>
|
||||
驳回
|
||||
</Button>,
|
||||
<Button key="pass" type="primary" onClick={handlePass} hidden={props.modalType === "see"}>
|
||||
审核通过
|
||||
</Button>,
|
||||
|
||||
]}
|
||||
>
|
||||
<div
|
||||
style={{
|
||||
padding: 20,
|
||||
}}
|
||||
>
|
||||
<Descriptions
|
||||
|
||||
bordered
|
||||
items={[
|
||||
{
|
||||
label: "用户照片",
|
||||
children: <PreviewImg files={info.userImg} />,
|
||||
},
|
||||
{
|
||||
label: "身份证照片",
|
||||
children: <PreviewImg files={info.cardImg} />,
|
||||
},
|
||||
{
|
||||
label: "姓名",
|
||||
children: info.name,
|
||||
},
|
||||
{
|
||||
label: "性别",
|
||||
children: info.sex,
|
||||
|
||||
},
|
||||
{
|
||||
label: "出生年月",
|
||||
children: info.birthday,
|
||||
},
|
||||
{
|
||||
label: "年龄",
|
||||
children: info.age,
|
||||
},
|
||||
{
|
||||
label: "手机号",
|
||||
children: (
|
||||
<div>
|
||||
|
||||
{info.phone}
|
||||
{/* {info.phone */}
|
||||
{/* && ( */}
|
||||
{/* <Button */}
|
||||
{/* type="link" */}
|
||||
{/* onClick={() => { */}
|
||||
{/* setIsModalOpen(true); */}
|
||||
{/* setViewType("phone"); */}
|
||||
{/* setViewData(""); */}
|
||||
{/* form.resetFields(); */}
|
||||
{/* }} */}
|
||||
{/* > */}
|
||||
{/* 点击查看 */}
|
||||
{/* </Button> */}
|
||||
{/* )} */}
|
||||
|
||||
</div>
|
||||
),
|
||||
},
|
||||
{
|
||||
label: "身份证号",
|
||||
children: (
|
||||
<div>
|
||||
{UseDecodeIdCard(info.userIdCard) }
|
||||
{/* { info.userIdCard */}
|
||||
{/* && ( */}
|
||||
{/* <Button */}
|
||||
{/* type="link" */}
|
||||
{/* onClick={() => { */}
|
||||
{/* setIsModalOpen(true); */}
|
||||
{/* setViewType("userIdCard"); */}
|
||||
{/* form.resetFields(); */}
|
||||
{/* setViewData(""); */}
|
||||
{/* }} */}
|
||||
{/* > */}
|
||||
{/* 点击查看 */}
|
||||
{/* </Button> */}
|
||||
{/* )} */}
|
||||
</div>
|
||||
),
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
label: "电子邮箱",
|
||||
children: info.email,
|
||||
},
|
||||
{
|
||||
label: "民族",
|
||||
children: info.nationName,
|
||||
},
|
||||
// {
|
||||
// label: "婚姻状况",
|
||||
// children: info.maritalStatusName,
|
||||
// },
|
||||
{
|
||||
label: "政治面貌",
|
||||
children: info.politicalAffiliationName,
|
||||
},
|
||||
// {
|
||||
// label: "户口所在地",
|
||||
// children: info.locationAddress,
|
||||
// },
|
||||
// {
|
||||
// label: "现住址",
|
||||
// children: info.currentAddress,
|
||||
// },
|
||||
{
|
||||
label: "文化程度",
|
||||
children: info.culturalLevelName,
|
||||
},
|
||||
|
||||
{
|
||||
label: "岗位名称",
|
||||
children: info.postName,
|
||||
},
|
||||
]}
|
||||
column={2}
|
||||
labelStyle={{
|
||||
width: 200,
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
</Modal>
|
||||
{isModalOpen
|
||||
&& (
|
||||
<Modal
|
||||
maskClosable={false}
|
||||
title="查看"
|
||||
open={isModalOpen}
|
||||
onOk={handleOk}
|
||||
onCancel={() => setIsModalOpen(false)}
|
||||
|
||||
>
|
||||
<Form
|
||||
name="basic"
|
||||
form={form}
|
||||
>
|
||||
<Form.Item
|
||||
label="请输入登录密码"
|
||||
name="password"
|
||||
hidden={
|
||||
viewData
|
||||
}
|
||||
>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item
|
||||
label="手机号"
|
||||
hidden={!(viewType === "phone" && viewData)}
|
||||
>
|
||||
{viewData}
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label="身份证号"
|
||||
hidden={!(viewType === "userIdCard" && viewData)}
|
||||
>
|
||||
{viewData}
|
||||
</Form.Item>
|
||||
|
||||
</Form>
|
||||
</Modal>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
const AddModal = AddModalComponent;
|
||||
export default Connect([NS_USER], true)(Permission(List));
|
||||
|
|
|
|||
|
|
@ -498,6 +498,7 @@ function AddModalComponent(props) {
|
|||
{
|
||||
name: "code",
|
||||
label: "统一社会信用代码",
|
||||
required: false,
|
||||
rules: [
|
||||
{
|
||||
pattern: UNIFIED_SOCIAL_CREDIT_CODE,
|
||||
|
|
|
|||
|
|
@ -1,21 +1,18 @@
|
|||
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
|
||||
import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||
import { Button, Descriptions, Form, Input, message, Modal, Space } from "antd";
|
||||
import { Button, Form, message, Modal, Space } from "antd";
|
||||
import { useEffect, useState } from "react";
|
||||
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
|
||||
import Page from "zy-react-library/components/Page";
|
||||
|
||||
import PreviewImg from "zy-react-library/components/PreviewImg";
|
||||
import Search from "zy-react-library/components/Search";
|
||||
import Table from "zy-react-library/components/Table";
|
||||
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
|
||||
|
||||
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
||||
import useGetFile from "zy-react-library/hooks/useGetFile";
|
||||
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
|
||||
import useTable from "zy-react-library/hooks/useTable";
|
||||
import XgfUserInfo from "~/components/XgfUserInfo";
|
||||
import { NS_USER } from "~/enumerate/namespace";
|
||||
import { UseDecodeIdCard } from "~/utils";
|
||||
|
||||
function List(props) {
|
||||
const [selectedNodeId, setSelectedNodeId] = useState();
|
||||
|
|
@ -179,7 +176,7 @@ function List(props) {
|
|||
</div>
|
||||
</div>
|
||||
{addModalOpen && (
|
||||
<AddModal
|
||||
<XgfUserInfo
|
||||
open={addModalOpen}
|
||||
getData={getData}
|
||||
currentId={currentId}
|
||||
|
|
@ -196,245 +193,4 @@ function List(props) {
|
|||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
function AddModalComponent(props) {
|
||||
const [form] = Form.useForm();
|
||||
const [info, setInfo] = useState({});
|
||||
const { loading: getFileLoading, getFile } = useGetFile();
|
||||
const [isModalOpen, setIsModalOpen] = useState(false);
|
||||
const [viewType, setViewType] = useState(false);
|
||||
const [viewData, setViewData] = useState(false);
|
||||
|
||||
useEffect(() => {
|
||||
if (props.currentId) {
|
||||
const fetchData = async () => {
|
||||
const res = await props.requestDetails({
|
||||
id: props.currentId,
|
||||
});
|
||||
|
||||
const userImg = (res.data && res.data.userAvatarUrl)
|
||||
? [
|
||||
{
|
||||
filePath: res.data.userAvatarUrl,
|
||||
},
|
||||
]
|
||||
: await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["13"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
|
||||
const cardImg = await getFile({
|
||||
eqType: UPLOAD_FILE_TYPE_ENUM["14"],
|
||||
eqForeignKey: res.data.userId,
|
||||
});
|
||||
res.data.userImg = userImg;
|
||||
res.data.cardImg = cardImg;
|
||||
|
||||
setInfo(res.data);
|
||||
};
|
||||
fetchData();
|
||||
}
|
||||
}, [props.currentId]);
|
||||
const onCancel = () => {
|
||||
form.resetFields();
|
||||
props.onCancel();
|
||||
};
|
||||
const handleOk = async () => {
|
||||
const values = await form.validateFields();
|
||||
|
||||
const { data } = await props.requestGetEncryInfo({ id: props.currentId, password: values.password });
|
||||
if (data) {
|
||||
if (viewType === "phone") {
|
||||
setViewData(data.phone);
|
||||
}
|
||||
else {
|
||||
setViewData(data.userIdCard);
|
||||
}
|
||||
}
|
||||
};
|
||||
return (
|
||||
<>
|
||||
<Modal
|
||||
maskClosable={false}
|
||||
open={props.open}
|
||||
title="查看"
|
||||
cancelText="关闭"
|
||||
width={1200}
|
||||
okButtonProps={{
|
||||
style: {
|
||||
display: "none",
|
||||
},
|
||||
}}
|
||||
onOk={form.submit}
|
||||
onCancel={onCancel}
|
||||
>
|
||||
<div
|
||||
style={{
|
||||
padding: 20,
|
||||
}}
|
||||
>
|
||||
<Descriptions
|
||||
bordered
|
||||
items={[
|
||||
{
|
||||
label: "人脸照片",
|
||||
children: <PreviewImg files={info.userImg} />,
|
||||
},
|
||||
{
|
||||
label: "身份证照片",
|
||||
children: <PreviewImg files={info.cardImg} />,
|
||||
},
|
||||
// {
|
||||
// label: "用户角色",
|
||||
// children: getLabelName({
|
||||
// status: info.roleId,
|
||||
// list: rolesData,
|
||||
// idKey: "id",
|
||||
// nameKey: "roleName",
|
||||
// }),
|
||||
// },
|
||||
{
|
||||
label: "姓名",
|
||||
children: info.name,
|
||||
},
|
||||
{
|
||||
label: "性别",
|
||||
children: info.sex,
|
||||
},
|
||||
|
||||
{
|
||||
label: "出生年月",
|
||||
children: info.birthday,
|
||||
},
|
||||
{
|
||||
label: "年龄",
|
||||
children: info.age,
|
||||
},
|
||||
{
|
||||
label: "手机号",
|
||||
children: (
|
||||
<div>
|
||||
|
||||
{info.phone}
|
||||
{/* {info.phone */}
|
||||
{/* && ( */}
|
||||
{/* <Button */}
|
||||
{/* type="link" */}
|
||||
{/* onClick={() => { */}
|
||||
{/* setIsModalOpen(true); */}
|
||||
{/* setViewType("phone"); */}
|
||||
{/* setViewData(""); */}
|
||||
{/* form.resetFields(); */}
|
||||
{/* }} */}
|
||||
{/* > */}
|
||||
{/* 点击查看 */}
|
||||
{/* </Button> */}
|
||||
{/* )} */}
|
||||
|
||||
</div>
|
||||
),
|
||||
},
|
||||
{
|
||||
label: "身份证号",
|
||||
children: (
|
||||
<div>
|
||||
{UseDecodeIdCard(info.userIdCard) }
|
||||
{/* { info.userIdCard */}
|
||||
{/* && ( */}
|
||||
{/* <Button */}
|
||||
{/* type="link" */}
|
||||
{/* onClick={() => { */}
|
||||
{/* setIsModalOpen(true); */}
|
||||
{/* setViewType("userIdCard"); */}
|
||||
{/* form.resetFields(); */}
|
||||
{/* setViewData(""); */}
|
||||
{/* }} */}
|
||||
{/* > */}
|
||||
{/* 点击查看 */}
|
||||
{/* </Button> */}
|
||||
{/* )} */}
|
||||
</div>
|
||||
),
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
label: "民族",
|
||||
children: info.nationName,
|
||||
},
|
||||
// {
|
||||
// label: "婚姻状况",
|
||||
// children: info.maritalStatusName,
|
||||
// },
|
||||
{
|
||||
label: "政治面貌",
|
||||
children: info.politicalAffiliationName,
|
||||
},
|
||||
// {
|
||||
// label: "户口所在地",
|
||||
// children: info.locationAddress,
|
||||
// },
|
||||
// {
|
||||
// label: "现住址",
|
||||
// children: info.currentAddress,
|
||||
// },
|
||||
{
|
||||
label: "文化程度",
|
||||
children: info.culturalLevelName,
|
||||
},
|
||||
{
|
||||
label: "岗位名称",
|
||||
children: info.postName,
|
||||
},
|
||||
]}
|
||||
column={2}
|
||||
labelStyle={{
|
||||
width: 200,
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
</Modal>
|
||||
{isModalOpen
|
||||
&& (
|
||||
<Modal
|
||||
maskClosable={false}
|
||||
title="查看"
|
||||
open={isModalOpen}
|
||||
onOk={handleOk}
|
||||
onCancel={() => setIsModalOpen(false)}
|
||||
>
|
||||
<Form
|
||||
name="basic"
|
||||
form={form}
|
||||
>
|
||||
<Form.Item
|
||||
label="请输入登录密码"
|
||||
name="password"
|
||||
hidden={
|
||||
viewData
|
||||
}
|
||||
>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item
|
||||
label="手机号"
|
||||
hidden={!(viewType === "phone" && viewData)}
|
||||
>
|
||||
{viewData}
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label="身份证号"
|
||||
hidden={!(viewType === "userIdCard" && viewData)}
|
||||
>
|
||||
{viewData}
|
||||
</Form.Item>
|
||||
|
||||
</Form>
|
||||
</Modal>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
const AddModal = AddModalComponent;
|
||||
export default Connect([NS_USER], true)(Permission(List));
|
||||
|
|
|
|||
Loading…
Reference in New Issue