shaogen1995 пре 2 месеци
родитељ
комит
0ed3ae5eba
2 измењених фајлова са 42 додато и 10 уклоњено
  1. 28 1
      src/pages/Bresource/B1overview/index.tsx
  2. 14 9
      src/store/action/Bresource/B1overview.ts

+ 28 - 1
src/pages/Bresource/B1overview/index.tsx

@@ -26,6 +26,7 @@ function B1overview() {
 
   const [formData, setFormData] = useState({ ...selectTopBase })
   const formDataRef = useRef({ ...selectTopBase })
+  const formDataOldRef = useRef({ ...selectTopBase })
 
   useEffect(() => {
     formDataRef.current = { ...formData }
@@ -86,6 +87,8 @@ function B1overview() {
 
   // 封装发送请求的函数
   const getList = useCallback(async () => {
+    formDataOldRef.current = { ...formDataRef.current }
+
     const obj = {
       ...formDataRef.current
     }
@@ -210,6 +213,30 @@ function B1overview() {
     } else MessageFu.warning('资源库表ID错误')
   }, [formData.formDefId, kuList])
 
+  // 点击数据导出
+  const deriveFu = useCallback(async () => {
+    const obj = {
+      ...formDataOldRef.current,
+      pageNum: 1,
+      pageSize: 99999
+    }
+    // 字典和标签需要 取最后一级 转成数字
+    const sonObj = { ...(obj.dictQuery || {}) }
+
+    for (const k in sonObj) {
+      const temp = sonObj[k]
+      if (typeof temp === 'object') sonObj[k] = Number(temp[temp.length - 1])
+    }
+
+    obj.dictQuery = sonObj
+
+    const res = await B1_APIgetList(obj, true)
+    if (res.code === 0) {
+      const list = res.data.records || []
+      console.log('-----------', list)
+    }
+  }, [])
+
   return (
     <div className={styles.B1overview}>
       <div className='pageTitle'>资源总览</div>
@@ -235,7 +262,7 @@ function B1overview() {
                 <Button type='primary' onClick={() => MessageFu.warning('开发中')}>
                   数据导入
                 </Button>
-                <Button type='primary' onClick={() => MessageFu.warning('开发中')}>
+                <Button type='primary' onClick={deriveFu}>
                   数据导出
                 </Button>
               </div>

+ 14 - 9
src/store/action/Bresource/B1overview.ts

@@ -24,16 +24,21 @@ export const APIgetZiYuanInfo = (data: any) => {
 /**
  * 资源总览 -获取分页列表
  */
-export const B1_APIgetList = (data: any): any => {
-  return async (dispatch: AppDispatch) => {
-    const res = await http.post('cms/form/data/pageList', data)
-    if (res.code === 0) {
-      const obj = {
-        list: res.data.records,
-        total: res.data.total
+export const B1_APIgetList = (data: any, flag?: boolean): any => {
+  const url = 'cms/form/data/pageList'
+
+  if (flag) return http.post(url, data)
+  else {
+    return async (dispatch: AppDispatch) => {
+      const res = await http.post(url, data)
+      if (res.code === 0) {
+        const obj = {
+          list: res.data.records,
+          total: res.data.total
+        }
+
+        dispatch({ type: 'B1/getList', payload: obj })
       }
-
-      dispatch({ type: 'B1/getList', payload: obj })
     }
   }
 }