feat(dealer): 更新订单页面用户选择逻辑

- 修改开发环境 API 地址为本地地址
- 在 shopDealerReferee 模型中新增 roleId 和 isAdmin 字段
- 新增 users2 状态用于存储渠道员数据
- 调整 fetchUsers 方法,区分业务员和渠道员的数据获取逻辑
- 优化用户选择器,将渠道员选择绑定到 users2 数据源
- 修复渠道员选择按钮的显示逻辑和点击事件绑定问题
This commit is contained in:
2025-11-20 10:27:11 +08:00
parent d1c205d41a
commit c3044c6ea7
3 changed files with 25 additions and 17 deletions

View File

@@ -2,7 +2,7 @@
export const ENV_CONFIG = { export const ENV_CONFIG = {
// 开发环境 // 开发环境
development: { development: {
API_BASE_URL: 'https://cms-api.websoft.top/api', API_BASE_URL: 'http://127.0.0.1:9200/api',
APP_NAME: '开发环境', APP_NAME: '开发环境',
DEBUG: 'true', DEBUG: 'true',
}, },

View File

@@ -39,5 +39,7 @@ export interface ShopDealerRefereeParam extends PageParam {
id?: number; id?: number;
dealerId?: number; dealerId?: number;
deleted?: number; deleted?: number;
roleId?: number;
isAdmin?: boolean;
keywords?: string; keywords?: string;
} }

View File

@@ -36,6 +36,7 @@ const DealerOrder: React.FC = () => {
const [currentPage, setCurrentPage] = useState<number>(1) const [currentPage, setCurrentPage] = useState<number>(1)
const [hasMore, setHasMore] = useState<boolean>(true) const [hasMore, setHasMore] = useState<boolean>(true)
const [users, setUsers] = useState<any[]>([]) const [users, setUsers] = useState<any[]>([])
const [users2, setUsers2] = useState<any[]>([])
const [visible1, setVisible1] = useState(false) const [visible1, setVisible1] = useState(false)
const [text1, setText1] = useState('') const [text1, setText1] = useState('')
const [selectedUserId, setSelectedUserId] = useState<number | undefined>(undefined) const [selectedUserId, setSelectedUserId] = useState<number | undefined>(undefined)
@@ -212,7 +213,9 @@ const DealerOrder: React.FC = () => {
function fetchUsers() { function fetchUsers() {
pageShopDealerReferee({ pageShopDealerReferee({
dealerId: selectedFirstUserId || selectedUserId || Taro.getStorageSync('UserId'), dealerId: selectedFirstUserId || Taro.getStorageSync('UserId'),
isAdmin: true,
limit: 100
}).then(res => { }).then(res => {
const data = res?.list.map(d => { const data = res?.list.map(d => {
return { return {
@@ -225,18 +228,21 @@ const DealerOrder: React.FC = () => {
}) })
setUsers(data || []) setUsers(data || [])
}) })
// pageUsers({}).then(data => { pageShopDealerReferee({
// const userList = data?.list.map(d => { dealerId: selectedUserId || Taro.getStorageSync('UserId'),
// return { limit: 100
// text: d.nickname, }).then(res => {
// value: d.userId, const data = res?.list.map(d => {
// disabled: false, return {
// children: [], text: d.nickname,
// className: '' value: d.userId,
// } disabled: false,
// }) children: [],
// setUsers(userList || []) className: ''
// }) }
})
setUsers2(data || [])
})
} }
// 初始化加载数据 // 初始化加载数据
@@ -365,8 +371,8 @@ const DealerOrder: React.FC = () => {
</View> </View>
<Space className={'select-user'}> <Space className={'select-user'}>
<Button size={'mini'} onClick={() => setVisible1(!visible1)}>{text1 || '业务员'}</Button> <Button size={'mini'} onClick={() => setVisible1(!visible1)}>{text1 || '业务员'}</Button>
{selectedUserId && <Button size={'mini'} onClick={() => setVisible2(!visible2)}>{text2 || '渠道员'}</Button>} {/*{selectedUserId && <Button size={'mini'} onClick={() => setVisible2(!visible2)}>{text2 || '渠道员'}</Button>}*/}
{/*<Button size={'mini'} onClick={() => setVisible3(!visible3)}>{text3 || '渠道二'}</Button>*/} <Button size={'mini'} onClick={() => setVisible2(!visible3)}>{text2 || '渠道员'}</Button>
</Space> </Space>
</View> </View>
{/*账单列表*/} {/*账单列表*/}
@@ -424,7 +430,7 @@ const DealerOrder: React.FC = () => {
<Picker <Picker
title="请选择" title="请选择"
visible={visible2} visible={visible2}
options={users} options={users2}
onConfirm={(list, values) => confirmPicker2(list, values)} onConfirm={(list, values) => confirmPicker2(list, values)}
onClose={() => setVisible2(false)} onClose={() => setVisible2(false)}
/> />