提交 7e3d62e6 作者: 龚洪江

修复:分类选中问题

上级 9d1f0943
...@@ -161,5 +161,5 @@ export type exchangeBannerInfo = InterFunction<Array<any>, NonNullable<unknown>> ...@@ -161,5 +161,5 @@ export type exchangeBannerInfo = InterFunction<Array<any>, NonNullable<unknown>>
//手机号筛选小程序用户 //手机号筛选小程序用户
export type getUserAccountByPhoneNumType = InterFunction< export type getUserAccountByPhoneNumType = InterFunction<
{ phoneNum: string }, { phoneNum: string },
{ id: number; nickName: string; userName: string } { id: number; nickName: string; userName: string; phoneNum: string; uid: string }[]
>; >;
...@@ -244,6 +244,11 @@ export type listCompanyMembersType = InterItemFunction< ...@@ -244,6 +244,11 @@ export type listCompanyMembersType = InterItemFunction<
userSex: number; userSex: number;
}[] }[]
>; >;
//单位-成员绑定
export type bindingCompanyMemberType = InterFunction<
{ companyInfoId: number; userAccountId: number },
any
>;
//账号权限-列表 //账号权限-列表
export type listRoleInfoPageType = InterItemFunction< export type listRoleInfoPageType = InterItemFunction<
......
import { import {
bindingCompanyMemberType,
deleteRoleInfoType, deleteRoleInfoType,
getCompanyInfoByIdType, getCompanyInfoByIdType,
getSecondDistrictInfo, getSecondDistrictInfo,
...@@ -70,6 +71,9 @@ export class SystemManageAPI { ...@@ -70,6 +71,9 @@ export class SystemManageAPI {
//单位-成员列表 //单位-成员列表
static getListCompanyMembers: listCompanyMembersType = (params) => static getListCompanyMembers: listCompanyMembersType = (params) =>
axios.get('/userapp/company/listCompanyMembers', { params }); axios.get('/userapp/company/listCompanyMembers', { params });
//单位-成员绑定
static bindingCompanyMember: bindingCompanyMemberType = (params) =>
axios.get('/userapp/company/bindingCompanyMember', { params });
//账号权限-列表 //账号权限-列表
static getListRoleInfoPage: listRoleInfoPageType = (data) => static getListRoleInfoPage: listRoleInfoPageType = (data) =>
......
...@@ -22,9 +22,9 @@ type ColumnTypes = Exclude<EditableTableProps['columns'], undefined>; ...@@ -22,9 +22,9 @@ type ColumnTypes = Exclude<EditableTableProps['columns'], undefined>;
type categoryType = InterDataType<categoryListRespType>['list']; type categoryType = InterDataType<categoryListRespType>['list'];
const CategoryList = () => { const CategoryList = () => {
const [categoryTableForm] = Form.useForm<any>(); const [categoryTableForm] = Form.useForm<any>();
const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([]);
//新增,编辑分类弹窗 //新增,编辑分类弹窗
const [addOrEditCategoryModalShow, setAddOrEditCategoryModalShow] = useState<boolean>(false); const [addOrEditCategoryModalShow, setAddOrEditCategoryModalShow] = useState<boolean>(false);
const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([]);
const [currentCategory, setCurrentCategory] = useState<categoryType[0]>(); const [currentCategory, setCurrentCategory] = useState<categoryType[0]>();
const [loading, setLoading] = useState<boolean>(false); const [loading, setLoading] = useState<boolean>(false);
// 编辑的行 // 编辑的行
...@@ -181,15 +181,8 @@ const CategoryList = () => { ...@@ -181,15 +181,8 @@ const CategoryList = () => {
}; };
// 排序选择 // 排序选择
const onSelectChange = (record: categoryType[0]) => { const onSelectChange = (record: categoryType[0]) => {
const index: number = selectedRowKeys.findIndex((item: any) => item === record.id); setSelectedRowKeys([record.id]);
if (index != -1) {
selectedRowKeys.splice(index, 1);
setSelectedRowKeys([...selectedRowKeys]);
} else {
setSelectedRowKeys([...selectedRowKeys, record.id]);
}
}; };
//新增、编辑分类弹窗 //新增、编辑分类弹窗
const addOrEditCategoryModalShowClick = (record?: categoryType[0] | any) => { const addOrEditCategoryModalShowClick = (record?: categoryType[0] | any) => {
if (record && !record.subDTOList) { if (record && !record.subDTOList) {
...@@ -413,11 +406,18 @@ const CategoryList = () => { ...@@ -413,11 +406,18 @@ const CategoryList = () => {
<Table <Table
bordered bordered
rowSelection={{ rowSelection={{
selectedRowKeys,
hideSelectAll: true, hideSelectAll: true,
renderCell: (_checked: boolean, record: categoryType[0]) => { selectedRowKeys,
renderCell: (checked: boolean, record: categoryType[0]) => {
console.log('选中-->', checked);
return ( return (
<>{record.subDTOList ? <Radio onChange={() => onSelectChange(record)} /> : ''}</> <>
{record.subDTOList ? (
<Radio onChange={() => onSelectChange(record)} checked={checked} />
) : (
''
)}
</>
); );
}, },
}} }}
......
import { FC } from 'react'; import { FC, useState } from 'react';
import { Form, Modal, ModalProps, Select } from 'antd'; import { Form, message, Modal, ModalProps, Select } from 'antd';
import { CommonAPI } from '~/api'; import { CommonAPI, SystemManageAPI } from '~/api';
interface selfProps { interface selfProps {
onOk: () => void; onOk: () => void;
companyInfoId: number;
} }
const AddPeopleModal: FC<ModalProps & selfProps> = ({ open, onCancel, onOk }) => { const AddPeopleModal: FC<ModalProps & selfProps> = ({ open, onCancel, onOk, companyInfoId }) => {
const [form] = Form.useForm<{ userAccountId: number }>();
const [options, setOptions] = useState<{ label: string; value: number; key: string }[]>([]);
const handleOk = () => { const handleOk = () => {
onOk(); form.validateFields().then((values) => {
SystemManageAPI.bindingCompanyMember({ ...values, companyInfoId }).then(({ code }) => {
if (code === '200') {
message.success('绑定成功');
onOk();
}
});
});
}; };
//select 搜索 //select 搜索
const selectSearchEvent = (value: string) => { const selectSearchEvent = (value: string) => {
CommonAPI.getUserAccountByPhoneNum({ phoneNum: value }).then(({ result }) => {}); CommonAPI.getUserAccountByPhoneNum({ phoneNum: value }).then(({ result }) => {
const list = (result || []).map((v) => ({
label: v.phoneNum + `(${v.uid})`,
value: v.id,
key: value,
}));
setOptions(list);
});
}; };
return ( return (
<Modal open={open} title='添加成员' onOk={handleOk} onCancel={onCancel}> <Modal open={open} title='添加成员' onOk={handleOk} onCancel={onCancel}>
<Form> <Form form={form}>
<Form.Item label='成员'> <Form.Item
<Select placeholder='请输入成员手机号码' showSearch onSearch={selectSearchEvent}></Select> label='成员'
name='userAccountId'
rules={[{ required: true, message: '请选择成员' }]}
>
<Select
placeholder='请输入成员手机号码'
showSearch
onSearch={selectSearchEvent}
filterOption={(input, option) =>
(option?.key ?? '').toLowerCase().includes(input.toLowerCase())
}
options={options}
></Select>
</Form.Item> </Form.Item>
</Form> </Form>
</Modal> </Modal>
......
...@@ -138,6 +138,7 @@ const CompanyDetail = () => { ...@@ -138,6 +138,7 @@ const CompanyDetail = () => {
open={addPeopleModalShow} open={addPeopleModalShow}
onCancel={addPeopleModalCancel} onCancel={addPeopleModalCancel}
onOk={addPeopleModalOk} onOk={addPeopleModalOk}
companyInfoId={companyId}
/> />
</div> </div>
); );
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论