feat:完善项目信息
This commit is contained in:
@ -28,6 +28,13 @@ type (
|
||||
ID string `json:"id"`
|
||||
*model2.SysTenant
|
||||
}
|
||||
// InstanceSelectInfo 租户筛选信息
|
||||
InstanceSelectInfo struct {
|
||||
ID string `json:"id"`
|
||||
Code string `json:"code"`
|
||||
Name string `json:"name"`
|
||||
Children []*InstanceSelectInfo `json:"children"`
|
||||
}
|
||||
// InstanceParams 参数信息
|
||||
InstanceParams struct {
|
||||
ID uint64
|
||||
@ -64,6 +71,39 @@ func (c *Instance) Index(name string, page, pageSize int) (*controller.ReturnPag
|
||||
return &controller.ReturnPages{Data: list, Count: count}, nil
|
||||
}
|
||||
|
||||
func (c *Instance) Select() (map[string]*InstanceSelectInfo, error) {
|
||||
mSysTenant := model.NewSysTenant()
|
||||
out := make([]*model2.SysTenant, 0)
|
||||
|
||||
if err := model2.ScanFields(mSysTenant.SysTenant, &out, []string{"id", "name", "province", "city"}, &model2.ModelWhereOrder{
|
||||
Order: model2.NewOrder("province", model2.OrderModeToAsc),
|
||||
}, &model2.ModelWhereOrder{
|
||||
Order: model2.NewOrder("city", model2.OrderModeToAsc),
|
||||
}); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
res := make(map[string]*InstanceSelectInfo, 0)
|
||||
|
||||
for _, v := range out {
|
||||
data := &InstanceSelectInfo{
|
||||
ID: v.GetEncodeID(),
|
||||
Code: v.City,
|
||||
Name: config.MemoryForAreaInfo[v.Province][v.City],
|
||||
Children: nil,
|
||||
}
|
||||
if _, has := res[v.Province]; !has {
|
||||
res[v.Province] = &InstanceSelectInfo{
|
||||
Code: v.Province,
|
||||
Name: config.MemoryForAreaInfo[config2.DefaultChinaAreaCode][v.Province],
|
||||
Children: []*InstanceSelectInfo{data},
|
||||
}
|
||||
continue
|
||||
}
|
||||
res[v.Province].Children = append(res[v.Province].Children, data)
|
||||
}
|
||||
return res, nil
|
||||
}
|
||||
|
||||
// Form 数据操作
|
||||
func (c *Instance) Form(params *InstanceParams) error {
|
||||
mSysTenant := model.NewSysTenant()
|
||||
@ -78,6 +118,10 @@ func (c *Instance) Form(params *InstanceParams) error {
|
||||
} else if !isExist {
|
||||
return errors.New("操作错误,平台信息不存在或已被删除")
|
||||
}
|
||||
|
||||
if mSysTenant.Province != params.Area.Province || mSysTenant.City != params.Area.City {
|
||||
// TODO:查询区域是否存在租户平台
|
||||
}
|
||||
}
|
||||
mSysTenant.Name = params.Name
|
||||
mSysTenant.Area = model2.Area{
|
||||
|
Reference in New Issue
Block a user