소스 검색

fix: #9360 组织管理 产品/设备/用户 修复解绑当前页全部数据后自动跳转上一页

jackhoo_98 3 년 전
부모
커밋
02dfd18a02
3개의 변경된 파일41개의 추가작업 그리고 4개의 파일을 삭제
  1. 11 2
      src/components/ProTableCard/index.tsx
  2. 8 0
      src/pages/system/Department/Member/bind.tsx
  3. 22 2
      src/pages/system/Department/Member/index.tsx

+ 11 - 2
src/components/ProTableCard/index.tsx

@@ -168,7 +168,6 @@ const ProTableCard = <
     if (pageSize !== size) {
       _current = 1;
     }
-    // console.log(_current);
     setCurrent(_current);
     setPageIndex(_current - 1);
     setPageSize(size);
@@ -221,7 +220,17 @@ const ProTableCard = <
         options={model === ModelEnum.CARD ? false : { ...props.options, fullScreen: false }}
         request={async (param, sort, filter) => {
           if (request) {
-            const resp = await request(param, sort, filter);
+            delete param.total; //不传总数,不传则需要后端重新更新
+            let resp = await request(param, sort, filter);
+            if (resp.result.data.length === 0 && resp.result.pageIndex > 0) {
+              const newParam = {
+                ...param,
+                current: param.current - 1,
+                pageIndex: param.pageIndex - 1,
+              };
+              pageChange(newParam.current, newParam.pageSize);
+              resp = await request(newParam, sort, filter);
+            }
             setLoading(false);
             setTotal(resp.result ? resp.result.total : 0);
             return {

+ 8 - 0
src/pages/system/Department/Member/bind.tsx

@@ -80,6 +80,10 @@ const Bind = observer((props: Props) => {
       onCancel={props.onCancel}
       width={'75vw'}
       title="绑定"
+      centered
+      bodyStyle={{
+        paddingBottom: 0,
+      }}
     >
       <SearchComponent<UserItem>
         model={'simple'}
@@ -103,6 +107,10 @@ const Bind = observer((props: Props) => {
         columns={columns}
         rowKey="id"
         columnEmptyText={''}
+        tableStyle={{
+          height: 575,
+          overflowY: 'auto',
+        }}
         search={false}
         params={searchParam}
         tableAlertRender={({ selectedRowKeys }) => <div>已选择 {selectedRowKeys.length} 项</div>}

+ 22 - 2
src/pages/system/Department/Member/index.tsx

@@ -223,7 +223,8 @@ const Member = observer((props: { parentId: string }) => {
         search={false}
         rowKey="id"
         columnEmptyText={''}
-        request={(params) => {
+        request={async (params) => {
+          delete params.total;
           params.sorts = [{ name: 'createTime', order: 'desc' }];
           if (!props.parentId) {
             return {
@@ -237,7 +238,26 @@ const Member = observer((props: { parentId: string }) => {
               status: 200,
             };
           }
-          return service.queryUser(params);
+          const resp: any = await service.queryUser(params);
+
+          // if(resp?.result?.data?.length === 0 && resp?.result?.pageIndex > 0){
+          //   const newParams ={
+          //     ...params,
+          //     pageIndex: resp?.result?.pageIndex - 1,
+          //     current: resp?.result?.current - 1
+          //   }
+          //   resp = await service.queryUser(newParams);
+          //   actionRef.current?.setPageInfo({
+          //     current: newParams.current,
+          //     pageIndex: newParams.pageIndex
+          //   })
+          // }
+
+          return {
+            code: resp.status,
+            result: resp.result,
+            status: resp.status,
+          };
         }}
         tableAlertRender={({ selectedRowKeys }) => <div>已选择 {selectedRowKeys.length} 项</div>}
         tableAlertOptionRender={() => {