import {FC, useCallback, useEffect, useState} from "react"; import {Image, Input, Radio, View} from "@tarojs/components"; import styles from "../courseAdmin.module.scss"; import Icon from "@/components/icon"; import {CourseAllParam, curriculum} from "@/api"; import CustomPageContainer from "@/components/custom-page-container/custom-page-container"; import Empty from "@/components/empty/empty"; import MyButton from "@/components/button/MyButton"; import downArrow from '@/static/img/downArrow.png' import downArrowKey from '@/static/img/downArrowKey.png' import omit from '@/static/img/omit.png' import Taro from "@tarojs/taro"; interface Props { param: CourseAllParam setParam: (data: CourseAllParam) => void total: number setBatch: (data: boolean) => void } export const Search: FC = ({param, setParam, total, setBatch}) => { const [show, setShow] = useState(false) const [deps, setDeps] = useState([]) const [depId, setDepId] = useState(param.dep_id) const [title, setTitle] = useState(param.title) function onBatch() { Taro.showActionSheet({ itemList: ['批量添加部门'], success({tapIndex}) { switch (tapIndex) { case 0: setBatch(true) break } }, fail() { } }) } async function getDepList() { try { const res = await curriculum.department() setDeps(res.data) } catch (e) { } } const changeDepId = useCallback((id: number) => { if (id === depId) { setDepId(0) } else { setDepId(id) } }, [depId]) const putParam = useCallback(() => { setShow(false) if (param.dep_id !== depId) { setParam({ ...param, dep_id: depId, page: 1 }) } }, [depId]) useEffect(() => { getDepList() }, []) return ( <> setTitle(e.detail.value)} onConfirm={(e) => setParam({ ...param, title: e.detail.value, page: 1 })} /> setShow(true)} className={styles.select}> 选择部门 { param.dep_id > 0 && {deps.find(d => d.id === param.dep_id)?.name} } {total}个课程 setShow(false)}> {deps.length ? <> { deps?.map(dep => changeDepId(dep.id)}> {dep.name} ) } setShow(false)}> 取消 确定 : } ) }