| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- import {Button, Table} from "antd";
- import {useEffect, useState} from "react";
- import ModalHooks from "./components/modal.jsx";
- import "./classCompletionRate.scss";
- import axios from "@/utils/axios.js";
- import DeleteButton from "@/components/delete.jsx";
- const {Column} = Table;
- export default function ClassCompletionRate() {
- // 页面数据
- const [data, setData] = useState([]);
- // 是否展示弹框
- const [isModalOpen, setIsModalOpen] = useState(false);
- const [row, setRow] = useState({});
- // 新增用户页面
- function addUser() {
- setRow([]);
- setIsModalOpen(true);
- }
- // 关闭页面
- function closeModal() {
- setIsModalOpen(false);
- getData()
- }
- // 点击修改的回调
- function modify(data) {
- setRow(data);
- setIsModalOpen(true);
- }
- // 线路下拉框
- const [option, setOption] = useState([])
- // 线路数据
- const [lineList, setLineList] = useState([])
- /**
- * 线路数据请求
- * @returns {Promise<void>}
- */
- async function getLineData() {
- let {data} = await await axios.get("/busLine/getList", {params: {hasModel: 1}})
- setLineList(data)
- let option = data.map(item => {
- return {
- label: item.lineName,
- value: item.lineId,
- }
- })
- setOption(option)
- }
- // 获取数据
- async function getData() {
- let {data} = await axios.get("/homePage/getClassesCompletionRate");
- setData(data);
- }
- // 设置线路名称
- function setText(text) {
- let it = option.find((item) => item.value === text)?.label
- return it
- }
- useEffect(() => {
- getLineData()
- getData();
- }, []);
- return (
- <div className="completion">
- <div className="top">
- <div className="button">
- <Button type="primary" onClick={addUser}>
- 添加完成率
- </Button>
- </div>
- </div>
- <Table
- dataSource={data}
- bordered={true}
- rowKey="id"
- pagination={false}
- scroll={{y: 900}}
- >
- <Column title="线路名称" dataIndex="lineName" key="id"></Column>
- <Column title="跑法" dataIndex="modelId" key="id" render={(text) =>
- !text ? '上行' : '下行'
- }/>
- <Column title="计划" dataIndex="planClasses" key="id"/>
- <Column title="实际" dataIndex="realityClasses" key="id"/>
- <Column title="开始站点" dataIndex="startStation" key="id"/>
- <Column title="结束站点" dataIndex="endStation" key="id"/>
- <Column title="车牌" dataIndex="licensePlate" key="id"/>
- <Column
- title="操作"
- width="170px"
- dataIndex="id"
- key="id"
- render={(text, record) => (
- <div className="btn">
- <Button type="primary" onClick={() => modify(record)}>
- 修改
- </Button>
- <DeleteButton url='/homePageEdit/delClassesCompletionRate' id={text}
- getData={getData}></DeleteButton>
- </div>
- )}
- />
- </Table>
- <ModalHooks
- isModalOpen={isModalOpen}
- closeModal={closeModal}
- row={row}
- option={option}
- lineList={lineList}
- ></ModalHooks>
- </div>
- );
- }
|