Files
qnc-server-v3/app/main/api/desc/admin/admin_product.api
2026-05-13 14:43:10 +08:00

174 lines
5.9 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

syntax = "v1"
info (
title: "后台产品管理服务"
desc: "后台产品管理相关接口"
version: "v1"
)
// 产品管理接口
@server(
prefix: /api/v1/admin/product
group: admin_product
middleware: AdminAuthInterceptor
)
service main {
// 创建产品
@handler AdminCreateProduct
post /create (AdminCreateProductReq) returns (AdminCreateProductResp)
// 更新产品
@handler AdminUpdateProduct
put /update/:id (AdminUpdateProductReq) returns (AdminUpdateProductResp)
// 删除产品
@handler AdminDeleteProduct
delete /delete/:id (AdminDeleteProductReq) returns (AdminDeleteProductResp)
// 获取产品列表
@handler AdminGetProductList
get /list (AdminGetProductListReq) returns (AdminGetProductListResp)
// 获取产品详情
@handler AdminGetProductDetail
get /detail/:id (AdminGetProductDetailReq) returns (AdminGetProductDetailResp)
// 获取产品功能列表
@handler AdminGetProductFeatureList
get /feature/list/:product_id (AdminGetProductFeatureListReq) returns ([]AdminGetProductFeatureListResp)
// 更新产品功能关联(批量)
@handler AdminUpdateProductFeatures
put /feature/update/:product_id (AdminUpdateProductFeaturesReq) returns (AdminUpdateProductFeaturesResp)
}
type (
// 创建产品请求
AdminCreateProductReq {
ProductName string `json:"product_name"` // 服务名
ProductEn string `json:"product_en"` // 英文名
Description string `json:"description"` // 描述
Notes string `json:"notes,optional"` // 备注
SellPrice float64 `json:"sell_price"` // 售价
}
// 创建产品响应
AdminCreateProductResp {
Id string `json:"id"` // 产品ID
}
// 更新产品请求
AdminUpdateProductReq {
Id string `path:"id"` // 产品ID
ProductName *string `json:"product_name,optional"` // 服务名
ProductEn *string `json:"product_en,optional"` // 英文名
Description *string `json:"description,optional"` // 描述
Notes *string `json:"notes,optional"` // 备注
SellPrice *float64 `json:"sell_price,optional"` // 售价
}
// 更新产品响应
AdminUpdateProductResp {
Success bool `json:"success"` // 是否成功
}
// 删除产品请求
AdminDeleteProductReq {
Id string `path:"id"` // 产品ID
}
// 删除产品响应
AdminDeleteProductResp {
Success bool `json:"success"` // 是否成功
}
// 获取产品列表请求
AdminGetProductListReq {
Page int64 `form:"page"` // 页码
PageSize int64 `form:"pageSize"` // 每页数量
ProductName *string `form:"product_name,optional"` // 服务名
ProductEn *string `form:"product_en,optional"` // 英文名
}
// 产品列表项
ProductListItem {
Id string `json:"id"` // 产品ID
ProductName string `json:"product_name"` // 服务名
ProductEn string `json:"product_en"` // 英文名
Description string `json:"description"` // 描述
Notes string `json:"notes"` // 备注
CostPrice float64 `json:"cost_price"` // 成本(由关联模块成本汇总,只读)
SellPrice float64 `json:"sell_price"` // 售价
CreateTime string `json:"create_time"` // 创建时间
UpdateTime string `json:"update_time"` // 更新时间
}
// 获取产品列表响应
AdminGetProductListResp {
Total int64 `json:"total"` // 总数
Items []ProductListItem `json:"items"` // 列表数据
}
// 获取产品详情请求
AdminGetProductDetailReq {
Id string `path:"id"` // 产品ID
}
// 获取产品详情响应
AdminGetProductDetailResp {
Id string `json:"id"` // 产品ID
ProductName string `json:"product_name"` // 服务名
ProductEn string `json:"product_en"` // 英文名
Description string `json:"description"` // 描述
Notes string `json:"notes"` // 备注
CostPrice float64 `json:"cost_price"` // 成本(由关联模块成本汇总,只读)
SellPrice float64 `json:"sell_price"` // 售价
CreateTime string `json:"create_time"` // 创建时间
UpdateTime string `json:"update_time"` // 更新时间
}
// 获取产品功能列表请求
AdminGetProductFeatureListReq {
ProductId string `path:"product_id"` // 产品ID
}
// 获取产品功能列表响应Item
AdminGetProductFeatureListResp {
Id string `json:"id"` // 关联ID
ProductId string `json:"product_id"` // 产品ID
FeatureId string `json:"feature_id"` // 功能ID
ApiId string `json:"api_id"` // API标识
Name string `json:"name"` // 功能描述
CostPrice float64 `json:"cost_price"` // 模块成本价(元,来自 feature
Sort int64 `json:"sort"` // 排序
Enable int64 `json:"enable"` // 是否启用
IsImportant int64 `json:"is_important"` // 是否重要
CreateTime string `json:"create_time"` // 创建时间
UpdateTime string `json:"update_time"` // 更新时间
}
// // 获取产品功能列表响应
// AdminGetProductFeatureListResp {
// Items []ProductFeatureListItem `json:"items"` // 列表数据
// }
// 产品功能关联项
ProductFeatureItem {
FeatureId string `json:"feature_id"` // 功能ID
Sort int64 `json:"sort"` // 排序
Enable int64 `json:"enable"` // 是否启用
IsImportant int64 `json:"is_important"` // 是否重要
}
// 更新产品功能关联请求(批量)
AdminUpdateProductFeaturesReq {
ProductId string `path:"product_id"` // 产品ID
Features []ProductFeatureItem `json:"features"` // 功能列表
}
// 更新产品功能关联响应
AdminUpdateProductFeaturesResp {
Success bool `json:"success"` // 是否成功
}
)