| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869 |
- /**
- * API 类型定义
- */
- declare namespace Api {
- namespace Auth {
- interface UserInfo {
- userId?: string
- id?: string
- username: string
- realName?: string
- phone?: string
- email?: string
- sex?: string
- remark?: string
- role: string
- roleNames?: string[]
- regionId?: string
- regionName?: string
- roles?: string[]
- /** 自定义头像 URL,空则前端使用 `/avatart.png` */
- avatarUrl?: string | null
- }
- interface LoginParams {
- username: string
- password: string
- }
- interface LoginResponse {
- token: string
- refreshToken: string
- expiresIn: number
- userInfo: UserInfo
- }
- }
- namespace User {
- interface UserItem {
- id: string
- deptId: string
- supervisorUserId?: string
- userNo: string
- nickName: string
- email: string
- phoneNo: string
- hireDate?: string
- probationMonths?: number | null
- lastWorkDay?: string
- sex: string
- avatar: string
- status: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- deptName?: string
- roleIds?: string[]
- postIds?: string[]
- /** 经启用职位继承的启用角色 ID */
- postInheritedRoleIds?: string[]
- /** 有效角色 ID(启用直接绑定 ∪ 职位继承) */
- effectiveRoleIds?: string[]
- /** 有效角色名称 */
- effectiveRoleNames?: string[]
- }
- }
- namespace Region {
- interface RegionItem {
- id: string
- name: string
- code: string
- description?: string
- sortOrder: number
- isActive: boolean
- createAt: string
- }
- interface RegionDetail extends RegionItem {
- updateAt: string
- updateBy: string
- }
- }
- namespace Category {
- interface CategoryItem {
- id: string
- name: string
- imageUrl?: string
- parentId?: string
- parentName?: string
- sortOrder: number
- isActive: boolean
- createAt: string
- }
- }
- namespace Unit {
- interface UnitItem {
- id: string
- name: string
- code: string
- isActive: boolean
- createAt: string
- }
- }
- namespace Tenant {
- interface TenantItem {
- id: string
- tenantNo: string
- tenantName: string
- contactName: string
- contactPhone: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace Product {
- interface ProductItem {
- id: string
- name: string
- categoryId?: string
- categoryName?: string
- unitId?: string
- unitName?: string
- description?: string
- imageUrl?: string
- isActive: boolean
- createAt: string
- }
- interface ProductDetail extends ProductItem {
- updateAt: string
- updateBy: string
- }
- // 商品轮播图
- interface ProductBanner {
- id: string
- productId: string
- mediaType: string
- fileUrl: string
- thumbnailUrl?: string
- sortOrder: number
- createAt: string
- }
- interface ProductBannerCreate {
- mediaType?: string
- fileUrl: string
- thumbnailUrl?: string
- sortOrder?: number
- }
- interface ProductBannerUpdate {
- mediaType?: string
- fileUrl?: string
- thumbnailUrl?: string
- sortOrder?: number
- }
- // 商品详情媒体
- interface ProductDetailMedia {
- id: string
- productId: string
- contentType: string
- contentText?: string
- fileUrl?: string
- thumbnailUrl?: string
- description?: string
- sortOrder: number
- createAt: string
- }
- interface ProductDetailMediaCreate {
- contentType?: string
- contentText?: string
- fileUrl?: string
- thumbnailUrl?: string
- description?: string
- sortOrder?: number
- }
- interface ProductDetailMediaUpdate {
- contentType?: string
- contentText?: string
- fileUrl?: string
- thumbnailUrl?: string
- description?: string
- sortOrder?: number
- }
- // 商品参数模板
- interface ProductParameter {
- id: string
- name: string
- code: string
- paramType: string
- options?: string
- placeholder?: string
- isRequired: number
- isActive: number
- sortOrder: number
- remark?: string
- createAt: string
- }
- interface ProductParameterSimple {
- id: string
- name: string
- code: string
- paramType: string
- options?: string
- }
- interface ProductParameterCreate {
- name: string
- code: string
- paramType?: string
- options?: string
- placeholder?: string
- isRequired?: number
- isActive?: number
- sortOrder?: number
- remark?: string
- }
- interface ProductParameterUpdate {
- name?: string
- code?: string
- paramType?: string
- options?: string
- placeholder?: string
- isRequired?: number
- isActive?: number
- sortOrder?: number
- remark?: string
- }
- // 分类参数关联
- interface CategoryParameter {
- id: string
- categoryId: string
- parameterId: string
- parameterName: string
- parameterCode: string
- paramType: string
- options?: string
- placeholder?: string
- isRequired: number
- defaultValue?: string
- sortOrder: number
- }
- interface CategoryParameterCreate {
- categoryId: string
- parameterId: string
- isRequired?: number
- defaultValue?: string
- sortOrder?: number
- }
- // 商品参数值
- interface ProductParameterValue {
- id: string
- productId: string
- parameterId: string
- parameterName?: string
- parameterCode?: string
- paramType?: string
- options?: string
- placeholder?: string
- paramValue?: string
- sortOrder: number
- }
- interface ProductParameterValueCreate {
- productId: string
- parameterId: string
- paramValue?: string
- }
- // 售后评价
- interface ProductReview {
- id: string
- productId: string
- orderId?: string
- orderItemId?: string
- userId: string
- userName?: string
- rating: number
- ratingTags?: string
- content?: string
- isAnonymous: number
- replyContent?: string
- replyTime?: string
- replyBy?: string
- replyByName?: string
- likeCount: number
- isTop: number
- status: string
- rejectReason?: string
- createAt: string
- mediaList?: ProductReviewMedia[]
- }
- interface ProductReviewMedia {
- id: string
- reviewId: string
- mediaType: string
- fileUrl: string
- thumbnailUrl?: string
- sortOrder: number
- }
- interface ProductReviewStatistics {
- totalCount: number
- pendingCount: number
- approvedCount: number
- rejectedCount: number
- avgRating: number
- ratingDistribution: Record<string, number>
- }
- }
- namespace Order {
- interface OrderItem {
- id: string
- orderNo: string
- clientId: string
- clientName: string
- regionId: string
- regionName: string
- priceListId: string
- totalAmount: string
- paidAmount: string
- receivableAmount: string
- refundAmount: string
- status: string
- paymentMethod?: string
- contactPerson?: string
- contactPhone?: string
- deliveryAddress?: string
- createAt: string
- }
- interface OrderDetail extends OrderItem {
- items: OrderItemDetail[]
- cancelReason?: string
- cancelReviewTime?: string
- completedTime?: string
- remark?: string
- }
- interface OrderItemDetail {
- id: string
- productId: string
- productName: string
- unitId: string
- unitName: string
- quantity: string
- unitPrice: string
- amount: string
- deliveredQuantity: string
- status: string
- }
- }
- namespace Delivery {
- interface DeliveryTask {
- id: string
- taskNo: string
- orderId: string
- orderNo: string
- regionId: string
- regionName: string
- deliverId?: string
- deliverName?: string
- status: string
- pickupTime?: string
- deliveryTime?: string
- createAt: string
- }
- interface DeliveryTaskDetail extends DeliveryTask {
- items: DeliveryTaskItem[]
- }
- interface DeliveryTaskItem {
- id: string
- productName: string
- quantity: string
- deliveredQuantity: string
- status: string
- }
- }
- namespace Dept {
- interface DeptItem {
- id: string
- parentId: string
- deptName: string
- deptCategoryCode: string
- status: string
- leaderUserId?: string
- leader: string
- leaderPhone: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- children?: DeptItem[]
- }
- }
- namespace Dict {
- interface DictTypeItem {
- id: string
- dictName: string
- dictType: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- interface DictDataItem {
- id: string
- dictLabel: string
- dictValue: string
- dictType: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- interface DictDataOption {
- label: string
- value: string
- }
- }
- namespace Site {
- interface SiteItem {
- id: string
- siteName: string
- siteCode: string
- siteType: string
- status: string
- address: string
- contactName: string
- contactPhone: string
- businessScope: string
- siteImage: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace Post {
- interface PostItem {
- id: string
- postName: string
- postCode: string
- status: string
- tenantNo: string
- orderNum: number
- remark: string
- boundUserNames?: string[]
- createTime: string
- updateTime: string
- }
- }
- namespace ItemUnit {
- interface ItemUnitItem {
- id: string
- unitCode: string
- unitName: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace BizCustomer {
- interface CustomerItem {
- id: string
- customerName: string
- sex: string
- idCardNo: string
- age: number | null
- phoneNo: string
- customerTags: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- type PartyRole = 'mother' | 'father' | 'newborn'
- type RelationBizType = 'cell_storage' | 'research_donation'
- interface RelationMember {
- role: PartyRole
- customerId: string
- name: string
- phone: string
- idCardNo: string
- }
- interface RelationGroup {
- bizType: RelationBizType
- protocolId: string
- protocolNo: string
- protocolStatus: string
- registerDate: string
- myRole: PartyRole
- members: RelationMember[]
- }
- interface ProtocolSummary {
- bizType: RelationBizType
- protocolId: string
- protocolNo: string
- protocolStatus: string
- registerDate: string
- myRole: PartyRole
- }
- interface CustomerRelations {
- customer: CustomerItem
- relatedGroups: RelationGroup[]
- protocols: ProtocolSummary[]
- }
- }
- namespace BizCellSampleType {
- interface CellSampleTypeItem {
- id: string
- typeCode: string
- typeName: string
- typeLogo: string
- storageYears: number | null
- storagePrice: number | null
- /** 样本编码过滤文本,空则协议单选编码时不过滤 */
- sampleCodeFilter: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace BizCollectionRegion {
- interface RegionItem {
- id: string
- regionName: string
- hospitalNames: string[]
- staffNames?: string[]
- leaderNames?: string[]
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace BizCollectionHospital {
- interface HospitalItem {
- id: string
- regionId: string
- hospitalName: string
- regionName?: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace BizCollectionRegionStaff {
- interface StaffItem {
- id: string
- regionId: string
- userId: string
- userName: string
- nickName: string
- userNo: string
- deptName: string
- isLeader: boolean
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace BizCollectionProtocolNo {
- interface ProtocolNoItem {
- id: string
- protocolNo: string
- issued: number
- /** 是否已在采集协议单或科研捐赠单中占用(与号池「是否下发」无关) */
- usedInProtocol?: boolean
- issuedUserId: string
- issuedUserName: string
- issuedTime: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace BizSampleCode {
- interface SampleCodeItem {
- id: string
- sampleCode: string
- sampleCodeType: string
- issued: number
- labStorageCode?: string
- /** 是否已在采集协议单或科研捐赠单样本表中占用(与号池「是否下发」无关) */
- usedInProtocol?: boolean
- issuedUserId: string
- issuedUserName: string
- issuedTime: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace Menu {
- interface MenuItem {
- id: string
- menuName: string
- parentId: string
- menuType: string
- path: string
- component: string
- perms: string
- isFrame: number
- visible: string
- status: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- children?: MenuItem[]
- }
- }
- namespace ExpressCompany {
- interface ExpressCompanyItem {
- id: string
- expressCode: string
- expressName: string
- expressLogo: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace Role {
- interface RoleItem {
- id: string
- roleName: string
- dataScope: string
- status: string
- tenantNo: string
- orderNum: number
- remark: string
- boundUserNames?: string[]
- boundPostNames?: string[]
- createTime: string
- updateTime: string
- }
- }
- namespace Leave {
- interface LeaveItem {
- id: string
- leaveType: string
- leaveTypeLabel?: string
- startDate: string
- endDate: string
- days: number
- reason: string
- wfInstanceId: string
- status: string
- tenantNo?: string
- orderNum?: number
- remark?: string
- createBy?: string
- createTime?: string
- updateBy?: string
- updateTime?: string
- }
- }
- namespace Workflow {
- interface ProcessDefItem {
- id: string
- processCode: string
- processName: string
- status: string
- latestVersion: number | null
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- interface VersionItem {
- id: string
- versionNo: number
- isLatest: string
- remark: string
- createTime: string
- updateTime: string
- }
- interface NodeData {
- nodeKey: string
- nodeType: string
- nodeName: string | null
- configJson: string | null
- }
- interface TransitionData {
- fromNodeKey: string
- toNodeKey: string
- conditionExpr: string | null
- }
- interface DesignerData {
- graphJson: string | null
- versionNo: number
- nodes: NodeData[]
- transitions: TransitionData[]
- }
- interface TaskItem {
- id: string
- instanceId: string
- nodeKey: string | null
- assigneeUserId: string | null
- status: string | null
- commentText: string | null
- createTime: string
- updateTime: string
- processName: string | null
- businessType: string | null
- businessId: string | null
- starterUserId: string | null
- instanceStatus: string | null
- instanceCreateTime: string | null
- }
- interface MyInstanceItem {
- id: string
- processName: string | null
- businessType: string | null
- businessId: string | null
- starterUserId: string | null
- status: string
- createTime: string
- updateTime: string
- businessTypeLabel?: string
- starterUserName?: string
- }
- interface TaskDetail {
- id: string
- nodeKey: string | null
- nodeName?: string | null
- assigneeUserId: string | null
- assigneeUserName?: string | null
- status: string | null
- commentText: string | null
- createTime: string
- updateTime: string
- }
- interface InstanceDetail {
- id: string
- processVersionId: string
- businessType: string | null
- businessId: string | null
- starterUserId: string | null
- status: string | null
- variables: string
- createTime: string
- tasks: TaskDetail[]
- }
- interface BusinessAllTasks {
- businessType: string
- businessId: string
- businessFormFields: Array<{ label: string; value: string }>
- tasks: Array<{
- id: string
- instanceId: string
- instanceStatus: string
- nodeKey: string | null
- nodeName: string
- assigneeUserId: string | null
- assigneeUserName: string
- status: string | null
- commentText: string | null
- createTime: string
- updateTime: string
- }>
- }
- }
- namespace CellProductType {
- interface CellProductTypeItem {
- id: string
- productTypeCode: string
- productTypeName: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- namespace CellProductSpec {
- interface CellProductSpecItem {
- id: string
- specCode: string
- specName: string
- tenantNo: string
- orderNum: number
- remark: string
- createTime: string
- updateTime: string
- }
- }
- }
- declare module '*.vue' {
- import type { DefineComponent } from 'vue'
- const component: DefineComponent<{}, {}, any>
- export default component
- }
|