75 lines
2.5 KiB
Go
75 lines
2.5 KiB
Go
package controller
|
|
|
|
import (
|
|
"context"
|
|
|
|
"easygoadmin/api/v1"
|
|
"easygoadmin/internal/service"
|
|
)
|
|
|
|
// ============================== 城市控制器 ==============================
|
|
|
|
// CCity 城市控制器
|
|
// 薄层控制器,仅负责参数透传,业务逻辑由 service.City() 处理
|
|
type CCity struct{}
|
|
|
|
// Page 城市分页
|
|
// 按查询条件分页返回城市列表
|
|
func (c *CCity) Page(ctx context.Context, req *v1.CityPageReq) (res *v1.CityPageRes, err error) {
|
|
return service.City().Page(ctx, req)
|
|
}
|
|
|
|
// List 城市列表
|
|
// 按父级编码、层级等条件返回城市列表,供级联选择使用
|
|
func (c *CCity) List(ctx context.Context, req *v1.CityListReq) (res v1.CityListRes, err error) {
|
|
return service.City().List(ctx, req)
|
|
}
|
|
|
|
// Detail 城市详情
|
|
// 按城市ID查询详情
|
|
func (c *CCity) Detail(ctx context.Context, req *v1.CityDetailReq) (res *v1.CityDetailRes, err error) {
|
|
return service.City().Detail(ctx, req)
|
|
}
|
|
|
|
// Add 新增城市
|
|
// 新增成功后返回新记录ID
|
|
func (c *CCity) Add(ctx context.Context, req *v1.CityAddReq) (res *v1.IdRes, err error) {
|
|
return service.City().Add(ctx, req)
|
|
}
|
|
|
|
// Update 修改城市
|
|
// 按城市ID更新记录
|
|
func (c *CCity) Update(ctx context.Context, req *v1.CityUpdateReq) (res *v1.CityUpdateRes, err error) {
|
|
return service.City().Update(ctx, req)
|
|
}
|
|
|
|
// Delete 删除城市
|
|
// 按城市ID删除单条记录
|
|
func (c *CCity) Delete(ctx context.Context, req *v1.CityDeleteReq) (res *v1.CityDeleteRes, err error) {
|
|
return service.City().Delete(ctx, req)
|
|
}
|
|
|
|
// BatchDelete 批量删除城市
|
|
// 按城市ID列表批量删除记录
|
|
func (c *CCity) BatchDelete(ctx context.Context, req *v1.CityBatchDeleteReq) (res *v1.CityBatchDeleteRes, err error) {
|
|
return service.City().BatchDelete(ctx, req)
|
|
}
|
|
|
|
// ByParent 按父编码查询下级城市
|
|
// 登录用户即可访问,返回指定父级下的直属下级城市
|
|
func (c *CCity) ByParent(ctx context.Context, req *v1.CityByParentReq) (res *v1.CityByParentRes, err error) {
|
|
return service.City().ByParent(ctx, req)
|
|
}
|
|
|
|
// GetCityList 按父编码获取城市列表
|
|
// 登录用户即可访问,供级联选择器懒加载下级城市
|
|
func (c *CCity) GetCityList(ctx context.Context, req *v1.CityGetListReq) (res v1.CityGetListRes, err error) {
|
|
return service.City().GetCityList(ctx, req)
|
|
}
|
|
|
|
// AreaProvince 省份列表
|
|
// 登录用户即可访问,返回顶级省份列表
|
|
func (c *CCity) AreaProvince(ctx context.Context, req *v1.AreaParentReq) (res *v1.AreaParentRes, err error) {
|
|
return service.City().AreaProvince(ctx, req)
|
|
}
|