# 在商品管理 /account-management 下面新增一个 店铺管理 需要对接的API如下, 然后页面样式可以参考 /account-management/account # 店铺列表 ## OpenAPI Specification ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /api/admin/shops: get: summary: 店铺列表 deprecated: false description: '' tags: - 店铺管理 - 店铺管理 parameters: - name: page in: query description: 页码 required: false schema: description: 页码 minimum: 1 type: integer - name: page_size in: query description: 每页数量 required: false schema: description: 每页数量 maximum: 100 minimum: 1 type: integer - name: shop_name in: query description: 店铺名称模糊查询 required: false schema: description: 店铺名称模糊查询 maxLength: 100 type: string - name: shop_code in: query description: 店铺编号模糊查询 required: false schema: description: 店铺编号模糊查询 maxLength: 50 type: string - name: parent_id in: query description: 上级店铺ID required: false schema: description: 上级店铺ID minimum: 1 type: integer nullable: true - name: level in: query description: 店铺层级 (1-7级) required: false schema: description: 店铺层级 (1-7级) maximum: 7 minimum: 1 type: integer nullable: true - name: status in: query description: 状态 (0:禁用, 1:启用) required: false schema: description: 状态 (0:禁用, 1:启用) type: integer nullable: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ModelShopPageResult' headers: {} x-apifox-name: '' '400': description: 请求参数错误 content: application/json: schema: &ref_0 $ref: '#/components/schemas/ErrorResponse' headers: {} x-apifox-name: '' '401': description: 未认证或认证已过期 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '403': description: 无权访问 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '500': description: 服务器内部错误 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' security: - BearerAuth: [] x-apifox: schemeGroups: - id: AiK0MKfrzIq2Np2gS4yVd schemeIds: - BearerAuth required: true use: id: AiK0MKfrzIq2Np2gS4yVd scopes: AiK0MKfrzIq2Np2gS4yVd: BearerAuth: [] x-apifox-folder: 店铺管理 x-apifox-status: released x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-408366339-run components: schemas: ModelShopPageResult: properties: items: description: 店铺列表 items: $ref: '#/components/schemas/ModelShopResponse' type: array nullable: true page: description: 当前页码 type: integer size: description: 每页数量 type: integer total: description: 总记录数 type: integer type: object x-apifox-orders: - items - page - size - total x-apifox-ignore-properties: [] x-apifox-folder: '' ModelShopResponse: properties: address: description: 详细地址 type: string city: description: 城市 type: string contact_name: description: 联系人姓名 type: string contact_phone: description: 联系人电话 type: string created_at: description: 创建时间 type: string district: description: 区县 type: string id: description: 店铺ID minimum: 0 type: integer level: description: 店铺层级 (1-7级) type: integer parent_id: description: 上级店铺ID minimum: 0 type: integer nullable: true province: description: 省份 type: string shop_code: description: 店铺编号 type: string shop_name: description: 店铺名称 type: string status: description: 状态 (0:禁用, 1:启用) type: integer updated_at: description: 更新时间 type: string type: object x-apifox-orders: - address - city - contact_name - contact_phone - created_at - district - id - level - parent_id - province - shop_code - shop_name - status - updated_at x-apifox-ignore-properties: [] x-apifox-folder: '' ErrorResponse: properties: code: description: 错误码 type: integer message: description: 错误消息 type: string timestamp: description: 时间戳 format: date-time type: string required: - code - message - timestamp type: object x-apifox-orders: - code - message - timestamp x-apifox-ignore-properties: [] x-apifox-folder: '' securitySchemes: BearerAuth: bearerFormat: JWT scheme: bearer type: jwt servers: - url: https://cmp-api.boss160.cn description: 测试环境 security: [] ``` # 创建店铺 ## OpenAPI Specification ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /api/admin/shops: post: summary: 创建店铺 deprecated: false description: '' tags: - 店铺管理 - 店铺管理 parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ModelCreateShopRequest' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ModelShopResponse' headers: {} x-apifox-name: '' '400': description: 请求参数错误 content: application/json: schema: &ref_0 $ref: '#/components/schemas/ErrorResponse' headers: {} x-apifox-name: '' '401': description: 未认证或认证已过期 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '403': description: 无权访问 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '500': description: 服务器内部错误 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' security: - BearerAuth: [] x-apifox: schemeGroups: - id: CgtLTd_zQ5XPrx3y7BdLh schemeIds: - BearerAuth required: true use: id: CgtLTd_zQ5XPrx3y7BdLh scopes: CgtLTd_zQ5XPrx3y7BdLh: BearerAuth: [] x-apifox-folder: 店铺管理 x-apifox-status: released x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-408366340-run components: schemas: ModelCreateShopRequest: properties: address: description: 详细地址 maxLength: 255 type: string city: description: 城市 maxLength: 50 type: string contact_name: description: 联系人姓名 maxLength: 50 type: string contact_phone: description: 联系人电话 maxLength: 11 minLength: 11 type: string district: description: 区县 maxLength: 50 type: string init_password: description: 初始账号密码 maxLength: 32 minLength: 8 type: string init_phone: description: 初始账号手机号 maxLength: 11 minLength: 11 type: string init_username: description: 初始账号用户名 maxLength: 50 minLength: 3 type: string parent_id: description: 上级店铺ID(一级店铺可不填) minimum: 1 type: integer nullable: true province: description: 省份 maxLength: 50 type: string shop_code: description: 店铺编号 maxLength: 50 minLength: 1 type: string shop_name: description: 店铺名称 maxLength: 100 minLength: 1 type: string required: - init_password - init_phone - init_username - shop_code - shop_name type: object x-apifox-orders: - address - city - contact_name - contact_phone - district - init_password - init_phone - init_username - parent_id - province - shop_code - shop_name x-apifox-ignore-properties: [] x-apifox-folder: '' ModelShopResponse: properties: address: description: 详细地址 type: string city: description: 城市 type: string contact_name: description: 联系人姓名 type: string contact_phone: description: 联系人电话 type: string created_at: description: 创建时间 type: string district: description: 区县 type: string id: description: 店铺ID minimum: 0 type: integer level: description: 店铺层级 (1-7级) type: integer parent_id: description: 上级店铺ID minimum: 0 type: integer nullable: true province: description: 省份 type: string shop_code: description: 店铺编号 type: string shop_name: description: 店铺名称 type: string status: description: 状态 (0:禁用, 1:启用) type: integer updated_at: description: 更新时间 type: string type: object x-apifox-orders: - address - city - contact_name - contact_phone - created_at - district - id - level - parent_id - province - shop_code - shop_name - status - updated_at x-apifox-ignore-properties: [] x-apifox-folder: '' ErrorResponse: properties: code: description: 错误码 type: integer message: description: 错误消息 type: string timestamp: description: 时间戳 format: date-time type: string required: - code - message - timestamp type: object x-apifox-orders: - code - message - timestamp x-apifox-ignore-properties: [] x-apifox-folder: '' securitySchemes: BearerAuth: bearerFormat: JWT scheme: bearer type: jwt servers: - url: https://cmp-api.boss160.cn description: 测试环境 security: [] ``` # 删除店铺 ## OpenAPI Specification ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /api/admin/shops/{id}: delete: summary: 删除店铺 deprecated: false description: '' tags: - 店铺管理 - 店铺管理 parameters: - name: id in: path description: ID required: true example: 0 schema: description: ID minimum: 0 type: integer responses: '400': description: 请求参数错误 content: application/json: schema: &ref_0 $ref: '#/components/schemas/ErrorResponse' headers: {} x-apifox-name: '' '401': description: 未认证或认证已过期 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '403': description: 无权访问 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '500': description: 服务器内部错误 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' security: - BearerAuth: [] x-apifox: schemeGroups: - id: ivp0VlbXbNhnY2xcsCWbS schemeIds: - BearerAuth required: true use: id: ivp0VlbXbNhnY2xcsCWbS scopes: ivp0VlbXbNhnY2xcsCWbS: BearerAuth: [] x-apifox-folder: 店铺管理 x-apifox-status: released x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-408366341-run components: schemas: ErrorResponse: properties: code: description: 错误码 type: integer message: description: 错误消息 type: string timestamp: description: 时间戳 format: date-time type: string required: - code - message - timestamp type: object x-apifox-orders: - code - message - timestamp x-apifox-ignore-properties: [] x-apifox-folder: '' securitySchemes: BearerAuth: bearerFormat: JWT scheme: bearer type: jwt servers: - url: https://cmp-api.boss160.cn description: 测试环境 security: [] ``` # 更新店铺 ## OpenAPI Specification ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /api/admin/shops/{id}: put: summary: 更新店铺 deprecated: false description: '' tags: - 店铺管理 - 店铺管理 parameters: - name: id in: path description: ID required: true example: 0 schema: description: ID minimum: 0 type: integer requestBody: content: application/json: schema: $ref: '#/components/schemas/ModelUpdateShopParams' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ModelShopResponse' headers: {} x-apifox-name: '' '400': description: 请求参数错误 content: application/json: schema: &ref_0 $ref: '#/components/schemas/ErrorResponse' headers: {} x-apifox-name: '' '401': description: 未认证或认证已过期 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '403': description: 无权访问 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' '500': description: 服务器内部错误 content: application/json: schema: *ref_0 headers: {} x-apifox-name: '' security: - BearerAuth: [] x-apifox: schemeGroups: - id: 2BoHA3GVAX6-zd8XmFxez schemeIds: - BearerAuth required: true use: id: 2BoHA3GVAX6-zd8XmFxez scopes: 2BoHA3GVAX6-zd8XmFxez: BearerAuth: [] x-apifox-folder: 店铺管理 x-apifox-status: released x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-408366342-run components: schemas: ModelUpdateShopParams: properties: address: description: 详细地址 maxLength: 255 type: string city: description: 城市 maxLength: 50 type: string contact_name: description: 联系人姓名 maxLength: 50 type: string contact_phone: description: 联系人电话 maxLength: 11 minLength: 11 type: string district: description: 区县 maxLength: 50 type: string province: description: 省份 maxLength: 50 type: string shop_name: description: 店铺名称 maxLength: 100 minLength: 1 type: string status: description: 状态 (0:禁用, 1:启用) type: integer required: - shop_name - status type: object x-apifox-orders: - address - city - contact_name - contact_phone - district - province - shop_name - status x-apifox-ignore-properties: [] x-apifox-folder: '' ModelShopResponse: properties: address: description: 详细地址 type: string city: description: 城市 type: string contact_name: description: 联系人姓名 type: string contact_phone: description: 联系人电话 type: string created_at: description: 创建时间 type: string district: description: 区县 type: string id: description: 店铺ID minimum: 0 type: integer level: description: 店铺层级 (1-7级) type: integer parent_id: description: 上级店铺ID minimum: 0 type: integer nullable: true province: description: 省份 type: string shop_code: description: 店铺编号 type: string shop_name: description: 店铺名称 type: string status: description: 状态 (0:禁用, 1:启用) type: integer updated_at: description: 更新时间 type: string type: object x-apifox-orders: - address - city - contact_name - contact_phone - created_at - district - id - level - parent_id - province - shop_code - shop_name - status - updated_at x-apifox-ignore-properties: [] x-apifox-folder: '' ErrorResponse: properties: code: description: 错误码 type: integer message: description: 错误消息 type: string timestamp: description: 时间戳 format: date-time type: string required: - code - message - timestamp type: object x-apifox-orders: - code - message - timestamp x-apifox-ignore-properties: [] x-apifox-folder: '' securitySchemes: BearerAuth: bearerFormat: JWT scheme: bearer type: jwt servers: - url: https://cmp-api.boss160.cn description: 测试环境 security: [] ```