Browse Source

feat(): 错时车场管理page

tags/PMS_V1.0.0_Alpha5
wanghx 1 year ago
parent
commit
53074ee500
  1. 27
      src/components/TableModule/index.jsx
  2. 6
      src/pages/OffPeak/OffPeakShareRecords/ShareParkMgm/index.scss
  3. 208
      src/pages/OffPeak/OffPeakShareRecords/ShareParkMgm/loadable.jsx
  4. 195
      src/pages/OffPeak/OffPeakShareRecords/StallCount/loadable.jsx
  5. 21
      src/services/OffPeak/index.js

27
src/components/TableModule/index.jsx

@ -229,6 +229,14 @@ const TableModule = forwardRef((props, ref) => {
),
}
}
if (form.time) {
form = {
...form,
time: moment(form.time).format(
"YYYY-MM-DD"
)
}
}
if (areaName !== null) form[areaName] = areaSelectedList;
if (form.deal_time_start !== void 0 && form.deal_time_end !== void 0) {//
form.deal_time_start = moment(form.deal_time_start).format("YYYY-MM-DD HH:mm:ss");
@ -688,6 +696,19 @@ const TableModule = forwardRef((props, ref) => {
</Form.Item>
);
break;
case "datePicker":
children = (
<>
<Form.Item
label={item.label}
name={item.name}
key={item.name}
>
<DatePicker format={"YYYY-MM-DD"} allowClear={false} placement={"topLeft"} />
</Form.Item>
</>
)
break;
case "RangePicker":
children = (
<>
@ -816,6 +837,12 @@ const TableModule = forwardRef((props, ref) => {
),
};
}
if (form.time) {
form = {
...form,
time: moment(form.time).format('YYYY-MM-DD')
}
}
if (areaName !== null) form[areaName] = areaSelectedList;
if (form.start_time !== void 0 && form.end_time !== void 0) {
form.start_time = moment(form.start_time).format("YYYY-MM-DD HH:mm:ss");

6
src/pages/OffPeak/OffPeakShareRecords/ShareParkMgm/index.scss

@ -0,0 +1,6 @@
.share-park-btn {
color: #02A7F0;
&:hover {
cursor: pointer;
}
}

208
src/pages/OffPeak/OffPeakShareRecords/ShareParkMgm/loadable.jsx

@ -5,156 +5,116 @@ import { message, Pagination, Table, Space, Modal, Button } from "antd";
// import { useSessionStorageState, useUpdateEffect, useSize, useUpdate } from 'ahooks';
import ajax from "@/services";
import { TableModule } from "@/components";
// import "./index.scss";
import "./index.scss";
// import errorImg from "@/assets/images/layout/error.png"
// import { useLocation } from "react-router-dom";
function ShareParkMgm() {
const columns = [
// {
// title: "",
// dataIndex: "index",
// key: "index",
// align:"center",
// render: (_, record, index) => {
// return index + 1;
// },
// },
// {
// title: "",
// dataIndex: "merchantName",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "100px", wordBreak: "break-all" }}>{record.merchantName}</div>
// )
// },
// {
// title: "",
// dataIndex: "operator",
// key: "operator",
// align: "center",
// },
// {
// title: "",
// dataIndex: "licensePlateNumber",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "100px", wordBreak: "break-all" }}>{record.licensePlateNumber}</div>
// )
// },
// {
// title: "",
// dataIndex: "section",
// key: "section",
// align: "center",
// },
// {
// title: "",
// dataIndex: "parkingSpotNumber",
// key: "parkingSpotNumber",
// align: "center",
// },
// {
// title: "",
// dataIndex: "entryExitType",
// align: "center",
// key: "entryExitType",
// },
// {
// title: "",
// dataIndex: "entryExitTime",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "130px", wordBreak: "break-all" }}>{record.entryExitTime}</div>
// )
// },
// {
// title: "",
// dataIndex: "operationTime",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "130px", wordBreak: "break-all" }}>{record.operationTime}</div>
// )
// },
// {
// title: "",
// dataIndex: "intervalDuration",
// key: "intervalDuration",
// align: "center",
// },
{
title: "序号",
dataIndex: "index",
key: "index",
align:"center",
width: 80,
render: (_, record, index) => {
return index + 1;
},
},
{
title: '停车场名称',
dataIndex: 'park_name',
align: 'center',
},
{
title: '创建人',
dataIndex: 'create_person',
align: 'center',
},
{
title: '可预约车位数',
dataIndex: 'kyycws',
align: 'center',
width: 150
},
{
title: '时间规则',
dataIndex: 'time_rules',
align: 'center',
width: 150
},
{
title: '操作',
align: 'center',
render: (_, record) => {
return (
<>
<div className="share-park-btn" onClick={() => handleEdit(record)}>修改</div>
</>
)
}
}
];
const formSearch = [
// {
// type: "Select",
// label: "",
// name: "merchantName",
// placeholder:""
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "road_name",
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "parking_num",
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "operator",
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "exceedTime",
// },
// {
// type: "RangePicker",
// label: "",
// name: "operationTime",
// },
{
type: "Select",
label: "商户名称",
name: "merchantName",
placeholder:"请选择商户名称"
},
{
type: "Input",
label: "车场名称",
placeholder: "请输入车场名称",
name: "parkName",
hiddenCount: 1
},
{
type: "Input",
label: "创建人",
placeholder: "请输入创建人",
name: "createPerson",
hiddenCount: 1
}
];
const handleEdit = (data) => {
console.log(data)
}
//
const initFormData = {
merchantName: "0",
road_name: "",
parking_num: "",
operator: "",
exceedTime: "",
parkName: "",
createPerson: ""
};
//
const [tableData, setTableData] = useState([]);
//
const [total, setTotal] = useState(0);
function search(params) {
// ajax.getPDAList(params).then((res) => {
// if (res.status === 20000) {
// setTableData(res.data.list);
// setTotal(res.data.total);
// }
// });
ajax.getShareParkData(params).then((res) => {
if (res.status === 20000) {
setTableData(res.data.list);
setTotal(res.data.total);
}
});
}
return (
<TableModule
// columns={columns}
// tableData={tableData}
// formSearch={formSearch}
// search={search}
// total={total}
columns={columns}
tableData={tableData}
formSearch={formSearch}
search={search}
total={total}
// mandatory={'parking_num'}
// mandatory_name={''}
// pagename="PDA"
// pageName={'entryExitOptPDA'}
// initFormData={initFormData}
// exportUrl="/api/bpm/record/get_pda_export"
initFormData={initFormData}
exportUrl="/api/off_peak/park_info/get_share_park_list/export"
/>
);
}

195
src/pages/OffPeak/OffPeakShareRecords/StallCount/loadable.jsx

@ -1,7 +1,6 @@
import React, { useState, useRef, useEffect } from "react";
import { message, Pagination, Table, Space, Modal, Button } from "antd";
// import { dictionary, utils } from "@/config/common";
// import moment from 'moment'
import moment from 'moment'
// import { useSessionStorageState, useUpdateEffect, useSize, useUpdate } from 'ahooks';
import ajax from "@/services";
import { TableModule } from "@/components";
@ -9,152 +8,88 @@ import { TableModule } from "@/components";
// import errorImg from "@/assets/images/layout/error.png"
// import { useLocation } from "react-router-dom";
function StallCount() {
const columns = [
// {
// title: "",
// dataIndex: "index",
// key: "index",
// align:"center",
// render: (_, record, index) => {
// return index + 1;
// },
// },
// {
// title: "",
// dataIndex: "merchantName",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "100px", wordBreak: "break-all" }}>{record.merchantName}</div>
// )
// },
// {
// title: "",
// dataIndex: "operator",
// key: "operator",
// align: "center",
// },
// {
// title: "",
// dataIndex: "licensePlateNumber",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "100px", wordBreak: "break-all" }}>{record.licensePlateNumber}</div>
// )
// },
// {
// title: "",
// dataIndex: "section",
// key: "section",
// align: "center",
// },
// {
// title: "",
// dataIndex: "parkingSpotNumber",
// key: "parkingSpotNumber",
// align: "center",
// },
// {
// title: "",
// dataIndex: "entryExitType",
// align: "center",
// key: "entryExitType",
// },
// {
// title: "",
// dataIndex: "entryExitTime",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "130px", wordBreak: "break-all" }}>{record.entryExitTime}</div>
// )
// },
// {
// title: "",
// dataIndex: "operationTime",
// align: "center",
// render: (text, record, index) => (
// <div style={{ width: "130px", wordBreak: "break-all" }}>{record.operationTime}</div>
// )
// },
// {
// title: "",
// dataIndex: "intervalDuration",
// key: "intervalDuration",
// align: "center",
// },
{
title: '日期',
dataIndex: 'time',
width: 180,
align: 'center'
},
{
title: '停车场名称',
dataIndex: 'parkName',
width: 200,
align: 'center'
},
{
title: '总车位数',
dataIndex: 'total',
width: 200,
align: 'center'
},
{
title: '总可预约车位数',
dataIndex: 'zkyycws',
width: 200,
align: 'center'
},
{
title: '已预约车位数',
dataIndex: 'yyycws',
width: 200,
align: 'center'
},
{
title: '剩余可预约车位数',
dataIndex: 'sykyycws',
width: 200,
align: 'center'
}
];
const formSearch = [
// {
// type: "Select",
// label: "",
// name: "merchantName",
// placeholder:""
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "road_name",
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "parking_num",
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "operator",
// },
// {
// type: "Input",
// label: "",
// placeholder: "",
// name: "exceedTime",
// },
// {
// type: "RangePicker",
// label: "",
// name: "operationTime",
// },
{
type: 'datePicker',
label: '时间',
name: 'time'
},
{
type: 'Input',
label: '车场名称',
name: 'parkName',
placeholder: '请输入车场名称',
hiddenCount: 1
}
];
//
const initFormData = {
merchantName: "0",
road_name: "",
parking_num: "",
operator: "",
exceedTime: "",
time: moment().startOf("day"),
parkName: ""
};
//
const [tableData, setTableData] = useState([]);
//
const [total, setTotal] = useState(0);
function search(params) {
// ajax.getPDAList(params).then((res) => {
// if (res.status === 20000) {
// setTableData(res.data.list);
// setTotal(res.data.total);
// }
// });
ajax.getStallCountData(params).then((res) => {
if (res.status === 20000) {
setTableData(res.data.list);
setTotal(res.data.total);
}
});
}
return (
<TableModule
// columns={columns}
// tableData={tableData}
// formSearch={formSearch}
// search={search}
// total={total}
// mandatory={'parking_num'}
// mandatory_name={''}
// pagename="PDA"
// pageName={'entryExitOptPDA'}
// initFormData={initFormData}
// exportUrl="/api/bpm/record/get_pda_export"
columns={columns}
tableData={tableData}
formSearch={formSearch}
search={search}
total={total}
initFormData={initFormData}
exportUrl="/api/off_peak/park_info/get_park_list/export"
/>
);
}

21
src/services/OffPeak/index.js

@ -6,6 +6,25 @@ const getBookInfoList = (params) => {
data: params,
});
}
const getStallCountData = (params) => {
return ajax({
url: "/api/off_peak/park_info/get_park_list",
type: "get",
data: params,
});
}
const getShareParkData = (params) => {
return ajax({
url: "/api/off_peak/park_info/get_share_park_list",
type: "get",
data: params,
});
}
export default {
getBookInfoList
getBookInfoList,
getStallCountData,
getShareParkData
}
Loading…
Cancel
Save