开始时间和结束时间增加验证
parent
c5623d3e44
commit
91451bfddf
|
|
@ -34,7 +34,7 @@
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
"react-signature-canvas": "^1.1.0-alpha.2",
|
"react-signature-canvas": "^1.1.0-alpha.2",
|
||||||
"zy-react-library": "^1.2.15"
|
"zy-react-library": "^1.2.35"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@antfu/eslint-config": "^5.4.1",
|
"@antfu/eslint-config": "^5.4.1",
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
|
||||||
import useDictionary from "zy-react-library/hooks/useDictionary";
|
import useDictionary from "zy-react-library/hooks/useDictionary";
|
||||||
import useUploadFile from "zy-react-library/hooks/useUploadFile";
|
import useUploadFile from "zy-react-library/hooks/useUploadFile";
|
||||||
import { ID_NUMBER, LICENSE_PLATE_NUMBER, PHONE } from "zy-react-library/regular";
|
import { ID_NUMBER, LICENSE_PLATE_NUMBER, PHONE } from "zy-react-library/regular";
|
||||||
import { getLabelName, validatorEndTime } from "zy-react-library/utils";
|
import { getLabelName, validatorEndTime, validatorTimeGECurrentDay } from "zy-react-library/utils";
|
||||||
import SignatureH5 from "~/components/SignatureH5";
|
import SignatureH5 from "~/components/SignatureH5";
|
||||||
import {
|
import {
|
||||||
NS_APPROVER_USER,
|
NS_APPROVER_USER,
|
||||||
|
|
@ -570,12 +570,14 @@ const BasicInfoFields = () => (
|
||||||
);
|
);
|
||||||
|
|
||||||
// 公共访问时间组件
|
// 公共访问时间组件
|
||||||
const VisitTime = ({ form }) => (
|
const VisitTime = ({ form }) => {
|
||||||
|
const visitStartTime = Form.useWatch("visitStartTime", form);
|
||||||
|
return (
|
||||||
<>
|
<>
|
||||||
<Form.Item
|
<Form.Item
|
||||||
name="visitStartTime"
|
name="visitStartTime"
|
||||||
label="访问起始时间"
|
label="访问起始时间"
|
||||||
rules={[{ required: true, message: "请选择访问起始时间" }]}
|
rules={[{ required: true, message: "请选择访问起始时间" }, validatorTimeGECurrentDay({ type: "date" })]}
|
||||||
trigger="onConfirm"
|
trigger="onConfirm"
|
||||||
onClick={(_, pickerRef) => {
|
onClick={(_, pickerRef) => {
|
||||||
pickerRef.current?.open();
|
pickerRef.current?.open();
|
||||||
|
|
@ -593,7 +595,7 @@ const VisitTime = ({ form }) => (
|
||||||
rules={[{
|
rules={[{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请选择访问结束时间",
|
message: "请选择访问结束时间",
|
||||||
}, (() => validatorEndTime(form.getFieldValue("visitStartTime")))()]}
|
}, validatorEndTime({ startTime: visitStartTime })]}
|
||||||
trigger="onConfirm"
|
trigger="onConfirm"
|
||||||
onClick={(_, pickerRef) => {
|
onClick={(_, pickerRef) => {
|
||||||
pickerRef.current?.open();
|
pickerRef.current?.open();
|
||||||
|
|
@ -607,6 +609,7 @@ const VisitTime = ({ form }) => (
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
|
};
|
||||||
|
|
||||||
// 公共地点字段组件
|
// 公共地点字段组件
|
||||||
const LocationFields = ({
|
const LocationFields = ({
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@ 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 useTable from "zy-react-library/hooks/useTable";
|
||||||
import { LICENSE_PLATE_NUMBER } from "zy-react-library/regular";
|
import { LICENSE_PLATE_NUMBER } from "zy-react-library/regular";
|
||||||
|
import { validatorEndTime, validatorTimeGECurrentDay } from "zy-react-library/utils";
|
||||||
import { NS_VEHICLE_APPLY } from "~/enumerate/namespace";
|
import { NS_VEHICLE_APPLY } from "~/enumerate/namespace";
|
||||||
|
|
||||||
function List(props) {
|
function List(props) {
|
||||||
|
|
@ -155,6 +156,7 @@ const AddModalComponent = (props) => {
|
||||||
const { info } = props;
|
const { info } = props;
|
||||||
const isEdit = !!info.id;
|
const isEdit = !!info.id;
|
||||||
const [form] = FormBuilder.useForm();
|
const [form] = FormBuilder.useForm();
|
||||||
|
const inspectCarList = FormBuilder.useWatch("inspectCarList", form);
|
||||||
|
|
||||||
const onSubmit = async (values) => {
|
const onSubmit = async (values) => {
|
||||||
let outsideSuccess = false;
|
let outsideSuccess = false;
|
||||||
|
|
@ -189,11 +191,11 @@ const AddModalComponent = (props) => {
|
||||||
width={600}
|
width={600}
|
||||||
onCancel={props.onCancel}
|
onCancel={props.onCancel}
|
||||||
onOk={form.submit}
|
onOk={form.submit}
|
||||||
confirmLoading={props.vehicleApply.vehicleApplyLoading}
|
// confirmLoading={props.vehicleApply.vehicleApplyLoading}
|
||||||
>
|
>
|
||||||
<FormBuilder
|
<FormBuilder
|
||||||
form={form}
|
form={form}
|
||||||
loading={props.vehicleApply.vehicleApplyLoading}
|
// loading={props.vehicleApply.vehicleApplyLoading}
|
||||||
showActionButtons={false}
|
showActionButtons={false}
|
||||||
onFinish={onSubmit}
|
onFinish={onSubmit}
|
||||||
span={24}
|
span={24}
|
||||||
|
|
@ -217,7 +219,7 @@ const AddModalComponent = (props) => {
|
||||||
formListUniqueProps: {
|
formListUniqueProps: {
|
||||||
showAddButton: !isEdit,
|
showAddButton: !isEdit,
|
||||||
showRemoveButton: !isEdit,
|
showRemoveButton: !isEdit,
|
||||||
options: field => ([
|
options: (field, fieldIndex) => ([
|
||||||
{
|
{
|
||||||
name: [field.name, "licenceType"],
|
name: [field.name, "licenceType"],
|
||||||
label: "车牌类型",
|
label: "车牌类型",
|
||||||
|
|
@ -236,7 +238,6 @@ const AddModalComponent = (props) => {
|
||||||
label: "车牌号",
|
label: "车牌号",
|
||||||
rules: [{ pattern: LICENSE_PLATE_NUMBER, message: "请输入正确的车牌号" }],
|
rules: [{ pattern: LICENSE_PLATE_NUMBER, message: "请输入正确的车牌号" }],
|
||||||
},
|
},
|
||||||
{ name: [field.name, "vehicleTypeName"], label: "车辆类型名称", onlyForLabel: true },
|
|
||||||
{
|
{
|
||||||
name: [field.name, "vehicleType"],
|
name: [field.name, "vehicleType"],
|
||||||
label: "车辆类型",
|
label: "车辆类型",
|
||||||
|
|
@ -249,6 +250,19 @@ const AddModalComponent = (props) => {
|
||||||
/>
|
/>
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
{ name: [field.name, "vehicleTypeName"], label: "车辆类型名称", onlyForLabel: true },
|
||||||
|
{
|
||||||
|
name: [field.name, "visitStartTime"],
|
||||||
|
label: "访问开始时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorTimeGECurrentDay({ type: "date" })],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: [field.name, "visitEndTime"],
|
||||||
|
label: "访问结束时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorEndTime({ startTime: inspectCarList?.[fieldIndex]?.visitStartTime })],
|
||||||
|
},
|
||||||
]),
|
]),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
@ -290,6 +304,8 @@ const ViewModalComponent = (props) => {
|
||||||
{ label: "车牌类型", children: info.licenceTypeName },
|
{ label: "车牌类型", children: info.licenceTypeName },
|
||||||
{ label: "车牌号", children: info.licenceNo },
|
{ label: "车牌号", children: info.licenceNo },
|
||||||
{ label: "车辆类型", children: info.vehicleTypeName },
|
{ label: "车辆类型", children: info.vehicleTypeName },
|
||||||
|
{ label: "访问开始时间", children: info.visitStartTime },
|
||||||
|
{ label: "访问结束时间", children: info.visitEndTime },
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</Modal>
|
</Modal>
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
|
||||||
import useGetUserInfo from "zy-react-library/hooks/useGetUserInfo";
|
import useGetUserInfo from "zy-react-library/hooks/useGetUserInfo";
|
||||||
import useUploadFile from "zy-react-library/hooks/useUploadFile";
|
import useUploadFile from "zy-react-library/hooks/useUploadFile";
|
||||||
import { LICENSE_PLATE_NUMBER } from "zy-react-library/regular";
|
import { LICENSE_PLATE_NUMBER } from "zy-react-library/regular";
|
||||||
|
import { validatorEndTime, validatorTimeGECurrentDay } from "zy-react-library/utils";
|
||||||
import { VEHICLE_TYPE_ENUM } from "~/enumerate/constant";
|
import { VEHICLE_TYPE_ENUM } from "~/enumerate/constant";
|
||||||
import { NS_APPROVER_USER, NS_VEHICLE_APPLY } from "~/enumerate/namespace";
|
import { NS_APPROVER_USER, NS_VEHICLE_APPLY } from "~/enumerate/namespace";
|
||||||
|
|
||||||
|
|
@ -20,6 +21,7 @@ function Add(props) {
|
||||||
const query = useGetUrlQuery();
|
const query = useGetUrlQuery();
|
||||||
const { getUserInfo } = useGetUserInfo();
|
const { getUserInfo } = useGetUserInfo();
|
||||||
const [form] = FormBuilder.useForm();
|
const [form] = FormBuilder.useForm();
|
||||||
|
const visitStartTime = FormBuilder.useWatch("visitStartTime", form);
|
||||||
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
|
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
|
||||||
const { loading: deleteFileLoading, deleteFile } = useDeleteFile();
|
const { loading: deleteFileLoading, deleteFile } = useDeleteFile();
|
||||||
const { loading: getFileLoading, getFile } = useGetFile();
|
const { loading: getFileLoading, getFile } = useGetFile();
|
||||||
|
|
@ -223,8 +225,18 @@ function Add(props) {
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
{ name: "area", label: "访问港区", onlyForLabel: true },
|
{ name: "area", label: "访问港区", onlyForLabel: true },
|
||||||
{ name: "visitStartTime", label: "访问开始时间", render: FORM_ITEM_RENDER_ENUM.DATETIME },
|
{
|
||||||
{ name: "visitEndTime", label: "访问结束时间", render: FORM_ITEM_RENDER_ENUM.DATETIME },
|
name: "visitStartTime",
|
||||||
|
label: "访问开始时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorTimeGECurrentDay({ type: "date" })],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "visitEndTime",
|
||||||
|
label: "访问结束时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorEndTime({ startTime: visitStartTime })],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "drivingLicenseFile",
|
name: "drivingLicenseFile",
|
||||||
label: "行驶证照片",
|
label: "行驶证照片",
|
||||||
|
|
|
||||||
|
|
@ -9,12 +9,13 @@ 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 useUploadFile from "zy-react-library/hooks/useUploadFile";
|
import useUploadFile from "zy-react-library/hooks/useUploadFile";
|
||||||
import { ID_NUMBER, PHONE } from "zy-react-library/regular";
|
import { ID_NUMBER, PHONE } from "zy-react-library/regular";
|
||||||
import { getLabelName } from "zy-react-library/utils";
|
import { getLabelName, validatorEndTime, validatorTimeGECurrentDay } from "zy-react-library/utils";
|
||||||
import { NS_APPROVER_USER, NS_FIRST_LEVEL_DOOR_INFO, NS_TEMPORARY_PERSONNEL } from "~/enumerate/namespace";
|
import { NS_APPROVER_USER, NS_FIRST_LEVEL_DOOR_INFO, NS_TEMPORARY_PERSONNEL } from "~/enumerate/namespace";
|
||||||
|
|
||||||
function Add(props) {
|
function Add(props) {
|
||||||
const [form] = FormBuilder.useForm();
|
const [form] = FormBuilder.useForm();
|
||||||
const gateLevelAuthArea = FormBuilder.useWatch("gateLevelAuthArea", form);
|
const gateLevelAuthArea = FormBuilder.useWatch("gateLevelAuthArea", form);
|
||||||
|
const visitStartTime = FormBuilder.useWatch("visitStartTime", form);
|
||||||
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
|
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
|
||||||
|
|
||||||
const [approvalUserListAll, setApprovalUserListAll] = useState([]);
|
const [approvalUserListAll, setApprovalUserListAll] = useState([]);
|
||||||
|
|
@ -72,8 +73,18 @@ function Add(props) {
|
||||||
{ name: "employeePersonUserName", label: "访问人姓名", span: 24 },
|
{ name: "employeePersonUserName", label: "访问人姓名", span: 24 },
|
||||||
{ name: "userPhone", label: "手机号", rules: [{ pattern: PHONE, message: "请输入正确的手机号" }] },
|
{ name: "userPhone", label: "手机号", rules: [{ pattern: PHONE, message: "请输入正确的手机号" }] },
|
||||||
{ name: "userCard", label: "身份证号", rules: [{ pattern: ID_NUMBER, message: "请输入正确的身份证号" }] },
|
{ name: "userCard", label: "身份证号", rules: [{ pattern: ID_NUMBER, message: "请输入正确的身份证号" }] },
|
||||||
{ name: "visitStartTime", label: "访问开始时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
{
|
||||||
{ name: "visitEndTime", label: "访问结束时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
name: "visitStartTime",
|
||||||
|
label: "访问开始时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorTimeGECurrentDay({ type: "date" })],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "visitEndTime",
|
||||||
|
label: "访问结束时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorEndTime({ startTime: visitStartTime })],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "gateLevelAuthArea",
|
name: "gateLevelAuthArea",
|
||||||
label: "访问港区",
|
label: "访问港区",
|
||||||
|
|
|
||||||
|
|
@ -53,8 +53,8 @@ function List(props) {
|
||||||
onFinish={getData}
|
onFinish={getData}
|
||||||
options={[
|
options={[
|
||||||
{ name: "employeePersonUserName", label: "访问人姓名" },
|
{ name: "employeePersonUserName", label: "访问人姓名" },
|
||||||
{ name: "visitStartTime", label: "访问开始时间" },
|
{ name: "visitStartTime", label: "访问开始时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
||||||
{ name: "visitEndTime", label: "访问结束时间" },
|
{ name: "visitEndTime", label: "访问结束时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
||||||
{ name: "auditFlag", label: "审批状态", render: FORM_ITEM_RENDER_ENUM.SELECT, items: STATUS_ENUM },
|
{ name: "auditFlag", label: "审批状态", render: FORM_ITEM_RENDER_ENUM.SELECT, items: STATUS_ENUM },
|
||||||
{
|
{
|
||||||
name: "mkmjId",
|
name: "mkmjId",
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ 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 useUploadFile from "zy-react-library/hooks/useUploadFile";
|
import useUploadFile from "zy-react-library/hooks/useUploadFile";
|
||||||
import { ID_NUMBER, LICENSE_PLATE_NUMBER, PHONE } from "zy-react-library/regular";
|
import { ID_NUMBER, LICENSE_PLATE_NUMBER, PHONE } from "zy-react-library/regular";
|
||||||
import { getLabelName } from "zy-react-library/utils";
|
import { getLabelName, validatorEndTime, validatorTimeGECurrentDay } from "zy-react-library/utils";
|
||||||
import {
|
import {
|
||||||
NS_APPROVER_USER,
|
NS_APPROVER_USER,
|
||||||
NS_FIRST_LEVEL_DOOR_INFO,
|
NS_FIRST_LEVEL_DOOR_INFO,
|
||||||
|
|
@ -20,6 +20,7 @@ import {
|
||||||
function Add(props) {
|
function Add(props) {
|
||||||
const [form] = FormBuilder.useForm();
|
const [form] = FormBuilder.useForm();
|
||||||
const gateLevelAuthArea = FormBuilder.useWatch("gateLevelAuthArea", form);
|
const gateLevelAuthArea = FormBuilder.useWatch("gateLevelAuthArea", form);
|
||||||
|
const visitStartTime = FormBuilder.useWatch("visitStartTime", form);
|
||||||
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
|
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
|
||||||
|
|
||||||
const [approvalUserListAll, setApprovalUserListAll] = useState([]);
|
const [approvalUserListAll, setApprovalUserListAll] = useState([]);
|
||||||
|
|
@ -122,8 +123,18 @@ function Add(props) {
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
{ name: "vehicleTypeName", label: "车辆类型", onlyForLabel: true },
|
{ name: "vehicleTypeName", label: "车辆类型", onlyForLabel: true },
|
||||||
{ name: "visitStartTime", label: "访问开始时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
{
|
||||||
{ name: "visitEndTime", label: "访问结束时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
name: "visitStartTime",
|
||||||
|
label: "访问开始时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorTimeGECurrentDay({ type: "date" })],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "visitEndTime",
|
||||||
|
label: "访问结束时间",
|
||||||
|
render: FORM_ITEM_RENDER_ENUM.DATE,
|
||||||
|
rules: [validatorEndTime({ startTime: visitStartTime })],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "gateLevelAuthArea",
|
name: "gateLevelAuthArea",
|
||||||
label: "访问港区",
|
label: "访问港区",
|
||||||
|
|
|
||||||
|
|
@ -47,8 +47,8 @@ function List(props) {
|
||||||
options={[
|
options={[
|
||||||
{ name: "employeeVehicleUserName", label: "访问人姓名" },
|
{ name: "employeeVehicleUserName", label: "访问人姓名" },
|
||||||
{ name: "licenceNo", label: "车牌号" },
|
{ name: "licenceNo", label: "车牌号" },
|
||||||
{ name: "visitStartTime", label: "访问开始时间" },
|
{ name: "visitStartTime", label: "访问开始时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
||||||
{ name: "visitEndTime", label: "访问结束时间" },
|
{ name: "visitEndTime", label: "访问结束时间", render: FORM_ITEM_RENDER_ENUM.DATE },
|
||||||
{ name: "auditStatus", label: "审批状态", render: FORM_ITEM_RENDER_ENUM.SELECT, items: VEHICLE_AUDIT_STATUS_ENUM },
|
{ name: "auditStatus", label: "审批状态", render: FORM_ITEM_RENDER_ENUM.SELECT, items: VEHICLE_AUDIT_STATUS_ENUM },
|
||||||
{
|
{
|
||||||
name: "todo6",
|
name: "todo6",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue