提交 8a719686 作者: 方治民

feat: 更新依赖、pont 接口生成适配 json 传参方式、细节优化

上级 f6d06082
......@@ -21,7 +21,7 @@ export function configAutoImportPlugin(): Plugin {
'@/config/app': ['$app'],
'@/api/services': ['defs'],
'@/api/services/mods': ['API'],
'@/common/message': ['Message'],
'@/common': ['Message'],
},
],
})
......@@ -33,6 +33,7 @@ export function configAutoImportPlugin(): Plugin {
*/
export function configComponentsImportPlugin(): Plugin {
return Components({
dts: 'types/components.d.ts',
resolvers: [
(name: string) => {
// FIX: 修复 easycom 在 APP 下不生效问题(原因不明
......@@ -46,6 +47,6 @@ export function configComponentsImportPlugin(): Plugin {
export function configImportPlugin(): Plugin[] {
// FIX: easycom 适配问题
// return [configAutoImportPlugin(), configComponentsImportPlugin()]
return [configAutoImportPlugin()]
return [configAutoImportPlugin(), configComponentsImportPlugin()]
// return [configAutoImportPlugin()]
}
// generated by unplugin-vue-components
// We suggest you to commit this file into source control
// Read more: https://github.com/vuejs/core/pull/3399
import '@vue/runtime-core'
export {}
declare module '@vue/runtime-core' {
export interface GlobalComponents {
FDragItem: typeof import('./src/components/firstui/fui-drag/f-drag-item.vue')['default']
FIndexListItem: typeof import('./src/components/firstui/fui-index-list/f-index-list-item.vue')['default']
FuiActionsheet: typeof import('./src/components/firstui/fui-actionsheet/fui-actionsheet.vue')['default']
FuiAlert: typeof import('./src/components/firstui/fui-alert/fui-alert.vue')['default']
FuiAnimation: typeof import('./src/components/firstui/fui-animation/fui-animation.vue')['default']
FuiAutograph: typeof import('./src/components/firstui/fui-autograph/fui-autograph.vue')['default']
FuiAvatar: typeof import('./src/components/firstui/fui-avatar/fui-avatar.vue')['default']
FuiBackdrop: typeof import('./src/components/firstui/fui-backdrop/fui-backdrop.vue')['default']
FuiBacktop: typeof import('./src/components/firstui/fui-backtop/fui-backtop.vue')['default']
FuiBadge: typeof import('./src/components/firstui/fui-badge/fui-badge.vue')['default']
FuiBarcode: typeof import('./src/components/firstui/fui-barcode/fui-barcode.vue')['default']
FuiBottomNavbar: typeof import('./src/components/firstui/fui-bottom-navbar/fui-bottom-navbar.vue')['default']
FuiBottomPopup: typeof import('./src/components/firstui/fui-bottom-popup/fui-bottom-popup.vue')['default']
FuiBubbleBox: typeof import('./src/components/firstui/fui-bubble-box/fui-bubble-box.vue')['default']
FuiButton: typeof import('./src/components/firstui/fui-button/fui-button.vue')['default']
FuiCalendar: typeof import('./src/components/firstui/fui-calendar/fui-calendar.vue')['default']
FuiCard: typeof import('./src/components/firstui/fui-card/fui-card.vue')['default']
FuiCascader: typeof import('./src/components/firstui/fui-cascader/fui-cascader.vue')['default']
FuiCheckbox: typeof import('./src/components/firstui/fui-checkbox/fui-checkbox.vue')['default']
FuiCheckboxGroup: typeof import('./src/components/firstui/fui-checkbox-group/fui-checkbox-group.vue')['default']
FuiCircle: typeof import('./src/components/firstui/fui-circle/fui-circle.vue')['default']
FuiCol: typeof import('./src/components/firstui/fui-col/fui-col.vue')['default']
FuiCollapse: typeof import('./src/components/firstui/fui-collapse/fui-collapse.vue')['default']
FuiCollapseItem: typeof import('./src/components/firstui/fui-collapse-item/fui-collapse-item.vue')['default']
FuiCopyText: typeof import('./src/components/firstui/fui-copy-text/fui-copy-text.vue')['default']
FuiCountDown: typeof import('./src/components/firstui/fui-count-down/fui-count-down.vue')['default']
FuiCountdownVerify: typeof import('./src/components/firstui/fui-countdown-verify/fui-countdown-verify.vue')['default']
FuiCubicBezier: typeof import('./src/components/firstui/fui-cubic-bezier/fui-cubic-bezier.vue')['default']
FuiDataTag: typeof import('./src/components/firstui/fui-data-tag/fui-data-tag.vue')['default']
FuiDatePicker: typeof import('./src/components/firstui/fui-date-picker/fui-date-picker.vue')['default']
FuiDialog: typeof import('./src/components/firstui/fui-dialog/fui-dialog.vue')['default']
FuiDigitalKeyboard: typeof import('./src/components/firstui/fui-digital-keyboard/fui-digital-keyboard.vue')['default']
FuiDigitalRoller: typeof import('./src/components/firstui/fui-digital-roller/fui-digital-roller.vue')['default']
FuiDivider: typeof import('./src/components/firstui/fui-divider/fui-divider.vue')['default']
FuiDrag: typeof import('./src/components/firstui/fui-drag/fui-drag.vue')['default']
FuiDrawer: typeof import('./src/components/firstui/fui-drawer/fui-drawer.vue')['default']
FuiDropdownList: typeof import('./src/components/firstui/fui-dropdown-list/fui-dropdown-list.vue')['default']
FuiDropdownMenu: typeof import('./src/components/firstui/fui-dropdown-menu/fui-dropdown-menu.vue')['default']
FuiEmpty: typeof import('./src/components/firstui/fui-empty/fui-empty.vue')['default']
FuiFab: typeof import('./src/components/firstui/fui-fab/fui-fab.vue')['default']
FuiFilterBar: typeof import('./src/components/firstui/fui-filter-bar/fui-filter-bar.vue')['default']
FuiFooter: typeof import('./src/components/firstui/fui-footer/fui-footer.vue')['default']
FuiForm: typeof import('./src/components/firstui/fui-form/fui-form.vue')['default']
FuiFormField: typeof import('./src/components/firstui/fui-form-field/fui-form-field.vue')['default']
FuiGallery: typeof import('./src/components/firstui/fui-gallery/fui-gallery.vue')['default']
FuiGrid: typeof import('./src/components/firstui/fui-grid/fui-grid.vue')['default']
FuiGridItem: typeof import('./src/components/firstui/fui-grid-item/fui-grid-item.vue')['default']
FuiIcon: typeof import('./src/components/firstui/fui-icon/fui-icon.vue')['default']
FuiImageCropper: typeof import('./src/components/firstui/fui-image-cropper/fui-image-cropper.vue')['default']
FuiIndexList: typeof import('./src/components/firstui/fui-index-list/fui-index-list.vue')['default']
FuiInput: typeof import('./src/components/firstui/fui-input/fui-input.vue')['default']
FuiInputNumber: typeof import('./src/components/firstui/fui-input-number/fui-input-number.vue')['default']
FuiLabel: typeof import('./src/components/firstui/fui-label/fui-label.vue')['default']
FuiLandscape: typeof import('./src/components/firstui/fui-landscape/fui-landscape.vue')['default']
FuiLazyload: typeof import('./src/components/firstui/fui-lazyload/fui-lazyload.vue')['default']
FuiLicensePlate: typeof import('./src/components/firstui/fui-license-plate/fui-license-plate.vue')['default']
FuiList: typeof import('./src/components/firstui/fui-list/fui-list.vue')['default']
FuiListCell: typeof import('./src/components/firstui/fui-list-cell/fui-list-cell.vue')['default']
FuiLoadAni: typeof import('./src/components/firstui/fui-load-ani/fui-load-ani.vue')['default']
FuiLoading: typeof import('./src/components/firstui/fui-loading/fui-loading.vue')['default']
FuiLoadmore: typeof import('./src/components/firstui/fui-loadmore/fui-loadmore.vue')['default']
FuiMessage: typeof import('./src/components/firstui/fui-message/fui-message.vue')['default']
FuiModal: typeof import('./src/components/firstui/fui-modal/fui-modal.vue')['default']
FuiNavBar: typeof import('./src/components/firstui/fui-nav-bar/fui-nav-bar.vue')['default']
FuiNoticeBar: typeof import('./src/components/firstui/fui-notice-bar/fui-notice-bar.vue')['default']
FuiOverflowHidden: typeof import('./src/components/firstui/fui-overflow-hidden/fui-overflow-hidden.vue')['default']
FuiPagination: typeof import('./src/components/firstui/fui-pagination/fui-pagination.vue')['default']
FuiPanel: typeof import('./src/components/firstui/fui-panel/fui-panel.vue')['default']
FuiPicker: typeof import('./src/components/firstui/fui-picker/fui-picker.vue')['default']
FuiPoster: typeof import('./src/components/firstui/fui-poster/fui-poster.vue')['default']
FuiPosterWeex: typeof import('./src/components/firstui/fui-poster-weex/fui-poster-weex.vue')['default']
FuiPreview: typeof import('./src/components/firstui/fui-preview/fui-preview.vue')['default']
FuiProgress: typeof import('./src/components/firstui/fui-progress/fui-progress.vue')['default']
FuiPuzzleVerify: typeof import('./src/components/firstui/fui-puzzle-verify/fui-puzzle-verify.vue')['default']
FuiQrcode: typeof import('./src/components/firstui/fui-qrcode/fui-qrcode.vue')['default']
FuiRadio: typeof import('./src/components/firstui/fui-radio/fui-radio.vue')['default']
FuiRadioGroup: typeof import('./src/components/firstui/fui-radio-group/fui-radio-group.vue')['default']
FuiRate: typeof import('./src/components/firstui/fui-rate/fui-rate.vue')['default']
FuiResult: typeof import('./src/components/firstui/fui-result/fui-result.vue')['default']
FuiRotateVerify: typeof import('./src/components/firstui/fui-rotate-verify/fui-rotate-verify.vue')['default']
FuiRow: typeof import('./src/components/firstui/fui-row/fui-row.vue')['default']
FuiSafeArea: typeof import('./src/components/firstui/fui-safe-area/fui-safe-area.vue')['default']
FuiSearchBar: typeof import('./src/components/firstui/fui-search-bar/fui-search-bar.vue')['default']
FuiSegmentedControl: typeof import('./src/components/firstui/fui-segmented-control/fui-segmented-control.vue')['default']
FuiSelect: typeof import('./src/components/firstui/fui-select/fui-select.vue')['default']
FuiShareSheet: typeof import('./src/components/firstui/fui-share-sheet/fui-share-sheet.vue')['default']
FuiSingleInput: typeof import('./src/components/firstui/fui-single-input/fui-single-input.vue')['default']
FuiSkeleton: typeof import('./src/components/firstui/fui-skeleton/fui-skeleton.vue')['default']
FuiSlider: typeof import('./src/components/firstui/fui-slider/fui-slider.vue')['default']
FuiSliderCaptcha: typeof import('./src/components/firstui/fui-slider-captcha/fui-slider-captcha.vue')['default']
FuiSlideVerify: typeof import('./src/components/firstui/fui-slide-verify/fui-slide-verify.vue')['default']
FuiSpin: typeof import('./src/components/firstui/fui-spin/fui-spin.vue')['default']
FuiStatusBar: typeof import('./src/components/firstui/fui-status-bar/fui-status-bar.vue')['default']
FuiSteps: typeof import('./src/components/firstui/fui-steps/fui-steps.vue')['default']
FuiSticky: typeof import('./src/components/firstui/fui-sticky/fui-sticky.vue')['default']
FuiSwipeAction: typeof import('./src/components/firstui/fui-swipe-action/fui-swipe-action.vue')['default']
FuiSwipeactionGroup: typeof import('./src/components/firstui/fui-swipeaction-group/fui-swipeaction-group.vue')['default']
FuiSwiperDot: typeof import('./src/components/firstui/fui-swiper-dot/fui-swiper-dot.vue')['default']
FuiSwitch: typeof import('./src/components/firstui/fui-switch/fui-switch.vue')['default']
FuiTabbar: typeof import('./src/components/firstui/fui-tabbar/fui-tabbar.vue')['default']
FuiTable: typeof import('./src/components/firstui/fui-table/fui-table.vue')['default']
FuiTabs: typeof import('./src/components/firstui/fui-tabs/fui-tabs.vue')['default']
FuiTag: typeof import('./src/components/firstui/fui-tag/fui-tag.vue')['default']
FuiText: typeof import('./src/components/firstui/fui-text/fui-text.vue')['default']
FuiTextarea: typeof import('./src/components/firstui/fui-textarea/fui-textarea.vue')['default']
FuiTimeaxis: typeof import('./src/components/firstui/fui-timeaxis/fui-timeaxis.vue')['default']
FuiTimeaxisNode: typeof import('./src/components/firstui/fui-timeaxis-node/fui-timeaxis-node.vue')['default']
FuiTimer: typeof import('./src/components/firstui/fui-timer/fui-timer.vue')['default']
FuiToast: typeof import('./src/components/firstui/fui-toast/fui-toast.vue')['default']
FuiTopPopup: typeof import('./src/components/firstui/fui-top-popup/fui-top-popup.vue')['default']
FuiUpload: typeof import('./src/components/firstui/fui-upload/fui-upload.vue')['default']
FuiVtabs: typeof import('./src/components/firstui/fui-vtabs/fui-vtabs.vue')['default']
FuiVtabsContent: typeof import('./src/components/firstui/fui-vtabs-content/fui-vtabs-content.vue')['default']
FuiWaterfall: typeof import('./src/components/firstui/fui-waterfall/fui-waterfall.vue')['default']
FuiWaterfallItem: typeof import('./src/components/firstui/fui-waterfall-item/fui-waterfall-item.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']
}
}
......@@ -63,19 +63,19 @@
}
},
"dependencies": {
"@dcloudio/uni-app": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-app-plus": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-components": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-h5": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-mp-alipay": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-mp-baidu": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-mp-kuaishou": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-mp-lark": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-mp-qq": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-mp-toutiao": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-mp-weixin": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-quickapp-webview": "^3.0.0-alpha-3060420220922008",
"@vue/runtime-core": "^3.2.40",
"@dcloudio/uni-app": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-app-plus": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-components": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-h5": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-mp-alipay": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-mp-baidu": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-mp-kuaishou": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-mp-lark": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-mp-qq": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-mp-toutiao": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-mp-weixin": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-quickapp-webview": "^3.0.0-alpha-3060720221017002",
"@vue/runtime-core": "^3.2.41",
"@vueuse/core": "^8.9.4",
"axios": "^0.26.1",
"dayjs": "^1.11.5",
......@@ -83,7 +83,7 @@
"mockjs": "^1.1.0",
"pinia": "^2.0.23",
"qs": "~6.9.7",
"vue": "^3.2.40",
"vue": "^3.2.41",
"vue-i18n": "^9.2.2",
"vue-types": "^4.2.1"
},
......@@ -91,19 +91,20 @@
"@commitlint/cli": "^17.1.2",
"@commitlint/config-conventional": "^16.2.4",
"@dcloudio/types": "^3.0.15",
"@dcloudio/uni-automator": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-cli-shared": "^3.0.0-alpha-3060420220922008",
"@dcloudio/uni-automator": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-cli-shared": "^3.0.0-alpha-3060720221017002",
"@dcloudio/uni-helper-json": "^1.0.13",
"@dcloudio/vite-plugin-uni": "^3.0.0-alpha-3060420220922008",
"@dcloudio/vite-plugin-uni": "^3.0.0-alpha-3060720221017001",
"@types/lodash-es": "^4.17.6",
"@types/mockjs": "^1.0.7",
"@types/prettier": "^2.7.1",
"@types/qs": "^6.9.7",
"@typescript-eslint/eslint-plugin": "^5.40.0",
"@typescript-eslint/parser": "^5.40.0",
"@typescript-eslint/eslint-plugin": "^5.40.1",
"@typescript-eslint/parser": "^5.40.1",
"commitizen": "^4.2.5",
"conventional-changelog-cli": "^2.2.2",
"cz-conventional-changelog": "^3.3.0",
"cz-customizable": "^7.0.0",
"dotenv": "^16.0.3",
"eslint": "^8.25.0",
"eslint-config-prettier": "^8.5.0",
......@@ -115,13 +116,13 @@
"npm-run-all": "^4.1.5",
"picocolors": "^1.0.0",
"pont-engine": "^1.4.0",
"postcss": "^8.4.17",
"postcss": "^8.4.18",
"postcss-html": "^1.5.0",
"postcss-less": "^6.0.0",
"prettier": "^2.7.1",
"rimraf": "^3.0.2",
"sort-package-json": "^1.57.0",
"stylelint": "^14.13.0",
"stylelint": "^14.14.0",
"stylelint-config-html": "^1.1.0",
"stylelint-config-prettier": "^9.0.3",
"stylelint-config-recommended": "^8.0.0",
......@@ -132,7 +133,7 @@
"typescript": "^4.8.4",
"unplugin-auto-import": "^0.11.2",
"unplugin-vue-components": "^0.22.8",
"vite": "^3.1.7",
"vite": "^3.1.8",
"vue-eslint-parser": "^9.1.0"
},
"engines": {
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -2,8 +2,8 @@
"originType": "SwaggerV2",
"originUrl": "http://127.0.0.1:8081/api/v2/api-docs",
"templateType": "fetch",
"templatePath": "./pont.template",
"transformPath": "./pont.transform",
"templatePath": "./pont-template",
"transformPath": "./pont-transform",
"outDir": "./src/api/services",
"surrounding": "typeScript",
"mocks": {
......
......@@ -12,19 +12,44 @@ export class FileStructures extends Pont.FileStructures {
}
export default class BasicGenerator extends CodeGenerator {
checkJsonParam(inter: Interface, paramsCode: string): boolean {
const prettier = require('prettier')
const requestParams = inter.getRequestParams(this.surrounding)
const code = prettier.format(paramsCode, { parser: 'typescript' })
return code.includes('{}') && requestParams.includes('body')
}
// 认为没有返回值的接口表示下载(通常是)
isDownload(inter: Interface): boolean {
return inter.responseType === 'any'
}
// 认为包含 form 参数的接口表示带有上传功能
isUpload(inter: Interface): boolean {
return inter.getRequestParams(this.surrounding).includes('form')
}
getParams(inter: Interface, paramsCode: string) {
let requestParams = inter.getRequestParams(this.surrounding)
let bodyTypeDef = ''
const prettier = require('prettier')
if (prettier.format(paramsCode, { parser: 'typescript' }).includes('{}')) {
if (!requestParams.includes('form')) {
requestParams = requestParams.replace('params', 'params?')
}
if (requestParams.includes('body')) {
requestParams = requestParams.replace('params?: Params, ', '')
bodyTypeDef = requestParams.replace(/^.*body: (.*),.*$/gi, '$1')
}
}
return `${requestParams.replace(
'options?: any',
`config?: http.RequestConfig<Params${requestParams.includes('form') ? ' | FormData' : ''}>`,
`config?: http.RequestConfig<${
bodyTypeDef ? bodyTypeDef : `Params${requestParams.includes('form') ? ' | FormData' : ''}`
}>`,
)}, options?: http.RequestOptions`
}
......@@ -64,7 +89,12 @@ export default class BasicGenerator extends CodeGenerator {
const paramsCode = inter.getParamsCode('Params', this.surrounding)
const requestParams = this.getParams(inter, paramsCode)
const undef = inter.response.getInitialValue() === 'undefined'
const isBody = this.checkJsonParam(inter, paramsCode)
// TODO
// 扩展 hooks mode
// 采用 vue-request 或 @tanstack/vue-query
// export function useRequest()
return `
/**
* @desc ${inter.description}
......@@ -73,7 +103,7 @@ export default class BasicGenerator extends CodeGenerator {
${undef ? '' : `import * as defs from '../../baseClass';`}
import { defHttp } from '/@/utils/http/axios'
export ${paramsCode}
${isBody ? '' : `export ${paramsCode}`}
${undef ? '' : `export const init = ${inter.response.getInitialValue(true)};`}
......@@ -84,11 +114,13 @@ export default class BasicGenerator extends CodeGenerator {
${
method === 'GET'
? 'params'
: `data: ${requestParams.includes('form') ? 'form || params' : 'params'}`
: `data: ${requestParams.includes('form') ? 'form || params' : isBody ? 'body' : 'params'}`
},
${
requestParams.includes('form')
? `headers: { 'Content-Type': 'multipart/form-data;charset=UTF-8' },`
: isBody
? `headers: { 'Content-Type': 'application/json' },`
: ''
}
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -31,6 +31,20 @@ declare namespace defs {
redirect?: string
}
export class PageParam {
/** 当前页数 */
pageNo?: number
/** 分页条数 */
pageSize?: number
/** 排序字段 */
sortField?: string
/** 排序方向(ASC|DESC) */
sortOrder?: 'ASC' | 'DESC'
}
export class PageVo<T0 = any> {
/** 数据 */
data?: Array<T0>
......@@ -123,6 +137,14 @@ declare namespace defs {
uid?: string
}
export class UserExtensionVo {
/** 年龄 */
age?: number
/** 性别 */
gender?: number
}
export class UserInfo {
/** 头像 */
avatar?: string
......@@ -133,6 +155,9 @@ declare namespace defs {
/** 用户主页 */
homePath?: string
/** 手机号 */
mobile?: string
/** 真实姓名 */
realName?: string
......@@ -265,6 +290,24 @@ namespace API {
options?: http.RequestOptions,
): Promise<Response>
}
/**
* 检查登录状态
* /api/auth/valid
*/
export namespace valid {
export class Params {}
export type Response = boolean
export const init: Response
export function request(
params?: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
}
}
/**
......@@ -272,7 +315,7 @@ namespace API {
*/
export namespace example {
/**
* hello
* Hello World
* /api/example/
*/
export namespace hello {
......@@ -290,7 +333,7 @@ namespace API {
}
/**
* download
* 文件下载
* /api/example/download
*/
export namespace download {
......@@ -308,7 +351,7 @@ namespace API {
}
/**
* fail
* 测试失败
* /api/example/fail
*/
export namespace fail {
......@@ -326,7 +369,43 @@ namespace API {
}
/**
* page
* 查询用户属性
* /api/example/findUserExtensionInfo
*/
export namespace findUserExtensionInfo {
export class Params {}
export type Response = defs.UserExtensionVo
export const init: Response
export function request(
params?: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
}
/**
* JSON 传参
* /api/example/json
*/
export namespace json {
export class Params {}
export type Response = defs.PageVo<string>
export const init: Response
export function request(
body: defs.PageParam,
config?: http.RequestConfig<defs.PageParam>,
options?: http.RequestOptions,
): Promise<Response>
}
/**
* 分页条件查询
* /api/example/page
*/
export namespace page {
......@@ -351,30 +430,35 @@ namespace API {
options?: http.RequestOptions,
): Promise<Response>
}
}
/**
* 文件管理
*/
export namespace file {
/**
* 测试 MyBatis Plus 查询
* /api/example/test
* 文件下载
* /api/common/file/download
*/
export namespace test {
export class Params {}
export namespace download {
export class Params {
/** bucket */
bucket: string
/** object */
object: string
}
export type Response = string
export type Response = any
export const init: Response
export function request(
params?: Params,
params: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
}
}
/**
* 文件管理
*/
export namespace file {
/**
* 文件上传
* /api/common/file/upload
......@@ -393,6 +477,27 @@ namespace API {
options?: http.RequestOptions,
): Promise<Response>
}
/**
* Base64 图片上传
* /api/common/file/uploadBase64Image
*/
export namespace uploadBase64Image {
export class Params {
/** Base64 图片信息 */
base64Image: string
}
export type Response = string
export const init: Response
export function request(
params: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
}
}
/**
......@@ -401,7 +506,7 @@ namespace API {
export namespace permission {
/**
* 新增
* /api/manage/permission/add
* /api/sys/permission/add
*/
export namespace add {
export class Params {
......@@ -444,7 +549,7 @@ namespace API {
/**
* 删除
* /api/manage/permission/deleted
* /api/sys/permission/deleted
*/
export namespace deleted {
export class Params {
......@@ -465,7 +570,7 @@ namespace API {
/**
* 查询
* /api/manage/permission/find
* /api/sys/permission/find
*/
export namespace find {
export class Params {
......@@ -486,7 +591,7 @@ namespace API {
/**
* 修改
* /api/manage/permission/modify
* /api/sys/permission/modify
*/
export namespace modify {
export class Params {
......@@ -531,7 +636,7 @@ namespace API {
/**
* 分页查询
* /api/manage/permission/page
* /api/sys/permission/page
*/
export namespace page {
export class Params {
......@@ -558,12 +663,12 @@ namespace API {
/**
* 树结构查询
* /api/manage/permission/tree
* /api/sys/permission/tree
*/
export namespace tree {
export class Params {
/** pid */
pid: string
pid?: string
}
export type Response = Array<defs.PermissionVo>
......@@ -584,7 +689,7 @@ namespace API {
export namespace role {
/**
* 新增
* /api/manage/role/add
* /api/sys/role/add
*/
export namespace add {
export class Params {
......@@ -607,7 +712,7 @@ namespace API {
/**
* 分配权限
* /api/manage/role/assign
* /api/sys/role/assign
*/
export namespace assign {
export class Params {
......@@ -630,12 +735,12 @@ namespace API {
/**
* 删除
* /api/manage/role/deleted
* /api/sys/role/deleted
*/
export namespace deleted {
export class Params {
/** id */
id: string
/** ids 多个以逗号分割 */
ids: string
}
export type Response = string
......@@ -651,7 +756,7 @@ namespace API {
/**
* 查询
* /api/manage/role/find
* /api/sys/role/find
*/
export namespace find {
export class Params {
......@@ -672,7 +777,7 @@ namespace API {
/**
* 修改
* /api/manage/role/modify
* /api/sys/role/modify
*/
export namespace modify {
export class Params {
......@@ -697,7 +802,7 @@ namespace API {
/**
* 分页查询
* /api/manage/role/page
* /api/sys/role/page
*/
export namespace page {
export class Params {
......@@ -724,7 +829,7 @@ namespace API {
/**
* 选项查询
* /api/manage/role/selector
* /api/sys/role/selector
*/
export namespace selector {
export class Params {}
......@@ -746,49 +851,68 @@ namespace API {
*/
export namespace user {
/**
* 获取用户菜单
* /api/user/getMenuList
* 分配角色
* /api/sys/user/assign
*/
export namespace getMenuList {
export class Params {}
export namespace assign {
export class Params {
/** id */
id: string
/** ids 多个以逗号分割 */
ids: string
}
export type Response = Array<defs.MenuVo>
export type Response = string
export const init: Response
export function request(
params?: Params,
params: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
}
/**
* 获取用户权限
* /api/user/getPermCode
* 分页查询
* /api/sys/user/page
*/
export namespace getPermCode {
export class Params {}
export namespace page {
export class Params {
/** 当前页数 */
pageNo: number
/** 分页条数 */
pageSize: number
/** 排序字段 */
sortField?: string
/** 排序方向(ASC|DESC) */
sortOrder?: 'ASC' | 'DESC'
}
export type Response = Array<string>
export type Response = defs.PageVo<defs.UserVo>
export const init: Response
export function request(
params?: Params,
params: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
}
}
/**
* 用户信息
*/
export namespace userView {
/**
* 获取登录用户信息
* /api/user/getUserInfo
* 获取用户菜单
* /api/user/getMenuList
*/
export namespace getUserInfo {
export namespace getMenuList {
export class Params {}
export type Response = defs.UserInfo
export type Response = Array<defs.MenuVo>
export const init: Response
......@@ -800,50 +924,36 @@ namespace API {
}
/**
* 分配角色
* /api/user/manage/assign
* 获取用户权限
* /api/user/getPermCode
*/
export namespace assign {
export class Params {
/** id */
id: string
/** ids 多个以逗号分割 */
ids: string
}
export namespace getPermCode {
export class Params {}
export type Response = string
export type Response = Array<string>
export const init: Response
export function request(
params: Params,
params?: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
}
/**
* 分页查询
* /api/user/manage/page
* 获取登录用户信息
* /api/user/getUserInfo
*/
export namespace page {
export class Params {
/** 当前页数 */
pageNo: number
/** 分页条数 */
pageSize: number
/** 排序字段 */
sortField?: string
/** 排序方向(ASC|DESC) */
sortOrder?: 'ASC' | 'DESC'
}
export namespace getUserInfo {
export class Params {}
export type Response = defs.PageVo<defs.UserVo>
export type Response = defs.UserInfo
export const init: Response
export function request(
params: Params,
params?: Params,
config?: http.RequestConfig<Params>,
options?: http.RequestOptions,
): Promise<Response>
......
......@@ -26,6 +26,20 @@ export class MenuVo {
redirect = ''
}
export class PageParam {
/** 当前页数 */
pageNo = undefined
/** 分页条数 */
pageSize = undefined
/** 排序字段 */
sortField = ''
/** 排序方向(ASC|DESC) */
sortOrder = 'ASC'
}
export class PageVo {
/** 数据 */
data = []
......@@ -118,6 +132,14 @@ export class RoleVo {
uid = ''
}
export class UserExtensionVo {
/** 年龄 */
age = undefined
/** 性别 */
gender = undefined
}
export class UserInfo {
/** 头像 */
avatar = ''
......@@ -128,6 +150,9 @@ export class UserInfo {
/** 用户主页 */
homePath = ''
/** 手机号 */
mobile = ''
/** 真实姓名 */
realName = ''
......
......@@ -4,5 +4,6 @@
import * as login from './login'
import * as logout from './logout'
import * as register from './register'
import * as valid from './valid'
export { login, logout, register }
export { login, logout, register, valid }
/**
* @desc 测试 MyBatis Plus 查询
* @desc 检查登录状态
*/
import * as defs from '../../baseClass'
......@@ -12,7 +12,7 @@ export const init = new defs.Result()
export function request(params?: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/example/test',
url: '/auth/valid',
method: 'GET',
params,
......
/**
* @desc download
* @desc 文件下载
*/
import { defHttp } from '/@/utils/http/axios'
......
/**
* @desc fail
* @desc 测试失败
*/
import * as defs from '../../baseClass'
......
/**
* @desc 查询用户属性
*/
import * as defs from '../../baseClass'
import { defHttp } from '/@/utils/http/axios'
export class Params {}
export const init = new defs.Result()
export function request(params?: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/example/findUserExtensionInfo',
method: 'GET',
params,
...config,
},
options,
)
}
/**
* @desc hello
* @desc Hello World
*/
import * as defs from '../../baseClass'
......
......@@ -4,7 +4,8 @@
import * as hello from './hello'
import * as download from './download'
import * as fail from './fail'
import * as findUserExtensionInfo from './findUserExtensionInfo'
import * as json from './json'
import * as page from './page'
import * as test from './test'
export { hello, download, fail, page, test }
export { hello, download, fail, findUserExtensionInfo, json, page }
/**
* @desc JSON 传参
*/
import * as defs from '../../baseClass'
import { defHttp } from '/@/utils/http/axios'
export const init = new defs.Result()
export function request(
body: defs.PageParam,
config?: http.RequestConfig<defs.PageParam>,
options?: http.RequestOptions,
) {
return defHttp.request(
{
url: '/example/json',
method: 'POST',
data: body,
headers: { 'Content-Type': 'application/json' },
...config,
},
options,
)
}
/**
* @desc page
* @desc 分页条件查询
*/
import * as defs from '../../baseClass'
......
/**
* @desc 文件下载
*/
import { defHttp } from '/@/utils/http/axios'
export class Params {
/** bucket */
bucket: string
/** object */
object: string
}
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/common/file/download',
method: 'GET',
params,
...config,
},
options,
)
}
/**
* @description 文件管理
*/
import * as download from './download'
import * as upload from './upload'
import * as uploadBase64Image from './uploadBase64Image'
export { upload }
export { download, upload, uploadBase64Image }
/**
* @desc Base64 图片上传
*/
import * as defs from '../../baseClass'
import { defHttp } from '/@/utils/http/axios'
export class Params {
/** Base64 图片信息 */
base64Image: string
}
export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/common/file/uploadBase64Image',
method: 'POST',
data: params,
...config,
},
options,
)
}
......@@ -4,6 +4,7 @@ import * as file from './file'
import * as permission from './permission'
import * as role from './role'
import * as user from './user'
import * as userView from './userView'
export const API = {
auth,
......@@ -12,4 +13,5 @@ export const API = {
permission,
role,
user,
userView,
}
......@@ -37,7 +37,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/permission/add',
url: '/sys/permission/add',
method: 'POST',
data: params,
......
......@@ -15,7 +15,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/permission/deleted',
url: '/sys/permission/deleted',
method: 'POST',
data: params,
......
......@@ -15,7 +15,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/permission/find',
url: '/sys/permission/find',
method: 'GET',
params,
......
......@@ -39,7 +39,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/permission/modify',
url: '/sys/permission/modify',
method: 'POST',
data: params,
......
......@@ -21,7 +21,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/permission/page',
url: '/sys/permission/page',
method: 'GET',
params,
......
......@@ -7,7 +7,7 @@ import { defHttp } from '/@/utils/http/axios'
export class Params {
/** pid */
pid: string
pid?: string
}
export const init = new defs.Result()
......@@ -15,7 +15,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/permission/tree',
url: '/sys/permission/tree',
method: 'GET',
params,
......
......@@ -17,7 +17,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/role/add',
url: '/sys/role/add',
method: 'POST',
data: params,
......
......@@ -17,7 +17,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/role/assign',
url: '/sys/role/assign',
method: 'POST',
data: params,
......
......@@ -6,8 +6,8 @@ import * as defs from '../../baseClass'
import { defHttp } from '/@/utils/http/axios'
export class Params {
/** id */
id: string
/** ids 多个以逗号分割 */
ids: string
}
export const init = new defs.Result()
......@@ -15,7 +15,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/role/deleted',
url: '/sys/role/deleted',
method: 'POST',
data: params,
......
......@@ -15,7 +15,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/role/find',
url: '/sys/role/find',
method: 'GET',
params,
......
......@@ -19,7 +19,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/role/modify',
url: '/sys/role/modify',
method: 'POST',
data: params,
......
......@@ -21,7 +21,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/role/page',
url: '/sys/role/page',
method: 'GET',
params,
......
......@@ -12,7 +12,7 @@ export const init = new defs.Result()
export function request(params?: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/manage/role/selector',
url: '/sys/role/selector',
method: 'GET',
params,
......
......@@ -17,7 +17,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/user/manage/assign',
url: '/sys/user/assign',
method: 'POST',
data: params,
......
/**
* @description 用户管理
*/
import * as getMenuList from './getMenuList'
import * as getPermCode from './getPermCode'
import * as getUserInfo from './getUserInfo'
import * as assign from './assign'
import * as page from './page'
export { getMenuList, getPermCode, getUserInfo, assign, page }
export { assign, page }
......@@ -21,7 +21,7 @@ export const init = new defs.Result()
export function request(params: Params, config?: http.RequestConfig<Params>, options?: http.RequestOptions) {
return defHttp.request(
{
url: '/user/manage/page',
url: '/sys/user/page',
method: 'GET',
params,
......
/**
* @description 用户信息
*/
import * as getMenuList from './getMenuList'
import * as getPermCode from './getPermCode'
import * as getUserInfo from './getUserInfo'
export { getMenuList, getPermCode, getUserInfo }
import { Message } from './message'
// export some global utils function
export { Message }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论