import { Button, Space, Modal, FormInstance, Form, InputNumber, Select, SelectProps, } from "antd"; import { inject, observer } from "mobx-react"; import type { ColumnsType } from "antd/es/table"; import BTable from "@/components/b_table"; import { useEffect, useState } from "react"; import { UserDataType } from "@/model/userModel"; import { Store } from "antd/lib/form/interface"; import SimpleForm from "@/components/form/simple_form"; import React from "react"; import baseHttp from "@/service/base"; import MinusCircleOutlined from "@ant-design/icons/lib/icons/MinusCircleOutlined"; import { EmConfig } from "./em_column"; import TaskArchives from "../training/task_archives"; import EmUser from "./emUser"; const Emergency = (props: Store) => { const { emergencyStore, trainingStore } = props; const [isModalOpen, setIsModalOpen] = useState(false); const [emUserModel, setEmUserModel] = useState(false); const [projectConfig, setProjectConfig] = useState([]); const formRef = React.useRef(null); const [record, setRecord] = useState(null); const [identity, setIdentity] = useState(null); const [tagId, setId] = useState(null); const [userList, setUserList] = useState>([]); const [data, setData] = useState([]); const columns: ColumnsType = [ { title: "应急处突名称", dataIndex: "emergency_name" }, { title: "目标位置", dataIndex: "target_location" }, { title: "目标精度", dataIndex: "long" }, { title: "目标纬度", dataIndex: "lat" }, { title: "任务描述", dataIndex: "desc" }, { title: "完成状态", dataIndex: "status", render: (status) => status === 0 ? ( 进行中 ) : ( 已完成 ), }, { title: "物资归还状态", dataIndex: "supplies_status", render: (supplies_status) => supplies_status === 2 ? "已归还" : "未归还", }, { title: "操作", dataIndex: "id", render: (any, record) => ( {record.status === 0 ? ( ) : null} {record.supplies_status === 2 ? null : ( )} ), }, ]; const dele = (record) => { emergencyStore.deleteItem(record.identity); }; const edit = (record) => { setProjectConfig(EmConfig(userList)); setIsModalOpen(true); formRef.current?.setFieldsValue(record); setRecord(record); setId(record.id); }; const onFinish = (values: any) => { let data = { ...values, long: values.marker["lng"], lat: values.marker["lat"], }; if (!tagId) { emergencyStore.add(data); } else { emergencyStore.putItem(tagId, data); } setIsModalOpen(false); }; useEffect(() => { emergencyStore.getlist(); baseHttp.get("/user/list", null).then((res) => { let data = res.data?.record ?? []; data.forEach((item) => { item.label = item.account; item.value = item.identity; }); setUserList(data ?? []); }); }, [emergencyStore]); const onFinishFailed = () => {}; const handleSearch = (newValue: string) => { if (newValue === "") return; baseHttp.get("/supplies/list/serch", { name: newValue }).then((res) => { let data = res.data?.record ?? []; data.forEach((item) => { item.text = item.name; item.value = item.identity; }); setData(data ?? []); }); }; const handleChange = (newValue: string) => { // setValue(newValue); }; // 用户选择回调 return (
{ setEmUserModel(false); }} > formRef.current?.resetFields()} onOk={() => formRef.current?.submit()} okText="确定" cancelText="取消" onCancel={() => { setId(null); setIsModalOpen(false); }} > { formRef.current?.setFieldsValue(record); }} formName="card_basic" colProps={25} subBtnName="提交" formDatas={projectConfig} onFinish={onFinish} initialValues={true} childrenPosi={true} onFinishFailed={onFinishFailed} > {(fields, { add, remove }) => ( <> {fields.map(({ key, name, ...restField }) => ( <>