You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
3.1 KiB

package SysDictKit
import (
"dsBaseRpc/Const"
"dsBaseRpc/Utils/DbUtil"
"dsBaseRpc/Utils/LogUtil"
)
var db = DbUtil.Engine
//类型+代码---->中文名称
var MapDictKindCodeToChinese = make(map[string]string)
//类型+中文名称--->代码
var MapDictKindChineseToCode = make(map[string]string)
//学段代码--- >学段名称
var MapStageIdToName = make(map[string]string)
//学段名称--->学段代码
var MapStageNameToId = make(map[string]string)
//学科代码--- >学科名称
var MapSubjectIdToName = make(map[string]string)
//学科名称--->学科代码
var MapSubjectNameToId = make(map[string]string)
//学段名称+学科名称--->是不是存在?
var MapStageSubjectNameExist = make(map[string]string)
//是否--> 正向
var MapTrueOrFalseValueToName = make(map[string]string)
//是否--> 反向
var MapTrueOrFalseNameToValue = make(map[string]string)
func init() {
//1、初始化大的字典表
sql := `select dict_kind,dict_code,dict_value from t_sys_dict where b_use=1`
list, err := db.SQL(sql).Query().List()
if err != nil {
LogUtil.Error(Const.DataBaseActionError, "在执行初始化字典操作时发生严重错误!")
return
}
for i := range list {
dictKind := list[i]["dict_kind"].(string)
dictCode := list[i]["dict_code"].(string)
dictValue := list[i]["dict_value"].(string)
//正向
MapDictKindCodeToChinese[dictKind+"_"+dictCode] = dictValue
//反向
MapDictKindChineseToCode[dictKind+"_"+dictValue] = dictCode
}
//2、初始化学段
sql = `select stage_id,stage_name from t_dm_stage`
list, err = db.SQL(sql).Query().List()
if err != nil {
LogUtil.Error(Const.DataBaseActionError, "在执行初始化学段操作时发生严重错误!")
return
}
for i := range list {
stageId := list[i]["stage_id"].(string)
stageName := list[i]["stage_name"].(string)
//正向
MapStageIdToName[stageId] = stageName
//反向
MapStageNameToId[stageName] = stageId
}
//3、初始化学科
sql = `select subject_id,subject_name from t_dm_subject`
list, err = db.SQL(sql).Query().List()
if err != nil {
LogUtil.Error(Const.DataBaseActionError, "在执行初始化学科操作时发生严重错误!")
return
}
for i := range list {
subjectId := list[i]["subject_id"].(string)
subjectName := list[i]["subject_name"].(string)
//正向
MapSubjectIdToName[subjectId] = subjectName
//反向
MapSubjectNameToId[subjectName] = subjectId
}
//4、布尔
MapTrueOrFalseValueToName["1"] = "是"
MapTrueOrFalseValueToName["-1"] = "否"
MapTrueOrFalseNameToValue["是"] = "1"
MapTrueOrFalseNameToValue["否"] = "-1"
//5、学段与学科
sql = `select t2.stage_id,t2.stage_name,t3.subject_id,t3.subject_name from t_dm_stage_subject as t1
inner join t_dm_stage as t2 on t1.stage_id=t2.stage_id inner join t_dm_subject as t3
on t1.subject_id=t3.subject_id`
list, err = db.SQL(sql).Query().List()
if err != nil {
LogUtil.Error(Const.DataBaseActionError, "在执行初始化学段与学科操作时发生严重错误!")
return
}
for i := range list {
record := list[i]
MapStageSubjectNameExist[record["stage_name"].(string)+"_"+record["subject_name"].(string)] = "1"
}
}