feat(developer): 完成小程序开发者中心和企业控制台改造
- 设计并实现了开发者中心与企业控制台两大模块 - 按用户角色区分开发者和企业客户,支持多项目类型及成员管理 - 新增项目管理、应用管理、API Key管理及成员邀请等多功能页面 - 实现应用版本发布、消息通知中心、权限审批与开发者申请流程 - 完成CI/CD流水线、运营监控、发票管理、SSO单点登录功能 - 搭建SDK下载中心、工单系统、FAQ系统、数据导入导出等模块 - 优化后端API,支持已登录和未注册用户不同加入应用流程 - 前端按钮统一采用微信手机号授权,完善用户授权体验 - 修复多个页面的JSX语法错误及依赖导入问题,替换部分组件库 - 增加详细的类型定义文件,提升项目类型安全 - 新增超过55个页面及60个API接口,扩展应用功能和服务体系 - 完成全面的样式设计,实现一致的视觉风格和交互体验
This commit is contained in:
@@ -1,18 +1,21 @@
|
||||
import {useState} from "react";
|
||||
import Taro, {useDidShow} from '@tarojs/taro'
|
||||
import {Button, Cell, CellGroup, Space, Empty, ConfigProvider, Divider} from '@nutui/nutui-react-taro'
|
||||
import {Dongdong, ArrowRight, CheckNormal, Checked} from '@nutui/icons-react-taro'
|
||||
import {View} from '@tarojs/components'
|
||||
import {Button, Cell, CellGroup, Space, Empty, ConfigProvider, Tag} from '@nutui/nutui-react-taro'
|
||||
import {ArrowRight} from '@nutui/icons-react-taro'
|
||||
import {AppVersion} from "@/api/app/appVersion/model";
|
||||
import {listAppVersion, removeAppVersion, updateAppVersion} from "@/api/app/appVersion";
|
||||
import {listAppVersion} from "@/api/app/appVersion";
|
||||
|
||||
const STATUS_MAP: Record<string, { label: string; color: string }> = {
|
||||
pending: { label: '待发布', color: 'warning' },
|
||||
published: { label: '已发布', color: 'success' },
|
||||
offline: { label: '已下架', color: 'default' }
|
||||
};
|
||||
|
||||
const AppVersionList = () => {
|
||||
const [list, setList] = useState<AppVersion[]>([])
|
||||
|
||||
const reload = () => {
|
||||
listAppVersion({
|
||||
// 添加查询条件
|
||||
})
|
||||
listAppVersion({})
|
||||
.then(data => {
|
||||
setList(data || [])
|
||||
})
|
||||
@@ -24,16 +27,6 @@ const AppVersionList = () => {
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
const onDel = async (id?: number) => {
|
||||
await removeAppVersion(id)
|
||||
Taro.showToast({
|
||||
title: '删除成功',
|
||||
icon: 'success'
|
||||
});
|
||||
reload();
|
||||
}
|
||||
|
||||
useDidShow(() => {
|
||||
reload()
|
||||
});
|
||||
@@ -48,10 +41,10 @@ const AppVersionList = () => {
|
||||
style={{
|
||||
backgroundColor: 'transparent'
|
||||
}}
|
||||
description="暂无数据"
|
||||
description="暂无版本"
|
||||
/>
|
||||
<Space>
|
||||
<Button onClick={() => Taro.navigateTo({url: '/app/appVersion/add'})}>新增应用版本发布记录</Button>
|
||||
<Button onClick={() => Taro.navigateTo({url: '/app/appVersion/add'})}>新增版本</Button>
|
||||
</Space>
|
||||
</div>
|
||||
</ConfigProvider>
|
||||
@@ -59,6 +52,30 @@ const AppVersionList = () => {
|
||||
}
|
||||
|
||||
return (
|
||||
<>
|
||||
{list.map((item, _) => (
|
||||
<Cell.Group key={item.
|
||||
<ConfigProvider>
|
||||
<CellGroup>
|
||||
{list.map((item) => (
|
||||
<Cell
|
||||
key={item.id}
|
||||
title={`${item.versionName || '未命名版本'} (${item.versionCode || 'v0.0.0'})`}
|
||||
description={item.description}
|
||||
align="center"
|
||||
rightIcon={<ArrowRight />}
|
||||
onClick={() => Taro.navigateTo({url: `/app/appVersion/add?id=${item.id}`})}
|
||||
>
|
||||
<Tag type={STATUS_MAP[item.status || 'pending']?.color as any}>
|
||||
{STATUS_MAP[item.status || 'pending']?.label}
|
||||
</Tag>
|
||||
</Cell>
|
||||
))}
|
||||
</CellGroup>
|
||||
<Space direction="vertical" style={{padding: '16px'}}>
|
||||
<Button onClick={() => Taro.navigateTo({url: '/app/appVersion/add'})}>
|
||||
新增版本
|
||||
</Button>
|
||||
</Space>
|
||||
</ConfigProvider>
|
||||
);
|
||||
};
|
||||
|
||||
export default AppVersionList;
|
||||
|
||||
Reference in New Issue
Block a user