|
|
|
@ -334,13 +334,83 @@ func SaveAppRange(appId string, rangeCodes []string) error {
|
|
|
|
|
return nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
功能:用于返回APP使用范围准备的实体
|
|
|
|
|
*/
|
|
|
|
|
type OrgBean struct {
|
|
|
|
|
OrgId string
|
|
|
|
|
OrgName string
|
|
|
|
|
}
|
|
|
|
|
type AppRangeBean struct {
|
|
|
|
|
FullFlag int
|
|
|
|
|
CityCode string
|
|
|
|
|
DistrictList []string
|
|
|
|
|
OrgList []OrgBean
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
功能:获取指定APP的使用范围对应信息
|
|
|
|
|
*/
|
|
|
|
|
func GetAppRange(appId string) ([]map[string]interface{}, error) {
|
|
|
|
|
func GetAppRange(appId string) (AppRangeBean, error) {
|
|
|
|
|
var bean AppRangeBean
|
|
|
|
|
var districtList = make([]string, 0)
|
|
|
|
|
var orgList = make([]OrgBean, 0)
|
|
|
|
|
|
|
|
|
|
sql := `select range_code from t_app_range where app_id=?`
|
|
|
|
|
list, err := db.SQL(sql, appId).Query().List()
|
|
|
|
|
return list, err
|
|
|
|
|
if len(list) == 0 {
|
|
|
|
|
return bean, errors.New("没有找到此app的接入范围数据!")
|
|
|
|
|
}
|
|
|
|
|
aCode := list[0]["range_code"].(string)
|
|
|
|
|
//1、是不是全市
|
|
|
|
|
if len(aCode) == 6 && aCode[len(aCode)-2:] == "00" {
|
|
|
|
|
bean.FullFlag = 1
|
|
|
|
|
//城市code
|
|
|
|
|
bean.CityCode = list[0]["range_code"].(string)
|
|
|
|
|
//县区列表
|
|
|
|
|
bean.DistrictList = make([]string, 0)
|
|
|
|
|
//组织机构列表
|
|
|
|
|
bean.OrgList = make([]OrgBean, 0)
|
|
|
|
|
} else {
|
|
|
|
|
bean.FullFlag = 0
|
|
|
|
|
//如果是县区
|
|
|
|
|
if len(aCode) == 6 {
|
|
|
|
|
//查找对应的城市
|
|
|
|
|
bean.CityCode = aCode[0:4] + "00"
|
|
|
|
|
} else {
|
|
|
|
|
//如果是单位+查找对应的城市
|
|
|
|
|
sql := `select city_code from t_base_organization where org_id=?`
|
|
|
|
|
_list2, err := db.SQL(sql, aCode).Query().List()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return bean, err
|
|
|
|
|
}
|
|
|
|
|
if len(_list2) == 0 {
|
|
|
|
|
return bean, errors.New("没有找到指定的org_id!")
|
|
|
|
|
}
|
|
|
|
|
bean.CityCode = _list2[0]["city_code"].(string)
|
|
|
|
|
}
|
|
|
|
|
//2、填充县区和单位列表
|
|
|
|
|
for i := range list {
|
|
|
|
|
c := list[i]["range_code"].(string)
|
|
|
|
|
//县区
|
|
|
|
|
if len(c) == 6 {
|
|
|
|
|
districtList = append(districtList, c)
|
|
|
|
|
} else { //单位
|
|
|
|
|
var o OrgBean
|
|
|
|
|
o.OrgId = c
|
|
|
|
|
sql = `select org_name from t_base_organization where org_id=?`
|
|
|
|
|
list2, err := db.SQL(sql, o.OrgId).Query().List()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return bean, err
|
|
|
|
|
}
|
|
|
|
|
o.OrgName = list2[0]["org_name"].(string)
|
|
|
|
|
orgList = append(orgList, o)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
bean.OrgList = orgList
|
|
|
|
|
bean.DistrictList = districtList
|
|
|
|
|
return bean, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/******************************************以下为内部函数***************************/
|
|
|
|
|