zqbao пре 10 месеци
родитељ
комит
1e331f238d
2 измењених фајлова са 17 додато и 3 уклоњено
  1. 10 3
      controllers/sys_department.go
  2. 7 0
      models/sys_department.go

+ 10 - 3
controllers/sys_department.go

@@ -126,14 +126,21 @@ func (this *SysDepartmentController) Edit() {
 		br.Msg = "分组不存在,请刷新重试"
 		return
 	}
-	count, err = models.GetSysDepartmentCountByName(req.SysDepartmentName)
+	oldSysDepartment, err := models.GetSysDepartmentById(req.SysDepartmentId)
 	if err != nil && err != orm.ErrNoRows {
 		br.Msg = "获取数据失败"
 		br.ErrMsg = "获取数据失败,Err:" + err.Error()
 		return
 	}
-	if count > 0 {
-		br.Msg = "名称已存在,请重新输入"
+
+	newSysDepartment, err := models.GetSysDepartmentByName(req.SysDepartmentName)
+	if err != nil && err != orm.ErrNoRows {
+		br.Msg = "获取数据失败"
+		br.ErrMsg = "获取数据失败,Err:" + err.Error()
+		return
+	}
+	if newSysDepartment != nil && newSysDepartment.SysDepartmentId != oldSysDepartment.SysDepartmentId {
+		br.Msg = "分组名称已存在,请重新输入"
 		return
 	}
 	sysDepartment := &models.SysDepartment{}

+ 7 - 0
models/sys_department.go

@@ -155,6 +155,13 @@ func GetSysDepartmentCountByName(sysDepartmentName string) (count int, err error
 	return
 }
 
+func GetSysDepartmentByName(sysDepartmentName string) (item *SysDepartment, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM sys_department WHERE sys_department_name=?`
+	err = o.Raw(sql, sysDepartmentName).QueryRow(&item)
+	return
+}
+
 func GetSysDepartmentListByLevel(level int) (items []*SysDepartmentList, err error) {
 	o := orm.NewOrm()
 	sql := `SELECT * FROM sys_department WHERE level=? ORDER BY sort`