Compare commits

...

2 Commits

Author SHA1 Message Date
853931625@qq.com 63c936d8af 优化提交 等按钮 2025-12-31 14:39:30 +08:00
853931625@qq.com 6b71586dce 修改全部页面样式 2025-12-30 10:58:26 +08:00
46 changed files with 1335 additions and 1331 deletions

View File

@ -32,7 +32,7 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"relation-graph": "^2.2.11",
"zy-react-library": "^1.0.153"
"zy-react-library": "^1.1.10"
},
"devDependencies": {
"@antfu/eslint-config": "^5.4.1",

View File

@ -6,6 +6,7 @@ import "dayjs/locale/zh-cn";
import "../blessed_by_buddha";
require("antd/dist/reset.css");
require("zy-react-library/css/common.less");
dayjs.locale("zh-cn");
setJJBCommonAntdMessage(message);

View File

@ -67,7 +67,7 @@ function Department(props) {
onFinish={getData}
/>
<Table
loading={props.businessLicense.corpQualificationLoading}
loding={props.businessLicense.corpQualificationLoading}
toolBarRender={() => (
<>
<Button
@ -184,7 +184,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={props.loding}
confirmLoading={props.loding}
onOk={form.submit}
onCancel={onCancel}
>

View File

@ -1,8 +1,9 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, Form, Input, Modal } from "antd";
import { useEffect, useState } from "react";
import Page from "zy-react-library/components/Page";
import PreviewImg from "zy-react-library/components/PreviewImg";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
@ -47,251 +48,248 @@ function Info(props) {
}
};
return (
<div
style={{
padding: 20,
}}
>
<Divider orientation="left">基本信息</Divider>
<Descriptions
bordered
items={[
{
label: "企业名称",
children: info.corpName && info.corpName,
},
{
label: "统一社会信用代码",
children: info.code,
},
<div>
<Page isShowAllAction={false}>
<Divider orientation="left">基本信息</Divider>
<Descriptions
bordered
items={[
{
label: "企业名称",
children: info.corpName && info.corpName,
},
{
label: "统一社会信用代码",
children: info.code,
},
{
label: "所属区域",
children: <div>{getAreaNamePath(info)}</div>,
},
{
label: "邮政编码",
children: info.postalCode,
},
{
label: "成立时间",
children: info.createDate,
},
{
label: "企业状态",
children: info.corpStateName,
},
{
label: "规模",
children: info.scaleName,
},
{
label: "所属区域",
children: <div>{getAreaNamePath(info)}</div>,
},
{
label: "邮政编码",
children: info.postalCode,
},
{
label: "成立时间",
children: info.createDate,
},
{
label: "企业状态",
children: info.corpStateName,
},
{
label: "规模",
children: info.scaleName,
},
{
label: "经度/纬度",
children: info.longitude && `${info.longitude}/${info.latitude}`,
},
{
label: "职工人数(人)",
children: info.employees,
},
{
label: "占地面积(㎡)",
children: info.areaCovered,
},
{
label: "注册资金(万元)",
children: info.regcapital,
},
{
label: "资产总额(万元)",
children: info.totalAssets,
},
//
// {
// label: "经济类型",
// children: info.ecoTypeName,
// },
{
label: "所属行业",
children: <div>{getCorpTypeNamePath(info)}</div>,
},
{
label: "法定代表人",
children: info.lrName,
},
{
label: "法定代表人手机号",
children: (
<div>
{
label: "经度/纬度",
children: info.longitude && `${info.longitude}/${info.latitude}`,
},
{
label: "职工人数(人)",
children: info.employees,
},
{
label: "占地面积(㎡)",
children: info.areaCovered,
},
{
label: "注册资金(万元)",
children: info.regcapital,
},
{
label: "资产总额(万元)",
children: info.totalAssets,
},
//
// {
// label: "经济类型",
// children: info.ecoTypeName,
// },
{
label: "所属行业",
children: <div>{getCorpTypeNamePath(info)}</div>,
},
{
label: "法定代表人",
children: info.lrName,
},
{
label: "法定代表人手机号",
children: (
<div>
{info.lrMobile }
{/* { (info.lrMobile && info.lrMobile.label) */}
{/* && ( */}
{/* <Button */}
{/* type="link" */}
{/* onClick={() => { */}
{/* setIsModalOpen(true); */}
{/* setViewType("lrMobile"); */}
{/* setViewData(""); */}
{/* setEncrypted(info.lrMobile); */}
{/* form.resetFields(); */}
{/* }} */}
{/* > */}
{/* 点击查看 */}
{/* </Button> */}
{/* )} */}
{info.lrMobile }
{/* { (info.lrMobile && info.lrMobile.label) */}
{/* && ( */}
{/* <Button */}
{/* type="link" */}
{/* onClick={() => { */}
{/* setIsModalOpen(true); */}
{/* setViewType("lrMobile"); */}
{/* setViewData(""); */}
{/* setEncrypted(info.lrMobile); */}
{/* form.resetFields(); */}
{/* }} */}
{/* > */}
{/* 点击查看 */}
{/* </Button> */}
{/* )} */}
</div>
),
},
{
label: "主要负责人",
children: info.contacts,
},
{
label: "主要负责人手机号",
children: (
<div>
</div>
),
},
{
label: "主要负责人",
children: info.contacts,
},
{
label: "主要负责人手机号",
children: (
<div>
{ info.contactsPhone }
{/* { (info.contactsPhone && info.contactsPhone.label) */}
{/* && ( */}
{/* <Button */}
{/* type="link" */}
{/* onClick={() => { */}
{/* setIsModalOpen(true); */}
{/* setViewType("contactsPhone"); */}
{/* setViewData(""); */}
{/* setEncrypted(info.contactsPhone); */}
{/* form.resetFields(); */}
{/* }} */}
{/* > */}
{/* 点击查看 */}
{/* </Button> */}
{/* )} */}
{ info.contactsPhone }
{/* { (info.contactsPhone && info.contactsPhone.label) */}
{/* && ( */}
{/* <Button */}
{/* type="link" */}
{/* onClick={() => { */}
{/* setIsModalOpen(true); */}
{/* setViewType("contactsPhone"); */}
{/* setViewData(""); */}
{/* setEncrypted(info.contactsPhone); */}
{/* form.resetFields(); */}
{/* }} */}
{/* > */}
{/* 点击查看 */}
{/* </Button> */}
{/* )} */}
</div>
),
</div>
),
},
{
label: "安全负责人",
children: info.safetyName,
},
{
label: "安全负责人手机号",
children: (
<div>
{info.lrMobile && info.lrMobile.label}
{info.safetyPhone }
{/* { (info.safetyPhone && info.safetyPhone.label) */}
{/* && ( */}
{/* <Button */}
{/* type="link" */}
{/* onClick={() => { */}
{/* setIsModalOpen(true); */}
{/* setViewType("safetyPhone"); */}
{/* setViewData(""); */}
{/* setEncrypted(info.safetyPhone); */}
{/* form.resetFields(); */}
{/* }} */}
{/* > */}
{/* 点击查看 */}
{/* </Button> */}
{/* )} */}
},
{
label: "安全负责人",
children: info.safetyName,
},
{
label: "安全负责人手机号",
children: (
<div>
{info.lrMobile && info.lrMobile.label}
{info.safetyPhone }
{/* { (info.safetyPhone && info.safetyPhone.label) */}
{/* && ( */}
{/* <Button */}
{/* type="link" */}
{/* onClick={() => { */}
{/* setIsModalOpen(true); */}
{/* setViewType("safetyPhone"); */}
{/* setViewData(""); */}
{/* setEncrypted(info.safetyPhone); */}
{/* form.resetFields(); */}
{/* }} */}
{/* > */}
{/* 点击查看 */}
{/* </Button> */}
{/* )} */}
</div>
),
},
{
label: "是否规模以上",
children: (
<div>
{info.scaleType === 1
? "是"
: info.scaleType === 0
? "否"
: ""}
</div>
),
},
{
label: "企事业单位经营地址",
children: info.addressBusiness,
},
{
label: "营业执照",
children: <PreviewImg files={info.licenseFile} />,
},
{
label: "营业执照有效期",
children: info.licenseStart ? ` ${info.licenseStart}${info.licenseEnd}` : "",
},
]}
column={2}
loading={getFileLoading}
labelStyle={{
width: 200,
}}
/>
{/* <Divider orientation="left">企业相关属性</Divider> */}
{/* <Descriptions */}
{/* labelStyle={{ width: 200 }} */}
{/* column={2} */}
{/* bordered */}
{/* items={[ */}
{/* { label: "有无职业卫生信息", children: <span>{info.whetherHygieneFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无重大危险源", children: <span>{info.whetherHazardsFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否有稀缺大型应急物资和设施", children: <span>{info.whetherScarceFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无涉及危化品", children: <span>{info.whetherChemicalsFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无特种设备", children: <span>{info.whetherSpecialequipmentFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无特种工作人员", children: <span>{info.whetherSpecialpeopleFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及煤气", children: <span>{info.whetherCoalgasFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否属于消防重点单位", children: <span>{info.whetherFireFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否在有限空间作业", children: <span>{info.whetherConfinedFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否存在涉爆粉尘作业", children: <span>{info.whetherPowderFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及防雷防静电", children: <span>{info.whetherLightningFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否持有放射源", children: <span>{info.whetherActinogenFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及液氨制冷", children: <span>{info.whetherLiquidammoniaFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及危险品管道", children: <span>{info.whetherPipelineFlag === 1 ? "是" : "否"}</span> }, */}
{/* ]} */}
{/* /> */}
<div
style={{
marginTop: 10,
textAlign: "center",
}}
>
{props.permission("qyxx-edit")
</div>
),
},
{
label: "是否规模以上",
children: (
<div>
{info.scaleType === 1
? "是"
: info.scaleType === 0
? "否"
: ""}
</div>
),
},
{
label: "企事业单位经营地址",
children: info.addressBusiness,
},
{
label: "营业执照",
children: <PreviewImg files={info.licenseFile} />,
},
{
label: "营业执照有效期",
children: info.licenseStart ? ` ${info.licenseStart}${info.licenseEnd}` : "",
},
]}
column={2}
loding={getFileLoading}
labelStyle={{
width: 200,
}}
/>
{/* <Divider orientation="left">企业相关属性</Divider> */}
{/* <Descriptions */}
{/* labelStyle={{ width: 200 }} */}
{/* column={2} */}
{/* bordered */}
{/* items={[ */}
{/* { label: "有无职业卫生信息", children: <span>{info.whetherHygieneFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无重大危险源", children: <span>{info.whetherHazardsFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否有稀缺大型应急物资和设施", children: <span>{info.whetherScarceFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无涉及危化品", children: <span>{info.whetherChemicalsFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无特种设备", children: <span>{info.whetherSpecialequipmentFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "有无特种工作人员", children: <span>{info.whetherSpecialpeopleFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及煤气", children: <span>{info.whetherCoalgasFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否属于消防重点单位", children: <span>{info.whetherFireFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否在有限空间作业", children: <span>{info.whetherConfinedFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否存在涉爆粉尘作业", children: <span>{info.whetherPowderFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及防雷防静电", children: <span>{info.whetherLightningFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否持有放射源", children: <span>{info.whetherActinogenFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及液氨制冷", children: <span>{info.whetherLiquidammoniaFlag === 1 ? "是" : "否"}</span> }, */}
{/* { label: "是否涉及危险品管道", children: <span>{info.whetherPipelineFlag === 1 ? "是" : "否"}</span> }, */}
{/* ]} */}
{/* /> */}
<div
style={{
marginTop: 10,
textAlign: "center",
}}
>
{props.permission("qyxx-edit")
&& (
<Button
type="primary"
onClick={() => {
props.history.push(`./update?id=${info.id}`);
}}
>
编辑
</Button>
)}
</div>
{isModalOpen
&& (
<Button
type="primary"
onClick={() => {
props.history.push(`./update?id=${info.id}`);
}}
<Modal
title="查看"
open={isModalOpen}
onOk={handleOk}
onCancel={() => setIsModalOpen(false)}
>
编辑
</Button>
)}
</div>
{isModalOpen
&& (
<Modal
title="查看"
open={isModalOpen}
onOk={handleOk}
onCancel={() => setIsModalOpen(false)}
>
<Form
name="basic"
form={form}
>
<Form.Item
label="请输入登录密码"
name="password"
hidden={
viewData
}
<Form
name="basic"
form={form}
>
<Form.Item
label="请输入登录密码"
name="password"
hidden={
viewData
}
// rules={[
// {
// required: true,
@ -318,32 +316,33 @@ function Info(props) {
// },
// },
// ]}
>
<Input />
</Form.Item>
>
<Input />
</Form.Item>
<Form.Item
label="主要负责人手机号码"
hidden={!(viewType === "contactsPhone" && viewData)}
>
{viewData}
</Form.Item>
<Form.Item
label="法定代表人手机号码"
hidden={!(viewType === "lrMobile" && viewData)}
>
{viewData}
</Form.Item>
<Form.Item
label="安全负责人手机号码"
hidden={!(viewType === "safetyPhone" && viewData)}
>
{viewData}
</Form.Item>
<Form.Item
label="主要负责人手机号码"
hidden={!(viewType === "contactsPhone" && viewData)}
>
{viewData}
</Form.Item>
<Form.Item
label="法定代表人手机号码"
hidden={!(viewType === "lrMobile" && viewData)}
>
{viewData}
</Form.Item>
<Form.Item
label="安全负责人手机号码"
hidden={!(viewType === "safetyPhone" && viewData)}
>
{viewData}
</Form.Item>
</Form>
</Modal>
)}
</Form>
</Modal>
)}
</Page>
</div>
);
}

View File

@ -2,14 +2,13 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form, message } from "antd";
import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Map from "zy-react-library/components/Map";
import Page from "zy-react-library/components/Page";
import AreaSelect from "zy-react-library/components/SelectTree/Area";
import DictionarySelect from "zy-react-library/components/SelectTree/Dictionary";
import IndustrySelect from "zy-react-library/components/SelectTree/Industry";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useDeleteFile from "zy-react-library/hooks/useDeleteFile";
import useGetFile from "zy-react-library/hooks/useGetFile";
@ -256,249 +255,246 @@ function Update(props) {
}
return (
<>
<HeaderBack title="编辑" />
<div
style={{
padding: 20,
}}
>
<FormBuilder
form={form}
values={{
scaleType: 0,
whetherHygieneFlag: 0,
whetherHazardsFlag: 0,
whetherScarceFlag: 0,
whetherChemicalsFlag: 0,
whetherSpecialequipmentFlag: 0,
whetherSpecialpeopleFlag: 0,
whetherCoalgasFlag: 0,
whetherFireFlag: 0,
whetherConfinedFlag: 0,
whetherPowderFlag: 0,
whetherLightningFlag: 0,
whetherActinogenFlag: 0,
whetherLiquidammoniaFlag: 0,
whetherPipelineFlag: 0,
}}
loading={
deleteFileLoading
|| uploadFileLoading
|| getFileLoading
|| props.enterprise.enterpriseLoading
}
options={[
{
label: "基本信息",
render: FORM_ITEM_RENDER_ENUM.DIVIDER,
},
{
label: "企业名称",
name: "corpName",
required: false,
span: 24,
componentProps: {
disabled: true,
<Page headerTitle="编辑" isShowFooter={false}>
<div>
<FormBuilder
form={form}
values={{
scaleType: 0,
whetherHygieneFlag: 0,
whetherHazardsFlag: 0,
whetherScarceFlag: 0,
whetherChemicalsFlag: 0,
whetherSpecialequipmentFlag: 0,
whetherSpecialpeopleFlag: 0,
whetherCoalgasFlag: 0,
whetherFireFlag: 0,
whetherConfinedFlag: 0,
whetherPowderFlag: 0,
whetherLightningFlag: 0,
whetherActinogenFlag: 0,
whetherLiquidammoniaFlag: 0,
whetherPipelineFlag: 0,
}}
confirmLoading={
deleteFileLoading
|| uploadFileLoading
|| getFileLoading
|| props.enterprise.enterpriseLoading
}
options={[
{
label: "基本信息",
render: FORM_ITEM_RENDER_ENUM.DIVIDER,
},
},
{
label: "统一社会信用代码",
name: "code",
required: false,
componentProps: {
disabled: true,
{
label: "企业名称",
name: "corpName",
required: false,
span: 24,
componentProps: {
disabled: true,
},
},
span: 24,
rules: [
{
pattern: UNIFIED_SOCIAL_CREDIT_CODE,
message: "请输入正确的统一社会信用代码",
{
label: "统一社会信用代码",
name: "code",
required: false,
componentProps: {
disabled: true,
},
],
span: 24,
rules: [
{
pattern: UNIFIED_SOCIAL_CREDIT_CODE,
message: "请输入正确的统一社会信用代码",
},
],
},
{
label: "所属区域",
span: 24,
name: "region",
render: (
<AreaSelect
onGetNodePaths={nodes =>
setCityData(nodes)}
/>
),
},
{
label: "邮政编码",
name: "postalCode",
required: false,
rules: [
{
pattern: POSTAL_CODE,
message: "请输入正确的邮政编码",
},
],
},
{
label: "规模",
name: "scale",
required: false,
render: (
<DictionarySelect
dictValue="scale"
onGetData={(data) => {
setScaleData(data);
}}
/>
),
},
{
label: "成立时间",
name: "createDate",
required: false,
render: FORM_ITEM_RENDER_ENUM.DATE,
},
{
label: "企业状态",
name: "corpState",
required: false,
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: ENTERPRISE_STATUS,
},
{
label: "所属区域",
span: 24,
name: "region",
render: (
<AreaSelect
onGetNodePaths={nodes =>
setCityData(nodes)}
/>
),
},
{
label: "邮政编码",
name: "postalCode",
required: false,
rules: [
{
pattern: POSTAL_CODE,
message: "请输入正确的邮政编码",
},
],
},
{
label: "规模",
name: "scale",
required: false,
render: (
<DictionarySelect
dictValue="scale"
onGetData={(data) => {
setScaleData(data);
}}
/>
),
},
{
label: "成立时间",
name: "createDate",
required: false,
render: FORM_ITEM_RENDER_ENUM.DATE,
},
{
label: "企业状态",
name: "corpState",
required: false,
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: ENTERPRISE_STATUS,
},
{
name: "map",
customizeRender: true,
render: <Map />,
span: 24,
},
{
label: "职工人数(人)",
name: "employees",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
{
label: "占地面积(㎡)",
name: "areaCovered",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
{
label: "注册资金(万元)",
name: "regcapital",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
{
label: "资产总额(万元)",
name: "totalAssets",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
// {
// label: "开户人",
// name: "createName",
// required: false,
// componentProps: {
// disabled: true,
// },
// },
{
label: "所属行业",
name: "INDUSTRYALL",
span: 24,
render: (
<IndustrySelect
onGetNodePaths={(data) => {
setIndustryData(data);
}}
/>
),
},
{
label: "法定代表人",
name: "lrName",
required: false,
},
{
label: "法定代表人手机号",
name: "lrMobile",
required: false,
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
},
],
},
{
label: "主要负责人",
name: "contacts",
},
{
label: "主要负责人手机号",
name: "contactsPhone",
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
},
],
},
{
label: "安全负责人",
name: "safetyName",
required: false,
},
{
label: "安全负责人电话手机号",
name: "safetyPhone",
required: false,
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
},
],
},
{
label: "是否规模以上",
name: "scaleType",
required: false,
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: WHETHER_ENUM,
},
{
label: "企事业单位经营地址",
name: "addressBusiness",
},
{
label: "营业执照",
name: "licenseFile",
render: (
<Upload
onGetRemoveFile={(file) => {
setDeleteLicenseImageFiles([
...deleteLicenseImageFiles,
file,
]);
}}
/>
),
},
{
label: "营业执照有效期",
name: "license",
render: FORM_ITEM_RENDER_ENUM.DATE_RANGE,
},
},
{
name: "map",
customizeRender: true,
render: <Map />,
span: 24,
},
{
label: "职工人数(人)",
name: "employees",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
{
label: "占地面积(㎡)",
name: "areaCovered",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
{
label: "注册资金(万元)",
name: "regcapital",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
{
label: "资产总额(万元)",
name: "totalAssets",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
},
// {
// label: "开户人",
// name: "createName",
// required: false,
// componentProps: {
// disabled: true,
// },
// },
{
label: "所属行业",
name: "INDUSTRYALL",
span: 24,
render: (
<IndustrySelect
onGetNodePaths={(data) => {
setIndustryData(data);
}}
/>
),
},
{
label: "法定代表人",
name: "lrName",
required: false,
},
{
label: "法定代表人手机号",
name: "lrMobile",
required: false,
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
},
],
},
{
label: "主要负责人",
name: "contacts",
},
{
label: "主要负责人手机号",
name: "contactsPhone",
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
},
],
},
{
label: "安全负责人",
name: "safetyName",
required: false,
},
{
label: "安全负责人电话手机号",
name: "safetyPhone",
required: false,
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
},
],
},
{
label: "是否规模以上",
name: "scaleType",
required: false,
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: WHETHER_ENUM,
},
{
label: "企事业单位经营地址",
name: "addressBusiness",
},
{
label: "营业执照",
name: "licenseFile",
render: (
<Upload
onGetRemoveFile={(file) => {
setDeleteLicenseImageFiles([
...deleteLicenseImageFiles,
file,
]);
}}
/>
),
},
{
label: "营业执照有效期",
name: "license",
render: FORM_ITEM_RENDER_ENUM.DATE_RANGE,
},
{
label: "办公地址",
required: false,
name: "addressOffice",
},
{
label: "办公地址",
required: false,
name: "addressOffice",
},
// { label: "企业相关属性", render: FORM_ITEM_RENDER_ENUM.DIVIDER },
// {
// label: "有无职业卫生信息",
@ -599,14 +595,16 @@ function Update(props) {
// render: FORM_ITEM_RENDER_ENUM.RADIO,
// items: WHETHER_ENUM,
// },
]}
labelCol={{
span: 6,
}}
onFinish={onSubmit}
onValuesChange={onValuesChange}
/>
</div>
]}
labelCol={{
span: 6,
}}
onFinish={onSubmit}
onValuesChange={onValuesChange}
/>
</div>
</Page>
</>
);
}

View File

@ -1,11 +1,11 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
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 { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable";
import { NS_USER } from "~/enumerate/namespace";
@ -20,7 +20,7 @@ const ENTERPRISE_TYPE = [
name: "集团单位",
},
];
function List(props) {
function ChangeList(props) {
const [form] = Form.useForm();
const queryParams = useGetUrlQuery();
const { tableProps, getData } = useTable(props["userEmploymentLogAll"], {
@ -35,12 +35,8 @@ function List(props) {
});
return (
<div>
<HeaderBack title="变更记录列表" />
<div
style={{
padding: 20,
}}
>
<Page headerTitle="变更记录列表">
<Search
form={form}
options={[
@ -91,6 +87,7 @@ function List(props) {
{
title: "操作",
width: 200,
hidden: !(props.permission("qyyhzt-bgjl-info")),
render: (_, record) => (
<Space>
@ -108,8 +105,8 @@ function List(props) {
]}
{...tableProps}
/>
</div>
</Page>
</div>
);
}
export default Connect([NS_USER], true)(List);
export default Connect([NS_USER], true)(Permission(ChangeList));

View File

@ -1,10 +1,9 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import { NS_ENTERPRISE, NS_USER } from "~/enumerate/namespace";
function ChangeView(props) {
@ -64,11 +63,30 @@ function ChangeView(props) {
return (
<div>
<HeaderBack title="变更记录" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="变更记录"
extraActionButtons={
queryParams["type"] === "disposal"
&& (
<div>
<Button key="reject" onClick={handleReject} style={{ marginRight: 20 }}>
驳回
</Button>
<Button
type="primary"
onClick={onSubmit}
>
通过
</Button>
</div>
)
}
>
<Divider orientation="left">变更前信息</Divider>
<Descriptions
@ -157,33 +175,7 @@ function ChangeView(props) {
]}
dataSource={info.userJobHandoverCOList}
/>
</div>
{
queryParams["type"] === "disposal"
&& (
<div style={{ textAlign: "center", height: 50, marginTop: 20 }} className="no-print">
<Button style={{ marginRight: 20 }} onClick={onGoBack}>
取消
</Button>
<Button key="reject" onClick={handleReject} style={{ marginRight: 20 }}>
驳回
</Button>
<Button
type="primary"
onClick={onSubmit}
>
通过
</Button>
</div>
)
}
</Page>
</div>

View File

@ -1,15 +1,16 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Form, Modal, Space } from "antd";
import { useEffect, useState } from "react";
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
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 TooltipPreviewImg from "zy-react-library/components/TooltipPreviewImg";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { getLabelName } from "zy-react-library/utils";
import { NS_USER } from "~/enumerate/namespace";
import { UseDecodeIdCard } from "~/utils";
@ -105,10 +106,10 @@ function List(props) {
title: "手机号",
dataIndex: "phone",
},
{
title: "中台是否存在",
dataIndex: "name",
},
// {
// title: "中台是否存在",
// dataIndex: "name",
// },
{
title: "状态",
dataIndex: "name",
@ -124,7 +125,7 @@ function List(props) {
},
{
title: "操作",
width: 180,
width: 220,
render: (_, record) => (
<Space>
<Button
@ -137,21 +138,32 @@ function List(props) {
>
查看
</Button>
<Button
type="link"
onClick={() =>
props.history.push(`./ChangeList?id=${record.id}`)}
>
变更记录
</Button>
<Button
type="link"
danger
onClick={() =>
props.history.push(`./ChangeView?id=${record.id}&type=disposal`)}
>
变更处置
</Button>
{
props.permission("qyd-qyyhzt-record")
&& (
<Button
type="link"
onClick={() =>
props.history.push(`./ChangeList?id=${record.id}`)}
>
变更记录
</Button>
)
}
{
props.permission("qyd-qyyhzt-disposal")
&& (
<Button
type="link"
danger
onClick={() =>
props.history.push(`./ChangeView?id=${record.id}&type=disposal`)}
>
变更处置
</Button>
)
}
</Space>
),
},
@ -303,4 +315,4 @@ function AddModalComponent(props) {
);
}
const AddModal = AddModalComponent;
export default Connect([NS_USER], true)(List);
export default Connect([NS_USER], true)(Permission(List));

View File

@ -277,6 +277,7 @@ function AddModalComponent(props) {
width={800}
onOk={() => form.submit()}
onCancel={onCancel}
confirmLoading={props.loding}
>
<FormBuilder
form={form}

View File

@ -225,7 +225,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={props.loding}
confirmLoading={props.loding}
onOk={form.submit}
onCancel={onCancel}
>

View File

@ -5,13 +5,13 @@ import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import AddIcon from "zy-react-library/components/Icon/AddIcon";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DictionarySelect from "zy-react-library/components/Select/Dictionary";
import AreaSelect from "zy-react-library/components/SelectTree/Area";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useTable from "zy-react-library/hooks/useTable";
import { UNIFIED_SOCIAL_CREDIT_CODE } from "zy-react-library/regular";
import { getLabelName } from "zy-react-library/utils";
import { NS_ENTERPRISE } from "~/enumerate/namespace";
@ -103,189 +103,187 @@ function List(props) {
form.setFieldValue("cityRecord", []);
};
return (
<div
style={{
padding: 20,
}}
>
<div>
<Page isShowAllAction={false}>
<Search
form={form}
onFinish={() => onFinish()}
onReset={onReset}
options={[
{
name: "likecorpName",
label: "企业名称",
},
{
name: "cityData",
label: "属地",
render: (
<AreaSelect
onGetNodePaths={nodes =>
setCityData(nodes)}
/>
),
},
{
name: "CreateTime",
label: "开户时间",
render: FORM_ITEM_RENDER_ENUM.DATE_RANGE,
},
{
name: "eqType",
label: "相关方类型",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: ENTERPRISE_TYPE,
},
{
name: "cityRecord",
label: "属地",
render: FORM_ITEM_RENDER_ENUM.SELECT,
onlyForLabel: true,
},
]}
/>
<Table
toolBarRender={() => (
<>
<Search
form={form}
onFinish={() => onFinish()}
onReset={onReset}
options={[
{
props.permission("qyd-xgf-zhgl-add")
&& (
<Button
type="primary"
icon={<AddIcon />}
onClick={() => {
setAddModalOpen(true);
}}
>
新增
</Button>
)
}
</>
)}
columns={[
{
title: "企业名称",
dataIndex: "corpName",
},
{
title: "属地",
dataIndex: "cityName",
width: 300,
render: (_, record) => (
<div>{getAreaNamePath(record)}</div>
),
},
{
title: "创建单位",
dataIndex: "createName",
},
{
title: "开户人",
dataIndex: "accountContactName",
},
{
title: "统一社会信用代码",
dataIndex: "code",
width: 190,
},
{
title: "开户时间",
dataIndex: "createTime",
width: 120,
},
{
title: "相关方类型",
dataIndex: "type",
width: 120,
render: (_, record) => (
getLabelName({
status: record.type,
list: ENTERPRISE_TYPE,
})
),
name: "likecorpName",
label: "企业名称",
},
{
name: "cityData",
label: "属地",
render: (
<AreaSelect
onGetNodePaths={nodes =>
setCityData(nodes)}
/>
),
},
{
name: "CreateTime",
label: "开户时间",
render: FORM_ITEM_RENDER_ENUM.DATE_RANGE,
},
{
name: "eqType",
label: "相关方类型",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: ENTERPRISE_TYPE,
},
{
name: "cityRecord",
label: "属地",
render: FORM_ITEM_RENDER_ENUM.SELECT,
onlyForLabel: true,
},
},
{
title: "操作",
width: 300,
render: (_, record) => (
<Space>
{
props.permission("qyd-xgf-zhgl-info")
&& (
<Button
type="link"
onClick={() => props.history.push(`./View?id=${record.id}`)}
>
查看
</Button>
)
}
{
]}
props.permission("qyd-xgf-zhgl-edit")
&& (
<Button
type="link"
onClick={() => {
setAddModalOpen(true);
setCurrentId(record.id);
}}
>
编辑
</Button>
)
}
{props.permission("qyd-xgf-resetPassword")
&& (
<Button
type="link"
onClick={() => onResetPassword(record.id)}
>
重置密码
</Button>
)}
{props.permission("qyd-xgf-zhgl-delete")
&& (
<Button
danger
type="link"
onClick={() => onDelete(record.id)}
>
删除
</Button>
)}
</Space>
),
},
]}
{...tableProps}
/>
{addModalOpen && (
<AddModal
open={addModalOpen}
getData={getData}
currentId={currentId}
requestAdd={props["corpInfoAdd"]}
requestEdit={props["corpInfoEdit"]}
requestDetails={props["corpInfoDetails"]}
requestChangeCompanyName={props["corpInfoChangeCompanyName"]}
requestCorplnfoCheckCorpcode={props["corplnfoCheckCorpcode"]}
requestCorplnfoCheckCorpName={props["corplnfoCheckCorpName"]}
loading={props.enterprise.enterpriseLoading}
onCancel={() => {
setAddModalOpen(false);
setCurrentId("");
}}
/>
)}
<Table
toolBarRender={() => (
<>
{
props.permission("qyd-xgf-zhgl-add")
&& (
<Button
type="primary"
icon={<AddIcon />}
onClick={() => {
setAddModalOpen(true);
}}
>
新增
</Button>
)
}
</>
)}
columns={[
{
title: "企业名称",
dataIndex: "corpName",
},
{
title: "属地",
dataIndex: "cityName",
width: 300,
render: (_, record) => (
<div>{getAreaNamePath(record)}</div>
),
},
{
title: "创建单位",
dataIndex: "createName",
},
{
title: "开户人",
dataIndex: "accountContactName",
},
{
title: "统一社会信用代码",
dataIndex: "code",
width: 190,
},
{
title: "开户时间",
dataIndex: "createTime",
width: 120,
},
{
title: "相关方类型",
dataIndex: "type",
width: 120,
render: (_, record) => (
getLabelName({
status: record.type,
list: ENTERPRISE_TYPE,
})
),
},
{
title: "操作",
width: 300,
render: (_, record) => (
<Space>
{
props.permission("qyd-xgf-zhgl-info")
&& (
<Button
type="link"
onClick={() => props.history.push(`./View?id=${record.id}`)}
>
查看
</Button>
)
}
{
props.permission("qyd-xgf-zhgl-edit")
&& (
<Button
type="link"
onClick={() => {
setAddModalOpen(true);
setCurrentId(record.id);
}}
>
编辑
</Button>
)
}
{props.permission("qyd-xgf-resetPassword")
&& (
<Button
type="link"
onClick={() => onResetPassword(record.id)}
>
重置密码
</Button>
)}
{props.permission("qyd-xgf-zhgl-delete")
&& (
<Button
danger
type="link"
onClick={() => onDelete(record.id)}
>
删除
</Button>
)}
</Space>
),
},
]}
{...tableProps}
/>
{addModalOpen && (
<AddModal
open={addModalOpen}
getData={getData}
currentId={currentId}
requestAdd={props["corpInfoAdd"]}
requestEdit={props["corpInfoEdit"]}
requestDetails={props["corpInfoDetails"]}
requestChangeCompanyName={props["corpInfoChangeCompanyName"]}
requestCorplnfoCheckCorpcode={props["corplnfoCheckCorpcode"]}
requestCorplnfoCheckCorpName={props["corplnfoCheckCorpName"]}
loading={props.enterprise.enterpriseLoading}
onCancel={() => {
setAddModalOpen(false);
setCurrentId("");
}}
/>
)}
</Page>
</div>
);
}
@ -422,7 +420,7 @@ function AddModalComponent(props) {
form={form}
span={24}
loading={props.loading}
confirmLoading={props.loading}
options={[
{
name: "corpName",

View File

@ -1,14 +1,14 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, Form, Input, Modal, QRCode } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
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 useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import { getLabelName } from "zy-react-library/utils";
import { getLabelName } from "zy-react-library/utils";
import { NS_ENTERPRISE } from "~/enumerate/namespace";
import { getAreaNamePath, getCorpTypeNamePath } from "~/utils";
@ -74,12 +74,12 @@ function View(props) {
};
return (
<div>
<HeaderBack title="查看" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="查看"
isShowFooter={false}
>
<Divider orientation="left">基本信息</Divider>
<Descriptions
bordered
@ -241,7 +241,7 @@ function View(props) {
},
]}
column={2}
loading={getFileLoading}
loding={getFileLoading}
labelStyle={{
width: 200,
}}
@ -266,7 +266,7 @@ function View(props) {
}}
contentStyle={{ width: "40%" }}
/>
</div>
</Page>
{corpInfoQrCodeOpen && (
<CorpInfoQrCode
row={info}

View File

@ -3,16 +3,16 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import { useState } from "react";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import AreaSelect from "zy-react-library/components/SelectTree/Area";
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 useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { NS_ENTERPRISE } from "~/enumerate/namespace";
import { getAreaNamePath } from "~/utils";
// import { getLabelName } from "zy-react-library/utils";
const ENTERPRISE_TYPE = [
@ -61,111 +61,109 @@ function List(props) {
form.setFieldValue("cityRecord", []);
};
return (
<div
style={{
padding: 20,
}}
>
<Search
form={form}
onFinish={() => onFinish()}
onReset={onReset}
options={[
{
name: "likeCorpName",
label: "企业名称",
},
{
name: "cityData",
label: "属地",
render: (
<AreaSelect
onGetNodePaths={nodes =>
setCityData(nodes)}
/>
),
},
{ name: "eqType", label: "相关方类型", render: FORM_ITEM_RENDER_ENUM.SELECT, items: ENTERPRISE_TYPE },
{
name: "cityRecord",
label: "属地",
render: FORM_ITEM_RENDER_ENUM.SELECT,
onlyForLabel: true,
},
]}
/>
<Table
columns={[
{
title: "企业名称",
dataIndex: "corpName",
<div>
<Page isShowAllAction={false}>
<Search
form={form}
onFinish={() => onFinish()}
onReset={onReset}
options={[
{
name: "likeCorpName",
label: "企业名称",
},
{
name: "cityData",
label: "属地",
render: (
<AreaSelect
onGetNodePaths={nodes =>
setCityData(nodes)}
/>
),
},
{ name: "eqType", label: "相关方类型", render: FORM_ITEM_RENDER_ENUM.SELECT, items: ENTERPRISE_TYPE },
{
name: "cityRecord",
label: "属地",
render: FORM_ITEM_RENDER_ENUM.SELECT,
onlyForLabel: true,
},
]}
/>
<Table
columns={[
{
title: "企业名称",
dataIndex: "corpName",
},
{
title: "相关方类型",
dataIndex: "type",
render: (_, record) => (
getLabelName({
status: record.type,
list: ENTERPRISE_TYPE,
})
),
width: 120,
},
{
title: "属地",
dataIndex: "cityName",
render: (_, record) => (
<div>{getAreaNamePath(record)}</div>
),
},
{
title: "创建单位",
dataIndex: "tenantName",
},
{
title: "企业人数",
dataIndex: "userCount",
width: 120,
render: (_, record) => (
<div>{record.userCount ? record.userCount : "0"}</div>
),
},
{
title: "安全人员信息数",
dataIndex: "safetyUserCount",
width: 140,
},
{
title: "特种作业人数",
dataIndex: "specialUserCount",
width: 120,
},
// { title: "公司状态", dataIndex: "corpStateName" },
},
{
title: "相关方类型",
dataIndex: "type",
render: (_, record) => (
getLabelName({
status: record.type,
list: ENTERPRISE_TYPE,
})
),
width: 120,
},
{
title: "属地",
dataIndex: "cityName",
render: (_, record) => (
<div>{getAreaNamePath(record)}</div>
),
},
{
title: "创建单位",
dataIndex: "tenantName",
},
{
title: "企业人数",
dataIndex: "userCount",
width: 120,
render: (_, record) => (
<div>{record.userCount ? record.userCount : "0"}</div>
),
},
{
title: "安全人员信息数",
dataIndex: "safetyUserCount",
width: 140,
},
{
title: "特种作业人数",
dataIndex: "specialUserCount",
width: 120,
},
// { title: "公司状态", dataIndex: "corpStateName" },
// { title: "启用状态", dataIndex: "useFlag", render: (_, record) => (
// <span>{record.useFlag === 1 ? "停用" : record.useFlag === 0 ? "启用" : ""}</span>
// ) },
// { title: "启用状态", dataIndex: "useFlag", render: (_, record) => (
// <span>{record.useFlag === 1 ? "停用" : record.useFlag === 0 ? "启用" : ""}</span>
// ) },
{
title: "操作",
width: 150,
hidden: !(props.permission("qyd-xgf-yhgl-userList")),
render: (_, record) => (
<Space>
<Button
type="link"
onClick={() =>
props.history.push(`./UserList?id=${record.id}`)}
>
人员列表
</Button>
</Space>
),
},
]}
{...tableProps}
/>
{
title: "操作",
width: 150,
hidden: !(props.permission("qyd-xgf-yhgl-userList")),
render: (_, record) => (
<Space>
<Button
type="link"
onClick={() =>
props.history.push(`./UserList?id=${record.id}`)}
>
人员列表
</Button>
</Space>
),
},
]}
{...tableProps}
/>
</Page>
</div>
);
}

View File

@ -2,15 +2,14 @@ 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 HeaderBack from "zy-react-library/components/HeaderBack";
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
import PreviewImg from "zy-react-library/components/PreviewImg";
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";
@ -61,6 +60,22 @@ function List(props) {
},
});
};
// 清除伪类
useEffect(() => {
const style = document.createElement("style");
style.innerHTML = `
.search-layout::after {
content: none !important;
display: none !important;
}
`;
document.head.appendChild(style);
// 清理函数,在组件卸载时移除样式
return () => {
document.head.removeChild(style);
};
}, []);
const onTreeChange = (selectedKeys) => {
const key = selectedKeys[0] || null;
setSelectedNodeId(key);
@ -68,23 +83,21 @@ function List(props) {
};
return (
<div>
<HeaderBack title="相关方企业人员列表" />
<div
style={{
padding: 20,
}}
>
<Page headerTitle="相关方企业人员列表" isShowFooter={false}>
<div
style={{
display: "flex",
gap: 20,
}}
>
<LeftTree onSelect={onTreeChange} params={{ eqCorpinfoId: queryParams["id"] }} />
<div
style={{
flex: 1,
}}
>
<Search
form={form}
@ -101,8 +114,10 @@ function List(props) {
},
]}
onFinish={getData}
/>
<Table
columns={[
{
title: "用户名",
@ -128,30 +143,30 @@ function List(props) {
title: "操作",
render: (_, record) => (
<Space>
{/* { */}
{/* props.permission("qyd-xgf-yhgl-info") */}
{/* && ( */}
<Button
type="link"
onClick={() => {
setAddModalOpen(true);
setCurrentId(record.id);
}}
>
查看
</Button>
{/* // */}
{/* // ) */}
{/* // } */}
{/* {props.permission("qyd-xgf-yhgl-resetPassword") */}
{/* && ( */}
<Button
type="link"
onClick={() => onResetPassword(record.id)}
>
重置密码
</Button>
{/* )} */}
{
props.permission("xgf-yhgl-userList-info")
&& (
<Button
type="link"
onClick={() => {
setAddModalOpen(true);
setCurrentId(record.id);
}}
>
查看
</Button>
)
}
{props.permission("xgf-yhgl-userList-resetPassword")
&& (
<Button
type="link"
onClick={() => onResetPassword(record.id)}
>
重置密码
</Button>
)}
</Space>
),
@ -175,7 +190,7 @@ function List(props) {
}}
/>
)}
</div>
</Page>
</div>
);
}

View File

@ -2,10 +2,9 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form, message } from "antd";
import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
@ -263,190 +262,195 @@ function Add(props) {
};
return (
<>
<HeaderBack title={queryParams["id"] ? "编辑" : "新增"} />
<div
style={{
paddingBottom: 10,
}}
>
<FormBuilder
form={form}
values={{
departmentLeaderFlag: 0,
<Page headerTitle={queryParams["id"] ? "编辑" : "新增"} isShowFooter={false}>
<div
style={{
paddingBottom: 10,
}}
loading={uploadFileLoading || props.user.userLoading}
options={[
{
name: "roleId",
label: "用户角色",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: rolesData,
itemsField: {
labelKey: "roleName",
valueKey: "id",
},
},
{
name: "departmentId",
label: "所属部门",
render: (
<DepartmentSelectTree onGetNodePaths={fnChoiceDepartment} disabled={queryParams["id"]} />
),
},
{
name: "postId",
label: "所属岗位",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: postData,
componentProps: {
disabled: queryParams["id"],
},
itemsField: {
labelKey: "postName",
valueKey: "id",
},
},
{
name: "phone",
label: "手机号",
tip: "* 手机号为用户名修改手机号登录密码则会变成初始密码“Aa@12345678",
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
>
<FormBuilder
form={form}
values={{
departmentLeaderFlag: 0,
}}
confirmLoading={uploadFileLoading || props.user.userLoading}
options={[
{
name: "roleId",
label: "用户角色",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: rolesData,
itemsField: {
labelKey: "roleName",
valueKey: "id",
},
],
},
{
name: "name",
label: "姓名",
},
{
name: "personnelType",
label: "人员类型",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: userTypeData,
itemsField: {
labelKey: "dictLabel",
valueKey: "dictValue",
},
},
{
name: "userIdCard",
label: "身份证号",
rules: [
{
pattern: ID_NUMBER,
message: "请输入正确的身份证号",
{
name: "departmentId",
label: "所属部门",
render: (
<DepartmentSelectTree onGetNodePaths={fnChoiceDepartment} disabled={queryParams["id"]} />
),
},
{
name: "postId",
label: "所属岗位",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: postData,
componentProps: {
disabled: queryParams["id"],
},
itemsField: {
labelKey: "postName",
valueKey: "id",
},
],
},
{
name: "nation",
label: "民族",
required: false,
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: nation,
},
{
name: "sex",
label: "性别",
required: false,
render: FORM_ITEM_RENDER_ENUM.SELECT,
componentProps: {
disabled: true,
},
items: SEX,
},
{
name: "faceFile",
label: "上传人脸照片",
required: false,
span: 24,
render: (
<Upload
size={4}
maxCount={1}
fileType="image"
tipContent={(
<div
style={{
lineHeight: 1.6,
color: "red",
fontSize: 12,
}}
>
<div>* 图像格式JPGJPEGPNG</div>
<div>* 图像大小不超过4M</div>
<div>* 照片大小: 推荐 500*500</div>
<div>* 人脸无遮挡如戴帽子口罩眼镜等无修图</div>
<div>* 人脸需双眼睁开表情自然露额头发不要遮挡</div>
</div>
)}
onRemove={() => {
form.setFieldValue("faceFile");
return false;
}}
/>
),
},
{
name: "sort",
label: "部门排序",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
rules: [
{
validator: (_, value) => {
if (value === undefined || value === null || value === "") {
return Promise.resolve(); // 如果非必填可移除 required这里允许空
}
const num = Number(value);
if (!Number.isInteger(num) || num <= 0) {
return Promise.reject(new Error("请输入大于0的正整数"));
}
return Promise.resolve();
{
name: "phone",
label: "手机号",
tip: "* 手机号为用户名修改手机号登录密码则会变成初始密码“Aa@12345678",
rules: [
{
pattern: PHONE,
message: "请输入正确的手机号",
},
],
},
{
name: "name",
label: "姓名",
},
{
name: "personnelType",
label: "人员类型",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: userTypeData,
itemsField: {
labelKey: "dictLabel",
valueKey: "dictValue",
},
],
},
// { name: "rank_level", label: "人员职级", required: false, render: FORM_ITEM_RENDER_ENUM.SELECT, items: rankData, itemsField: { labelKey: "dictLabel", valueKey: "dictValue" } },
{
name: "email",
label: "邮箱",
required: false,
rules: [
{
type: "email",
message: "请输入正确的邮箱",
},
{
name: "userIdCard",
label: "身份证号",
rules: [
{
pattern: ID_NUMBER,
message: "请输入正确的身份证号",
},
],
},
{
name: "nation",
label: "民族",
required: false,
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: nation,
},
{
name: "sex",
label: "性别",
required: false,
render: FORM_ITEM_RENDER_ENUM.SELECT,
componentProps: {
disabled: true,
},
],
},
{
name: "remarks",
label: "备注",
span: 24,
required: false,
render: FORM_ITEM_RENDER_ENUM.TEXTAREA,
},
{
name: "departmentLeaderFlag",
label: "是否为部门负责人",
required: false,
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: WHETHER_ENUM,
},
]}
labelCol={{
span: 6,
}}
onFinish={onSubmit}
onValuesChange={onValuesChange}
/>
</div>
items: SEX,
},
{
name: "faceFile",
label: "上传人脸照片",
required: false,
span: 24,
render: (
<Upload
size={4}
maxCount={1}
fileType="image"
tipContent={(
<div
style={{
lineHeight: 1.6,
color: "red",
fontSize: 12,
}}
>
<div>* 图像格式JPGJPEGPNG</div>
<div>* 图像大小不超过4M</div>
<div>* 照片大小: 推荐 500*500</div>
<div>* 人脸无遮挡如戴帽子口罩眼镜等无修图</div>
<div>* 人脸需双眼睁开表情自然露额头发不要遮挡</div>
</div>
)}
onRemove={() => {
form.setFieldValue("faceFile");
return false;
}}
/>
),
},
{
name: "sort",
label: "部门排序",
required: false,
render: FORM_ITEM_RENDER_ENUM.NUMBER,
rules: [
{
validator: (_, value) => {
if (value === undefined || value === null || value === "") {
return Promise.resolve(); // 如果非必填可移除 required这里允许空
}
const num = Number(value);
if (!Number.isInteger(num) || num <= 0) {
return Promise.reject(new Error("请输入大于0的正整数"));
}
return Promise.resolve();
},
},
],
},
// { name: "rank_level", label: "人员职级", required: false, render: FORM_ITEM_RENDER_ENUM.SELECT, items: rankData, itemsField: { labelKey: "dictLabel", valueKey: "dictValue" } },
{
name: "email",
label: "邮箱",
required: false,
rules: [
{
type: "email",
message: "请输入正确的邮箱",
},
],
},
{
name: "remarks",
label: "备注",
span: 24,
required: false,
render: FORM_ITEM_RENDER_ENUM.TEXTAREA,
},
{
name: "departmentLeaderFlag",
label: "是否为部门负责人",
required: false,
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: WHETHER_ENUM,
},
]}
labelCol={{
span: 6,
}}
onFinish={onSubmit}
onValuesChange={onValuesChange}
/>
</div>
</Page>
</>
);
}

View File

@ -135,7 +135,7 @@ function List(props) {
<div style={{ flex: 1, display: "flex", flexDirection: "column", minHeight: 0, padding: "20px 0" }}>
<Search
form={form}
labelCol={{ span: 8 }}
labelCol={{ span: 3 }}
options={[
{
name: "likeName",
@ -180,6 +180,7 @@ function List(props) {
<Button
type="primary"
icon={<ImportIcon />}
ghost
onClick={() => {
setImportOpen(true);
}}
@ -194,6 +195,7 @@ function List(props) {
<Button
type="primary"
icon={<ExportIcon />}
ghost
onClick={() => onExportExcel()}
>
导出Excel

View File

@ -187,7 +187,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={props.loding}
confirmLoading={props.loding}
onOk={form.submit}
onCancel={onCancel}
>

View File

@ -4,17 +4,18 @@ import { Button, Form, message, Modal, QRCode } from "antd";
import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import Map from "zy-react-library/components/Map";
import Page from "zy-react-library/components/Page";
import AreaSelect from "zy-react-library/components/SelectTree/Area";
import DictionarySelect from "zy-react-library/components/SelectTree/Dictionary";
import DictionarySelect from "zy-react-library/components/SelectTree/Dictionary";
import IndustrySelect from "zy-react-library/components/SelectTree/Industry";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useDeleteFile from "zy-react-library/hooks/useDeleteFile";
import useGetFile from "zy-react-library/hooks/useGetFile";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import {
PHONE,
UNIFIED_SOCIAL_CREDIT_CODE,
@ -284,15 +285,11 @@ function CorpInfo(props) {
};
return (
<>
<div
style={{
paddingBottom: 10,
}}
>
<Page isShowAllAction={false}>
<FormBuilder
showCancelButton={false}
form={form}
loading={
confirmLoading={
deleteFileLoading
|| uploadFileLoading
|| getFileLoading
@ -498,7 +495,7 @@ function CorpInfo(props) {
onValuesChange={onValuesChange}
/>
</div>
</Page>
{corpInfoQrCodeOpen && (
<CorpInfoQrCode
row={info}

View File

@ -312,7 +312,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={props.loading}
confirmLoading={props.loading}
onOk={form.submit}
onCancel={onCancel}
>

View File

@ -83,7 +83,7 @@ function Department(props) {
onFinish={getData}
/>
<Table
loading={getFileLoading}
loding={getFileLoading}
columns={[
{
title: "姓名",

View File

@ -83,7 +83,7 @@ function Department(props) {
onFinish={getData}
/>
<Table
loading={getFileLoading}
loding={getFileLoading}
columns={[
{
title: "姓名",

View File

@ -2,21 +2,21 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form, message } from "antd";
import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelect from "zy-react-library/components/SelectTree/Dictionary";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
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 useDeleteFile from "zy-react-library/hooks/useDeleteFile";
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 { ID_NUMBER, PHONE } from "zy-react-library/regular";
import { getLabelName, idCardGetDateAndGender } from "zy-react-library/utils";
import { getLabelName, idCardGetDateAndGender } from "zy-react-library/utils";
import { NS_USER } from "~/enumerate/namespace";
import { getAgeByIdCard, getBirthDateFromIdCard, useDebounce, UseDecodeIdCard } from "~/utils";
@ -274,15 +274,14 @@ function Add(props) {
};
return (
<>
<HeaderBack title={queryParams["id"] ? "编辑" : "新增"} />
<div
style={{
paddingBottom: 10,
}}
<Page
headerTitle={queryParams["id"] ? "编辑" : "新增"}
isShowFooter={false}
>
<FormBuilder
form={form}
loading={
confirmLoading={
deleteFileLoading
|| uploadFileLoading
|| getFileLoading
@ -464,6 +463,9 @@ function Add(props) {
{
name: "flowFlag",
label: "是否流动人员",
componentProps: {
disabled: queryParams["id"],
},
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: WHETHER_ENUM,
@ -628,7 +630,7 @@ function Add(props) {
onFinish={onSubmit}
onValuesChange={onValuesChange}
/>
</div>
</Page>
</>
);
}

View File

@ -6,7 +6,6 @@ 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";
@ -99,7 +98,7 @@ function List(props) {
<div style={{ flex: 1, display: "flex", flexDirection: "column", minHeight: 0, padding: "20px 0" }}>
<Search
form={form}
labelCol={{ span: 8 }}
labelCol={{ span: 3 }}
options={[
{
name: "likeName",
@ -400,7 +399,7 @@ function AddModalComponent(props) {
}}
onOk={form.submit}
onCancel={onCancel}
loading={getFileLoading}
confirmLoading={getFileLoading}
footer={[
<Button key="return" onClick={onCancel}>
关闭

View File

@ -1,7 +1,7 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import { NS_USER } from "~/enumerate/namespace";
@ -61,17 +61,24 @@ function ResignationReview(props) {
});
};
const onGoBack = () => {
window.history.back();
};
return (
<div>
<HeaderBack title="信息确认" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="信息确认"
extraActionButtons={(
<div>
<Button key="reject" onClick={handleReject} style={{ marginRight: 20 }}>
驳回
</Button>
<Button
type="primary"
onClick={onSubmit}
>
通过
</Button>
</div>
)}
>
<Divider orientation="left">人员信息</Divider>
<Descriptions
@ -127,27 +134,7 @@ function ResignationReview(props) {
]}
dataSource={info.userJobHandoverCOList}
/>
</div>
<div style={{ textAlign: "center", height: 50, marginTop: 20 }} className="no-print">
<Button style={{ marginRight: 20 }} onClick={onGoBack}>
取消
</Button>
<Button key="reject" onClick={handleReject} style={{ marginRight: 20 }}>
驳回
</Button>
<Button
type="primary"
onClick={onSubmit}
>
通过
</Button>
</div>
</Page>
</div>

View File

@ -116,7 +116,7 @@ function SecurityPersonnel(props) {
onFinish={getData}
/>
<Table
loading={getFileLoading}
loding={getFileLoading}
toolBarRender={() => (
<>
{
@ -316,7 +316,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={
confirmLoading={
deleteFileLoading || uploadFileLoading || getFileLoading || props.loding
}
onOk={form.submit}

View File

@ -118,7 +118,7 @@ function SpecialPersonnel(props) {
onFinish={getData}
/>
<Table
loading={getFileLoading}
loding={getFileLoading}
toolBarRender={() => (
<>
{
@ -350,7 +350,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={
confirmLoading={
deleteFileLoading || uploadFileLoading || getFileLoading || props.loding
}
onOk={form.submit}

View File

@ -4,14 +4,14 @@ import { Button, Form, message, Modal, Space } from "antd";
import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import AddIcon from "zy-react-library/components/Icon/AddIcon";
// import { getLabelName } from "zy-react-library/utils";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DictionarySelect from "zy-react-library/components/Select/Dictionary";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useTable from "zy-react-library/hooks/useTable";
import { UNIFIED_SOCIAL_CREDIT_CODE } from "zy-react-library/regular";
// import { getLabelName } from "zy-react-library/utils";
import { NS_ENTERPRISE } from "~/enumerate/namespace";
import { useDebounce } from "~/utils";
@ -134,11 +134,7 @@ function List(props) {
});
};
return (
<div
style={{
padding: 20,
}}
>
<Page isShowAllAction={false}>
<Search
form={form}
options={[
@ -166,7 +162,7 @@ function List(props) {
onFinish={getData}
/>
<Table
loading={props.enterprise.enterpriseLoading}
loding={props.enterprise.enterpriseLoading}
toolBarRender={() => (
<>
{
@ -350,7 +346,7 @@ function List(props) {
}}
/>
)}
</div>
</Page>
);
}
function AddModalComponent(props) {
@ -467,7 +463,7 @@ function AddModalComponent(props) {
<FormBuilder
form={form}
span={24}
loading={props.loading}
confirmLoading={props.loading}
options={[
{
name: "corpName",

View File

@ -1,8 +1,7 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Descriptions, Divider } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import { getLabelName } from "zy-react-library/utils";
@ -49,11 +48,9 @@ function View(props) {
}, []);
return (
<div>
<HeaderBack title="查看" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="查看"
isShowFooter={false}
>
<Divider orientation="left">企业信息</Divider>
<Descriptions
@ -97,7 +94,7 @@ function View(props) {
width: 200,
}}
/>
</div>
</Page>
</div>
);
}

View File

@ -1,11 +1,12 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import Page from "zy-react-library/components/Page";
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 useTable from "zy-react-library/hooks/useTable";
import useTable from "zy-react-library/hooks/useTable";
import { NS_ENTERPRISE } from "~/enumerate/namespace";
const ENTERPRISE_TYPE = [
@ -62,22 +63,9 @@ function List(props) {
},
});
return (
<div
style={{
padding: 20,
}}
>
<div
style={{
display: "flex",
gap: 20,
}}
>
<div
style={{
flex: 1,
}}
>
<Page isShowAllAction={false}>
<div>
<div>
<Search
form={form}
options={[
@ -154,7 +142,7 @@ function List(props) {
},
{
title: "操作",
width: 200,
width: 120,
hidden: !(props.permission("zgsbmgl-list")),
render: (_, record) => (
<Space>
@ -173,7 +161,7 @@ function List(props) {
/>
</div>
</div>
</div>
</Page>
);
}
export default Connect([NS_ENTERPRISE], true)(Permission(List));

View File

@ -2,9 +2,8 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Form, Modal, Space } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
@ -36,12 +35,7 @@ function View(props) {
};
return (
<div>
<HeaderBack title="查看" />
<div
style={{
padding: 20,
}}
>
<Page headerTitle="查看" isShowFooter={false}>
<div
style={{
display: "flex",
@ -78,7 +72,7 @@ function View(props) {
{
title: "操作",
width: 200,
hidden: !(props.permission("zgsbmgl-info")),
hidden: !(props.permission("jgd-bmgl-info-info")),
render: (_, record) => (
<Space>
<Button
@ -108,7 +102,7 @@ function View(props) {
setCurrentId("");
}}
/>
</div>
</Page>
</div>
);
}

View File

@ -4,6 +4,7 @@ import { Button, Form, message, Space } from "antd";
import { useState } from "react";
import MapSelector from "zy-react-library/components/Map/MapSelector";
import Page from "zy-react-library/components/Page";
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";
@ -83,11 +84,7 @@ function List(props) {
// props.
};
return (
<div
style={{
padding: 20,
}}
>
<Page isShowAllAction={false}>
<Search
form={form}
options={[
@ -201,7 +198,7 @@ function List(props) {
onClose={() => setVisible(false)}
onConfirm={handleConfirm}
/>
</div>
</Page>
);
}
export default Connect([NS_ENTERPRISE], true)(Permission(List));

View File

@ -1,8 +1,8 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Descriptions, Divider, Form, Input, Modal } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
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";
@ -46,17 +46,13 @@ function View(props) {
return (
<div>
<HeaderBack title="查看" />
<div
style={{
padding: 20,
}}
>
<Page headerTitle="查看" isShowFooter={false}>
<div>
<Divider orientation="left">基本信息</Divider>
<Descriptions
bordered
loading={getFileLoading}
loding={getFileLoading}
items={[
{
label: "公司名称",
@ -299,7 +295,7 @@ function View(props) {
{/* ]} */}
{/* /> */}
</div>
</div>
</Page>
{isModalOpen
&& (
<Modal

View File

@ -2,8 +2,8 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Form, Input, 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 Table from "zy-react-library/components/Table";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable";
@ -11,6 +11,7 @@ import { getLabelName } from "zy-react-library/utils";
import { NS_USER } from "~/enumerate/namespace";
import { UseDecodeIdCard } from "~/utils";
import {Permission} from "@cqsjjb/jjb-common-decorator/permission";
function List(props) {
const queryParams = useGetUrlQuery();
@ -36,11 +37,7 @@ function List(props) {
getData();
};
return (
<div
style={{
padding: 20,
}}
>
<Page headerTitle="查看" isShowFooter={false}>
<div
style={{
display: "flex",
@ -70,6 +67,7 @@ function List(props) {
{
title: "操作",
width: 300,
hidden: !(props.permission("jgd-yhgl-info-info")),
render: (_, record) => (
<Space>
<Button
@ -102,7 +100,7 @@ function List(props) {
setCurrentId("");
}}
/>
</div>
</Page>
);
}
function AddModalComponent(props) {
@ -335,4 +333,4 @@ function AddModalComponent(props) {
);
}
const AddModal = AddModalComponent;
export default Connect([NS_USER], true)(List);
export default Connect([NS_USER], true)(Permission(List));

View File

@ -1,11 +1,11 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
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 { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useTable from "zy-react-library/hooks/useTable";
import { NS_USER } from "~/enumerate/namespace";
@ -33,11 +33,9 @@ function List(props) {
});
return (
<div>
<HeaderBack title="变更记录列表" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="变更记录列表"
isShowFooter={false}
>
<Search
form={form}
@ -106,7 +104,7 @@ function List(props) {
]}
{...tableProps}
/>
</div>
</Page>
</div>
);
}

View File

@ -1,10 +1,10 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import { NS_ENTERPRISE, NS_USER } from "~/enumerate/namespace";
function ChangeView(props) {
@ -64,11 +64,9 @@ function ChangeView(props) {
return (
<div>
<HeaderBack title="变更记录" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="变更记录"
isShowFooter={false}
>
<Divider orientation="left">变更前信息</Divider>
<Descriptions
@ -157,7 +155,7 @@ function ChangeView(props) {
]}
dataSource={info.userJobHandoverCOList}
/>
</div>
</Page>
{
queryParams["type"] === "disposal"

View File

@ -1,12 +1,13 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import Page from "zy-react-library/components/Page";
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 useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { getLabelName } from "zy-react-library/utils";
import { NS_ENTERPRISE } from "~/enumerate/namespace";
const ENTERPRISE_TYPE = [
@ -32,11 +33,7 @@ function List(props) {
});
return (
<div
style={{
padding: 20,
}}
>
<Page isShowAllAction={false}>
<Search
form={form}
options={[
@ -111,7 +108,7 @@ function List(props) {
]}
{...tableProps}
/>
</div>
</Page>
);
}
export default Connect([NS_ENTERPRISE], true)(Permission(List));

View File

@ -1,17 +1,18 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Form, Modal, Space } from "antd";
import { useEffect, useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
import Search from "zy-react-library/components/Search";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import Table from "zy-react-library/components/Table";
import TooltipPreviewImg from "zy-react-library/components/TooltipPreviewImg";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { NS_USER } from "~/enumerate/namespace";
import { UseDecodeIdCard } from "~/utils";
@ -44,6 +45,21 @@ function List(props) {
};
},
});
// 清除伪类
useEffect(() => {
const style = document.createElement("style");
style.innerHTML = `
.search-layout::after {
content: none !important;
display: none !important;
}
`;
document.head.appendChild(style);
// 清理函数,在组件卸载时移除样式
return () => {
document.head.removeChild(style);
};
}, []);
const onTreeChange = (selectedKeys) => {
const key = selectedKeys[0] || null;
setSelectedNodeId(key);
@ -51,12 +67,9 @@ function List(props) {
};
return (
<div>
<HeaderBack title="列表" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="列表"
isShowFooter={false}
>
<div
style={{
@ -143,21 +156,31 @@ function List(props) {
>
查看
</Button>
<Button
type="link"
onClick={() =>
props.history.push(`./ChangeList?id=${record.id}`)}
>
变更记录
</Button>
<Button
type="link"
danger
onClick={() =>
props.history.push(`./ChangeView?id=${record.id}&type=disposal`)}
>
变更处置
</Button>
{
props.permission("qyyuzt-info-record")
&& (
<Button
type="link"
onClick={() =>
props.history.push(`./ChangeList?id=${record.id}`)}
>
变更记录
</Button>
)
}
{
props.permission("qyyuzt-info-disposal")
&& (
<Button
type="link"
danger
onClick={() =>
props.history.push(`./ChangeView?id=${record.id}&type=disposal`)}
>
变更处置
</Button>
)
}
</Space>
),
},
@ -178,7 +201,7 @@ function List(props) {
setCurrentId("");
}}
/>
</div>
</Page>
</div>
);
}
@ -309,4 +332,4 @@ function AddModalComponent(props) {
);
}
const AddModal = AddModalComponent;
export default Connect([NS_USER], true)(List);
export default Connect([NS_USER], true)(Permission(List));

View File

@ -241,7 +241,7 @@ function View(props) {
},
]}
column={2}
loading={getFileLoading}
loding={getFileLoading}
labelStyle={{
width: 200,
}}

View File

@ -113,7 +113,7 @@ function Department(props) {
onFinish={getData}
/>
<Table
loading={getFileLoading}
loding={getFileLoading}
// toolBarRender={() => (
// <>
// <Button
@ -290,7 +290,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={
confirmLoading={
deleteFileLoading || uploadFileLoading || getFileLoading || props.loding
}
onOk={form.submit}

View File

@ -113,7 +113,7 @@ function Department(props) {
onFinish={getData}
/>
<Table
loading={getFileLoading}
loding={getFileLoading}
// toolBarRender={() => (
// <>
// <Button
@ -318,7 +318,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={
loding={
deleteFileLoading || uploadFileLoading || getFileLoading || props.loding
}
onOk={form.submit}

View File

@ -2,15 +2,15 @@ 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 HeaderBack from "zy-react-library/components/HeaderBack";
import LeftTree from "zy-react-library/components/LeftTree/Department/Gwj/index";
import PreviewImg from "zy-react-library/components/PreviewImg";
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 { 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";
@ -45,6 +45,7 @@ function List(props) {
bianma: 0,
},
];
const onResetPassword = (id) => {
Modal.confirm({
title: "提示",
@ -61,6 +62,21 @@ function List(props) {
},
});
};
// 清除伪类
useEffect(() => {
const style = document.createElement("style");
style.innerHTML = `
.search-layout::after {
content: none !important;
display: none !important;
}
`;
document.head.appendChild(style);
// 清理函数,在组件卸载时移除样式
return () => {
document.head.removeChild(style);
};
}, []);
const onTreeChange = (selectedKeys) => {
const key = selectedKeys[0] || null;
setSelectedNodeId(key);
@ -68,11 +84,10 @@ function List(props) {
};
return (
<div>
<HeaderBack title="相关方企业人员列表" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="相关方企业人员列表"
isShowFooter={false}
>
<div
style={{
@ -125,23 +140,31 @@ function List(props) {
title: "操作",
render: (_, record) => (
<Space>
<Button
type="link"
onClick={() => onResetPassword(record.id)}
>
重置密码
</Button>
<Button
type="link"
onClick={() => {
setAddModalOpen(true);
setCurrentId(record.id);
}}
>
查看
</Button>
{
props.permission("jgd-yhgl-userList-resetPassword")
&& (
<Button
type="link"
onClick={() => onResetPassword(record.id)}
>
重置密码
</Button>
)
}
{
props.permission("jgd-yhgl-userList-info")
&& (
<Button
type="link"
onClick={() => {
setAddModalOpen(true);
setCurrentId(record.id);
}}
>
查看
</Button>
)
}
</Space>
),
@ -165,7 +188,7 @@ function List(props) {
}}
/>
)}
</div>
</Page>
</div>
);
}

View File

@ -2,10 +2,9 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form, message } from "antd";
import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import AreaSelect from "zy-react-library/components/SelectTree/Area";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import {
UNIFIED_SOCIAL_CREDIT_CODE,
@ -126,16 +125,14 @@ function Update(props) {
return (
<>
<HeaderBack title="编辑" />
<div
style={{
padding: 20,
}}
<Page
headerTitle="编辑"
isShowFooter={false}
>
<FormBuilder
form={form}
loading={
confirmLoading={
props.enterprise.enterpriseLoading
}
@ -193,7 +190,7 @@ function Update(props) {
onFinish={onSubmit}
onValuesChange={onValuesChange}
/>
</div>
</Page>
</>
);
}

View File

@ -330,7 +330,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={props.loading}
confirmLoading={props.loading}
onOk={form.submit}
onCancel={onCancel}
>

View File

@ -227,7 +227,7 @@ function AddModalComponent(props) {
open={props.open}
title={props.currentId ? "编辑" : "新增"}
width={800}
loading={props.loading}
confirmLoading={props.loading}
onOk={form.submit}
onCancel={onCancel}
>

View File

@ -2,22 +2,21 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form, message } from "antd";
import { useEffect, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Page from "zy-react-library/components/Page";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelect from "zy-react-library/components/SelectTree/Dictionary";
import Upload from "zy-react-library/components/Upload";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
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 { ID_NUMBER, PHONE } from "zy-react-library/regular";
import { getLabelName, idCardGetDateAndGender } from "zy-react-library/utils";
import { getLabelName, idCardGetDateAndGender } from "zy-react-library/utils";
import { NS_USER } from "~/enumerate/namespace";
import { useDebounce, UseDecodeIdCard } from "~/utils";
// import useGetFile from "zy-react-library/hooks/useGetFile";
const WHETHER_ENUM = [
@ -262,18 +261,16 @@ function Add(props) {
};
return (
<>
<HeaderBack title={queryParams["id"] ? "编辑" : "新增"} />
<div
style={{
paddingBottom: 10,
}}
<Page
headerTitle={queryParams["id"] ? "编辑" : "新增"}
isShowFooter={false}
>
<FormBuilder
form={form}
values={{
departmentLeaderFlag: 0,
}}
loading={uploadFileLoading || props.user.userLoading}
confirmLoading={uploadFileLoading || props.user.userLoading}
options={[
{
name: "roleId",
@ -462,7 +459,7 @@ function Add(props) {
onFinish={onSubmit}
onValuesChange={onValuesChange}
/>
</div>
</Page>
</>
);
}

View File

@ -168,7 +168,7 @@ function List(props) {
/>
<Table
loading={props.user.userLoading}
loding={props.user.userLoading}
rowSelection={{
selectedRowKeys,
onChange: selectedRowKeys => setSelectedRowKeys(selectedRowKeys),
@ -195,6 +195,7 @@ function List(props) {
&& (
<Button
danger
ghost
type="primary"
icon={<DeleteIcon />}
onClick={() => {
@ -221,24 +222,26 @@ function List(props) {
)
}
{
// props.permission("zhgl-import")
// && (
<Button
type="primary"
icon={<ImportIcon />}
onClick={() => {
setImportOpen(true);
}}
>
导入
</Button>
// )
props.permission("zhgl-import")
&& (
<Button
ghost
type="primary"
icon={<ImportIcon />}
onClick={() => {
setImportOpen(true);
}}
>
导入
</Button>
)
}
{
props.permission("zhgl-export")
&& (
<Button
type="primary"
ghost
icon={<ExportIcon />}
onClick={() => onExportExcel()}
>