diff --git a/src/components/Accountant/Query.jsx b/src/components/Accountant/Query.jsx index 0b90bc84792a0922ee6284e12207951d8bd1f95e..521dadd0dc5fb2025aa86f7ad58813a7fddf5673 100644 --- a/src/components/Accountant/Query.jsx +++ b/src/components/Accountant/Query.jsx @@ -14,11 +14,16 @@ import InputArea from "../InputArea"; import Selector from "../Selector"; import OrderDetail from "./OrderDetail"; +// 单据查询 const Query = () => { - const [cate, setCate] = useState(5); + const [cate, setCate] = useState(6); const [status, setStatus] = useState(3); + const [ownerIC, setOwnerIC] = useState(null); + const [curData, setCurData] = useState(""); - const [mockOrderData, setMockOrderData] = useState([]); + const [searchRes, setSearchRes] = useState([]); + const [orderData, setOrderData] = useState([]); + const [isModalVisible, setIsModalVisible] = useState(false); const navigate = useNavigate(); @@ -38,21 +43,56 @@ const Query = () => { const searchHandler = (e) => { e.preventDefault(); - const [type, state, input] = document.forms[0]; - console.log(type.value, state.value, input.value); + if (!ownerIC) { + if (+cate === 6 && +status === 3) { + setSearchRes(orderData); + } else if (+cate !== 6 && +status !== 3) { + setSearchRes( + orderData.filter((data) => data.type == cate && data.status == status) + ); + } else if (+cate !== 6 && +status === 3) { + setSearchRes(orderData.filter((data) => data.type == cate)); + } else if (+cate === 6 && +status !== 3) { + setSearchRes(orderData.filter((data) => data.status == status)); + } + } else { + if (+cate === 6 && +status === 3) { + setSearchRes(orderData.filter((data) => data.buyer == ownerIC)); + } else if (+cate !== 6 && +status !== 3) { + setSearchRes( + orderData.filter( + (data) => + data.type == cate && + data.status == status && + data.buyer == ownerIC + ) + ); + } else if (+cate !== 6 && +status === 3) { + setSearchRes( + orderData.filter((data) => data.type == cate && data.buyer == ownerIC) + ); + } else if (+cate === 6 && +status !== 3) { + setSearchRes( + orderData.filter( + (data) => data.status == status && data.buyer == ownerIC + ) + ); + } + } }; const manageHandler = (record) => { if (record.type === 3) { - navigate("ware-in",{state:{record:record}}); - } else if (record.type === 4) { - navigate("ware-out",{state:{record:record}}); + navigate("ware-in", { state: { record: record } }); + } else if (record.type === 5) { + navigate("ware-out", { state: { record: record } }); } }; useEffect(() => { axios.get("/admin/accountant/order-query").then((res) => { - setMockOrderData(res.data.result.list); + setOrderData(res.data.result.list); + setSearchRes(res.data.result.list); }); }, []); @@ -81,12 +121,12 @@ const Query = () => { render: (record) => { return ( <> - + */} + { const [userInput, setUserInput] = useState(""); @@ -24,7 +23,9 @@ const LoginCard = () => { const getCode = (e) => { e.stopPropagation(); axios - .get("http://localhost:8081/code", { withCredentials: true }) + .get("http://120.24.82.152:8080/passport/generate-code", { + withCredentials: true, + }) .then((res) => { setImgCode(res.data); }) @@ -39,28 +40,37 @@ const LoginCard = () => { if (uname.value === "12" && upw.value === "12") { setLoginSucc(true); onLogin(accounts.filter((item) => item.username === uname.value)); - } else if (uname.value === "34" && upw.value === "34") { - setLoginSucc(true); - onLogin(accounts.filter((item) => item.username === uname.value)); } axios - .get( - "http://localhost:8081/login", - { params: { username: uname, password: upw, code: ucode } }, - { withCredentials: true } + .post( + "http://120.24.82.152:8080/passport/employeelogin", + {}, + { + params: { + username: uname.value, + password: upw.value, + code: ucode.value, + }, + withCredentials: true, + } ) .then((res) => { + console.log(res); + // onLogin setLoginSucc(true); }) .catch((error) => { setLoginFail(true); - console.log(error); + // console.log(error) + console.log(JSON.stringify(error)); }); }; useEffect(() => { axios - .get("http://localhost:8081/code", { withCredentials: true }) + .get("http://120.24.82.152:8080/passport/generate-code", { + withCredentials: true, + }) .then((res) => { setImgCode(res.data); }) @@ -118,8 +128,13 @@ const LoginCard = () => { )} - - +
+ +
); diff --git a/src/components/System/Employee/AddEmployee.jsx b/src/components/System/Employee/AddEmployee.jsx index 00111ca060688111a25ba2ff279835e13a17e119..8a4783a4087646666181e0881d12ed704f912087 100644 --- a/src/components/System/Employee/AddEmployee.jsx +++ b/src/components/System/Employee/AddEmployee.jsx @@ -1,11 +1,11 @@ -import React, { useState } from "react"; +import React, { useState, useEffect } from "react"; import InputArea from "../../InputArea"; const editCSS = "pl-0 my-1 rounded border-2 border-b-blue-200 outline-none focus:ring focus:ring-blue-300 focus:border-white duration-150 ease-in"; -const AddEmployee = ({ addSex, addStatus }) => { +const AddEmployee = ({ addSex, addStatus, updateAddInfo }) => { const [name, setName] = useState(null); const [username, setUsername] = useState(null); const [password, setPassword] = useState(null); @@ -22,6 +22,10 @@ const AddEmployee = ({ addSex, addStatus }) => { addStatus(e.target.value); }; + useEffect(() => { + updateAddInfo(name && username && password); + }, [name, username, password]); + return (
diff --git a/src/components/System/Employee/Employee.jsx b/src/components/System/Employee/Employee.jsx index 5179f9e53dea7f1ebf8e6236baa4f71c22ea7231..b934a0ba98f11dd1c66b31528ccc9bd0f795af2d 100644 --- a/src/components/System/Employee/Employee.jsx +++ b/src/components/System/Employee/Employee.jsx @@ -14,6 +14,8 @@ const Employee = () => { const [searchRes, setSearchRes] = useState([]); const [employeeData, setEmployeeData] = useState([]); + const [isAddInfoCompleted, setIsAddInfoCompleted] = useState(false); + const [loading, setLoading] = useState(false); const [isModalVisible, setIsModalVisible] = useState(false); const [isAddModalVisible, setIsAddModalVisible] = useState(false); @@ -26,14 +28,6 @@ const Employee = () => { const [addSex, setAddSex] = useState(null); const [addStatus, setAddStatus] = useState(null); - const updateSex = (sex) => { - setEditSex(sex); - }; - - const updateStatus = (status) => { - setEditStatus(status); - }; - const showModal = (item) => { setCurData(item); setIsModalVisible(true); @@ -67,7 +61,7 @@ const Employee = () => { }; const showDeleteModal = (item) => { - console.log(item) + console.log(item); setIsDeleteModalVisible(true); }; @@ -116,6 +110,7 @@ const Employee = () => { editSex, editStatus ); + // priority null setTimeout(() => { setLoading(false); setIsModalVisible(false); @@ -124,8 +119,15 @@ const Employee = () => { const handleAddSubmit = (e) => { e.preventDefault(); - const [name, username, password] = document.forms[1]; - console.log(name.value, username.value, password.value, addSex, addStatus); + const [id, name, username, password] = document.forms[1]; + console.log( + id.value, + name.value, + username.value, + password.value, + addSex, + addStatus + ); setTimeout(() => { setLoading(false); setIsAddModalVisible(false); @@ -258,8 +260,6 @@ const Employee = () => { closable={false} onOk={handleOk} onCancel={handleCancel} - // okText={"确认"} - // cancelText={"放弃修改"} footer={[
+ + + + + + + + + + {isExchangeType && ( + <> + + + + + + + + + + )} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
单据发起人IC + setIc(e.target.value)} + className={editCSS} + /> +
单据类型 + { + setCate(e.target.value); + if (e.target.value === "4") { + setIsExchangeType(true); + } else { + setIsExchangeType(false); + } + }} + categories={wareCategories.filter( + (item) => item.id > 2 && item.id !== 6 + )} + /> +
买家IC + setBuyerIC(e.target.value)} + className={editCSS} + /> +
卖家IC + setSellerIC(e.target.value)} + className={editCSS} + /> +
单据重量 + setWeight(e.target.value)} + className={editCSS} + /> +
单据总价格 + setTotalPrice(e.target.value)} + className={editCSS} + /> +
力资费 + setPrice(e.target.value)} + className={editCSS} + /> +
单据状态 + setStatus(e.target.value)} + categories={statusCategories.filter((item) => item.id !== 3)} + /> +
货物名称 + setGoodsName(e.target.value)} + className={editCSS} + /> +
货物类型 + setGoodsType(e.target.value)} + className={editCSS} + /> +
货物数量 + setGoodsNum(value)} + /> +
货物库存费 + setGoodsFee(value)} + /> +
+
+ ); +}; + +export default AddOrder; diff --git a/src/components/System/Order/Order.jsx b/src/components/System/Order/Order.jsx index 90360d64304a21baa8f9272c3c03004fc6f9a1ca..5e703703ac5b1c7975f7795878efcebff5e36a2f 100644 --- a/src/components/System/Order/Order.jsx +++ b/src/components/System/Order/Order.jsx @@ -1,6 +1,6 @@ import React, { useState, useEffect } from "react"; import axios from "axios"; -import { Modal, Table } from "antd"; +import { Modal, Table, Button } from "antd"; import { FiSearch } from "react-icons/fi"; import { @@ -12,14 +12,23 @@ import { import Selector from "../../Selector"; import InputArea from "../../InputArea"; import EditOrder from "./EditOrder"; +import AddOrder from "./AddOrder"; const Order = () => { - const [cate, setCate] = useState(5); + const [cate, setCate] = useState(6); const [status, setStatus] = useState(3); + const [ownerIC, setOwnerIC] = useState(null); + const [curData, setCurData] = useState(""); const [searchRes, setSearchRes] = useState([]); - const [mockOrderData, setMockOrderData] = useState([]); + const [orderData, setOrderData] = useState([]); + + const [isAddInfoCompleted, setIsAddInfoCompleted] = useState(false); + + const [loading, setLoading] = useState(false); const [isModalVisible, setIsModalVisible] = useState(false); + const [isAddModalVisible, setIsAddModalVisible] = useState(false); + const [isDeleteModalVisible, setIsDeleteModalVisible] = useState(false); const [isCancelModalVisible, setIsCancelModalVisible] = useState(false); const showModal = (item) => { @@ -27,11 +36,25 @@ const Order = () => { setIsModalVisible(true); }; + const showAddModal = () => { + setIsAddModalVisible(true); + }; + + const showDeleteModal = (item) => { + console.log(item); + setIsDeleteModalVisible(true); + }; + const handleOk = (e) => { - setIsModalVisible(false); + setLoading(true); handleEditSubmit(e); }; + const handleAddOk = (e) => { + setLoading(true); + handleAddSubmit(e); + }; + const handleCancel = () => { setIsCancelModalVisible(true); }; @@ -39,25 +62,64 @@ const Order = () => { const secondHandleOk = () => { setIsCancelModalVisible(false); setIsModalVisible(false); + setIsAddModalVisible(false); }; const secondHandleCancel = () => { setIsCancelModalVisible(false); }; + const deleteHandleOk = () => { + // axios get + //resolved + setIsDeleteModalVisible(false); + //rejected + // 出错啦... + }; + + const deleteHandleCancel = () => { + setIsDeleteModalVisible(false); + }; + const searchHandler = (e) => { e.preventDefault(); - const [type, status, input] = document.forms[0]; - console.log((type.value),status.value) - // todo - if (+(type.value) === 5 && +(status.value) === 3) { - setSearchRes(mockOrderData); - } else if (type.value !== 5 && status.value !== 3) { - setSearchRes( - mockOrderData.filter( - (data) => data.type === type.value && data.status === status.value - ) - ); + // console.log(cate, status, ownerIC); + + if (!ownerIC) { + if (+cate === 6 && +status === 3) { + setSearchRes(orderData); + } else if (+cate !== 6 && +status !== 3) { + setSearchRes( + orderData.filter((data) => data.type == cate && data.status == status) + ); + } else if (+cate !== 6 && +status === 3) { + setSearchRes(orderData.filter((data) => data.type == cate)); + } else if (+cate === 6 && +status !== 3) { + setSearchRes(orderData.filter((data) => data.status == status)); + } + } else { + if (+cate === 6 && +status === 3) { + setSearchRes(orderData.filter((data) => data.buyer == ownerIC)); + } else if (+cate !== 6 && +status !== 3) { + setSearchRes( + orderData.filter( + (data) => + data.type == cate && + data.status == status && + data.buyer == ownerIC + ) + ); + } else if (+cate !== 6 && +status === 3) { + setSearchRes( + orderData.filter((data) => data.type == cate && data.buyer == ownerIC) + ); + } else if (+cate === 6 && +status !== 3) { + setSearchRes( + orderData.filter( + (data) => data.status == status && data.buyer == ownerIC + ) + ); + } } }; @@ -65,6 +127,21 @@ const Order = () => { e.preventDefault(); const [amount, price] = document.forms[1]; console.log(amount.value, price.value); + + setTimeout(() => { + setLoading(false); + setIsModalVisible(false); + }, 1500); + }; + + const handleAddSubmit = (e) => { + e.preventDefault(); + const [something] = document.forms[1]; + + setTimeout(() => { + setLoading(false); + setIsAddModalVisible(false); + }, 1500); }; const columns = [ @@ -83,8 +160,8 @@ const Order = () => { render: (record) => orderStatus[record], }, { - title: "订单拥有者", - dataIndex: "owner", + title: "货主IC", + dataIndex: "buyer", }, { title: "操作", @@ -100,7 +177,7 @@ const Order = () => { - @@ -175,16 +258,70 @@ const Order = () => { title="单据信息" visible={isModalVisible} closable={false} - onOk={handleOk} - onCancel={handleCancel} - okText={"确认"} - cancelText={"放弃修改"} + footer={[ + , + , + ]} >
)} + + {/* Add Modal */} + {isAddModalVisible && ( + + {"放弃修改"} + , + , + ]} + > +
+ setIsAddInfoCompleted(status)} + /> + +
+ )} + + {/* Delete Modal */} + {isDeleteModalVisible && ( + + ⚠️ 确定删除该单据吗? + + )} + + {/* Cancel Modal */} {isCancelModalVisible && ( { + const [repositoryId, setRepositoryId] = useState(null); + const [repositoryName, setRepositoryName] = useState(null); + const [repositoryPosition, setRepositoryPosition] = useState(null); + + useEffect(() => { + updateAddInfo(repositoryId && repositoryName && repositoryPosition); + }, [repositoryId, repositoryName, repositoryPosition]); -const AddItem = ({onOk, onCancel}) => { return (
-
- - -
+ + + + + + + + + + + + + + + + +
仓库ID + setRepositoryId(e.target.value)} + className={editCSS} + /> +
仓库名 + setRepositoryName(e.target.value)} + className={editCSS} + /> +
仓库地址 + setRepositoryPosition(e.target.value)} + className={editCSS} + /> +
); }; -export default AddItem; \ No newline at end of file +export default AddItem; diff --git a/src/components/System/Ware/AddPosition.jsx b/src/components/System/Ware/AddPosition.jsx new file mode 100644 index 0000000000000000000000000000000000000000..4b2b856af5e3c1eb2dca32edd85948eee106eb3f --- /dev/null +++ b/src/components/System/Ware/AddPosition.jsx @@ -0,0 +1,90 @@ +import React, { useState, useEffect } from "react"; + +import InputArea from "../../InputArea"; + +const editCSS = + "pl-0 my-1 rounded border-2 border-b-blue-200 outline-none focus:ring focus:ring-blue-300 focus:border-white duration-150 ease-in"; + +const AddPosition = ({ id, updateAddInfo, addStatus }) => { + const [positionId, setPositionId] = useState(null); + const [positionNum, setPositionNum] = useState(null); + const [positionRepository, setPositionRepository] = useState(id); + const [positionStatus, setPositionStatus] = useState(1); + + const handleStatusChange = (e) => { + setPositionStatus(e.target.value); + addStatus(e.target.value); + }; + + useEffect(() => { + addStatus(1); + }, []); + + useEffect(() => { + updateAddInfo(positionId && positionNum && positionRepository); + }, [positionId, positionNum, positionRepository, positionStatus]); + + return ( +
+ + + + + + + + + + + + + + + + + + + + +
仓位编号 + setPositionId(e.target.value)} + className={editCSS} + /> +
仓库号 + {positionRepository} +
仓位号 + setPositionNum(e.target.value)} + className={editCSS} + /> +
仓位情况 +
+
+ + +
+
+ + +
+
+
+
+ ); +}; + +export default AddPosition; diff --git a/src/components/System/Ware/EditRepo.jsx b/src/components/System/Ware/EditRepo.jsx new file mode 100644 index 0000000000000000000000000000000000000000..964525f755cafcd8c86e5e3c18046644b48b99cd --- /dev/null +++ b/src/components/System/Ware/EditRepo.jsx @@ -0,0 +1,58 @@ +import React, { useState, useEffect } from "react"; + +import InputArea from "../../InputArea"; + +const editCSS = + "pl-0 my-1 rounded border-2 border-b-blue-200 outline-none focus:ring focus:ring-blue-300 focus:border-white duration-150 ease-in"; + +const EditRepo = ({ data, updateEditInfo }) => { + const [repositoryId, setRepositoryId] = useState(data.id); + const [repositoryName, setRepositoryName] = useState(data.name); + const [repositoryPosition, setRepositoryPosition] = useState(data.position); + + useEffect(() => { + updateEditInfo(repositoryId && repositoryName && repositoryPosition); + }, [repositoryId, repositoryName, repositoryPosition]); + + return ( +
+ + + + + + + + + + + + + + + + +
仓库ID + setRepositoryId(e.target.value)} + className={editCSS} + /> +
仓库名 + setRepositoryName(e.target.value)} + className={editCSS} + /> +
仓库地址 + setRepositoryPosition(e.target.value)} + className={editCSS} + /> +
+
+ ); +}; + +export default EditRepo; diff --git a/src/components/System/Ware/WareCard.jsx b/src/components/System/Ware/WareCard.jsx index eeaea702c595cddb74d12247105b1def4cbbed23..a83284f8eda2ad4e497dc3f6b7263411474fe8a7 100644 --- a/src/components/System/Ware/WareCard.jsx +++ b/src/components/System/Ware/WareCard.jsx @@ -1,56 +1,93 @@ -import React, { useState } from "react"; +import React, { useState, useEffect } from "react"; import { IoMdAdd } from "react-icons/io"; import { BsFillSquareFill } from "react-icons/bs"; -import { Modal } from "antd"; +import { Modal, Button } from "antd"; -import { positionData } from "../../../utils/data"; +import { mockPositionData } from "../../../utils/data"; import WarePositionItem from "./WarePositionItem"; import WarePositionDetail from "./WarePositionDetail"; -import AddItem from "./AddItem"; +import AddPosition from "./AddPosition"; //仓位(下半部分 -const WareCard = ({ id }) => { +const WareCard = ({ repo }) => { + console.log(repo); + const [formAddStatus, setFormAddStatus] = useState(null); + const [positionData, setPositionData] = useState([]); + // const [positionData, setPositionData] = useState(repo.list); + const [isPositionUpdate, setIsPositionUpdate] = useState(false); + + const [isAddPositionCompleted, setIsAddPositionCompleted] = useState(false); + + const [loading, setLoading] = useState(false); const [isPositionVisible, setIsPositionVisible] = useState(false); const [isPositionDetailVisible, setIsPositionDetailVisible] = useState(false); const showPositionAdd = () => { setIsPositionVisible(true); }; + const showPositionDetail = () => { setIsPositionDetailVisible(true); }; - const createHandleOk = () => { - setIsPositionVisible(false); + + const createHandleOk = (e) => { + handleAddPositionSubmit(e); }; const createHandleCancel = () => { setIsPositionVisible(false); }; + const handleAddPositionSubmit = (e) => { + e.preventDefault(); + const [positionId, positionNum] = document.forms[0]; + console.log(positionId.value, positionNum.value, repo.id, formAddStatus); + + //axios post /admin/system/ware-manage/addPosition + //params + //positionId:positionId.value, + //positionNum:positionNum.value, + //positionRepository:id, + //positionStatus:formAddStatus + //then setIsPositionVisible(false); + //update setIsPositionUpdate(pre=>!pre) + setTimeout(() => { + setIsPositionVisible(false); + }, 500); + }; + + useEffect(() => { + //axios get /admin/system/ware-manage/queryPosition + //params + //id:id + //then setPositionData + }, []); + + useEffect(() => { + //axios get /admin/system/ware-manage/queryPosition + //params + //id:id + //then setPositionData + }, [isPositionUpdate]); + return (
- +
- - -
-
- {/* {positionData + {mockPositionData && ( + <> +
+ {/* {positionData .filter((item) => item.repository === id) .map((item) => ( { onClick={showPositionDetail} /> ))} */} - {positionData.map((item) => ( - - ))} -
-
-
-
- - {"使用中"} + {mockPositionData.map((item) => ( + + ))}
-
- - {"空闲"} +
+
+
+ + {"使用中"} +
+
+ + {"空闲"} +
+
-
-
+ + )}
+ {isPositionDetailVisible && } + + {isPositionVisible && ( + + {"取消"} + , + , + ]} + > +
+ setIsAddPositionCompleted(status)} + addStatus={(value) => setFormAddStatus(value)} + /> + +
+ )}
); }; diff --git a/src/components/System/Ware/WareManage.jsx b/src/components/System/Ware/WareManage.jsx index 192dff7da89c599660411bc47122cac6145171e5..702987f98e3ffbc773b549bee15581a15fd8df17 100644 --- a/src/components/System/Ware/WareManage.jsx +++ b/src/components/System/Ware/WareManage.jsx @@ -1,39 +1,125 @@ import React, { useState, useEffect } from "react"; import axios from "axios"; -import { Table, Modal } from "antd"; +import { Table, Modal, Button } from "antd"; import WareInfo from "./WareInfo"; import WareCard from "./WareCard"; import AddItem from "./AddItem"; +import EditRepo from "./EditRepo"; +// 仓库管理 const WareManage = () => { const [curWare, setCurWare] = useState(""); + const [mockWareData, setMockWareData] = useState([]); + + const [isAddInfoCompleted, setIsAddInfoCompleted] = useState(false); + const [isEditInfoCompleted, setIsEditInfoCompleted] = useState(false); + const [repoChange, setRepoChange] = useState(false); + + const [loading, setLoading] = useState(false); const [isWareInfoVisible, setIsWareInfoVisible] = useState(false); const [isWareCreateVisible, setIsWareCreateVisible] = useState(false); + const [isEditVisible, setIsEditVisible] = useState(false); + const [isDeleteModalVisible, setIsDeleteModalVisible] = useState(false); + const [isCancelModalVisible, setIsCancelModalVisible] = useState(false); const showWareCreateModal = () => { setIsWareCreateVisible(true); }; + const showWareInfo = (record) => { - setCurWare(record.id); + setCurWare(record); setIsWareInfoVisible(true); }; - const createHandleOk = () => { - setIsWareCreateVisible(false); + + const showEdit = (record) => { + setCurWare(record); + setIsEditVisible(true); }; - const createHandleCancel = () => { + const createHandleOk = (e) => { + setLoading(true); + handleAddSubmit(e); + }; + + const editHandleOk = (e) => { + setLoading(true); + handleEditSubmit(e); + }; + + const secondHandleOk = () => { + setIsCancelModalVisible(false); setIsWareCreateVisible(false); + setIsEditVisible(false); + }; + + const secondHandleCancel = () => { + setIsCancelModalVisible(false); + }; + + const showDeleteModal = (record) => { + setCurWare(record.id); + setIsDeleteModalVisible(true); + }; + + const deleteHandleOk = () => { + // axios get /admin/system/ware-manage/deleteRepository + //id=curWare + //then setRepoChange(pre=>!pre) + setIsDeleteModalVisible(false); + //catch + // 出错啦... + }; + + const deleteHandleCancel = () => { + setIsDeleteModalVisible(false); + }; + + const handleAddSubmit = (e) => { + e.preventDefault(); + const [a, b, c] = document.forms[0]; + console.log(a.value, b.value, c.value); + //axios post localhost:8080/admin/system/ware-manage/addRepository + //const repository = Object.assign({},{id:a.value,name:b.value,position:c.value}) + //then setRepoChange(pre=>!pre) + setTimeout(() => { + setLoading(false); + setIsWareCreateVisible(false); + }, 1500); + }; + + const handleEditSubmit = (e) => { + e.preventDefault(); + const [a, b, c] = document.forms[0]; + console.log(a.value, b.value, c.value); + //axios post + // localhost:8080/admin/system/ware-manage/updateRepository + //const repository = Object.assign({},{id:a.value,name:b.value,position:c.value}) + //params id name position + + //then setRepoChange(pre=>!pre) + setTimeout(() => { + setLoading(false); + setIsEditVisible(false); + }, 1500); }; useEffect(() => { - axios - .get("/admin/system/ware-manage") //接口地址与拦截地址要一致 - .then((res) => { - setMockWareData(res.data.result.list); - }); + ///admin/system/ware-manage/queryAll + //res.data.data + axios.get("/admin/system/ware-manage").then((res) => { + setMockWareData(res.data.result.list); + }); }, []); + useEffect(() => { + ///admin/system/ware-manage/queryAll + //res.data.data + axios.get("/admin/system/ware-manage").then((res) => { + setMockWareData(res.data.result.list); + }); + }, [repoChange]); + const columns = [ { title: "仓库号", @@ -60,12 +146,17 @@ const WareManage = () => { 查看仓位 - + ); }, @@ -82,14 +173,6 @@ const WareManage = () => { > {"添加仓库"} - - -
{/* Info Area */} @@ -105,8 +188,105 @@ const WareManage = () => { y: 240, }} /> - {isWareInfoVisible && } + {isWareInfoVisible && }
+ + {/* Add Ware */} + {isWareCreateVisible && ( + { + setIsCancelModalVisible(true); + }} + > + {"取消"} + , + , + ]} + > +
+ setIsAddInfoCompleted(status)} + /> + +
+ )} + + {/* Edit Ware */} + {isEditVisible && ( + { + setIsCancelModalVisible(true); + }} + > + {"取消"} + , + , + ]} + > +
+ setIsEditInfoCompleted(status)} + /> + +
+ )} + + {/* Delete Modal */} + {isDeleteModalVisible && ( + + ⚠️ 确定删除该仓库吗? + + )} + + {/* Cancel Modal */} + {isCancelModalVisible && ( + + ⚠️ 确定放弃修改吗? + + )} ); }; diff --git a/src/components/WareClerk/Tasks.jsx b/src/components/WareClerk/Tasks.jsx index eb0535e53c9ee509dfb28eed7a994917fdfc9e7f..71b81fd105cfac7a8c6dcf4d8382e68a13e1e5d2 100644 --- a/src/components/WareClerk/Tasks.jsx +++ b/src/components/WareClerk/Tasks.jsx @@ -9,22 +9,23 @@ import { taskCategories } from "../../utils/data"; const Tasks = () => { const [cate, setCate] = useState(3); - const [mockOrderData, setMockOrderData] = useState([]); + + const [orderData, setOrderData] = useState([]); const [searchRes, setSearchRes] = useState([]); const cateHandler = (e) => { e.preventDefault(); const [type] = document.forms[0]; if (type.value === "3") { - setSearchRes(mockOrderData); + setSearchRes(orderData); } else { - setSearchRes(mockOrderData.filter((data) => data.type == type.value)); + setSearchRes(orderData.filter((data) => data.type == type.value)); } }; useEffect(() => { axios.get("/admin/accountant/order-query").then((res) => { - setMockOrderData( + setOrderData( res.data.result.list.filter( (data) => data.type === 0 || data.type === 2 ) diff --git a/src/components/WareManager/Stock.jsx b/src/components/WareManager/Stock.jsx index 92783ad32404ef9af53dbed530fce8d9a22d5572..0adaaab285e205d5611e2e405011c83d98b32c8c 100644 --- a/src/components/WareManager/Stock.jsx +++ b/src/components/WareManager/Stock.jsx @@ -13,7 +13,7 @@ const Stock = () => { // console.log(date, dateString); }; - const [cate, setCate] = useState(null); + const [cate, setCate] = useState(-1); //-1是全部 const [time, setTime] = useState(null); const [info, setInfo] = useState(null); @@ -61,21 +61,21 @@ const Stock = () => { ]; const query = (event) => { - if (!cate && !time && !info) { + if (cate == -1 && !time && !info) { setSearchRes(dataSource); - } else if (cate && !time && !info) { + } else if (cate != -1 && !time && !info) { setSearchRes(dataSource.filter((item) => item.repository == cate)); - } else if (!cate && time && !info) { + } else if (cate == -1 && time && !info) { setSearchRes( dataSource.filter((item) => item.time.split(" ")[0] == time) ); - } else if (!cate && !time && info) { + } else if (cate == -1 && !time && info) { setSearchRes( dataSource.filter( (item) => item.owner == info || item.type == info || item.name == info ) ); - } else if (!cate && time && info) { + } else if (cate == -1 && time && info) { setSearchRes( dataSource.filter( (item) => @@ -83,13 +83,13 @@ const Stock = () => { (item.owner == info || item.type == info || item.name == info) ) ); - } else if (cate && time && !info) { + } else if (cate != -1 && time && !info) { setSearchRes( dataSource.filter( (item) => item.time.split(" ")[0] == time && item.repository == cate ) ); - } else if (cate && !time && info) { + } else if (cate != -1 && !time && info) { setSearchRes( dataSource.filter( (item) => @@ -97,7 +97,7 @@ const Stock = () => { (item.owner == info || item.type == info || item.name == info) ) ); - } else if (cate && time && info) { + } else if (cate != -1 && time && info) { setSearchRes( dataSource.filter( (item) => @@ -122,12 +122,17 @@ const Stock = () => { setCate(e.target.value)} - categories={dataSource.map((item) => - Object.assign({}, { id: item.repository, name: item.repository }) - )} + categories={dataSource + .map((item) => + Object.assign( + {}, + { id: item.repository, name: item.repository } + ) + ) + .concat({ id: "-1", name: "全部" })} /> - +