liuyaqi 3 éve
szülő
commit
0c0e98ec00
4 módosított fájl, 23 hozzáadás és 10 törlés
  1. 1 1
      handler/learning/skill.go
  2. 4 2
      main.go
  3. 4 0
      model/base.go
  4. 14 7
      service/learning/skill.go

+ 1 - 1
handler/learning.go → handler/learning/skill.go

@@ -1,4 +1,4 @@
-package handler
+package learning
 
 import (
 	"context"

+ 4 - 2
main.go

@@ -2,11 +2,13 @@ package main
 
 import (
 	"context"
-	"github.com/golang/glog"
 	"lims_adapter/handler"
+	"lims_adapter/handler/learning"
 	"lims_adapter/service/timers"
 	"net/http"
 
+	"github.com/golang/glog"
+
 	_ "lims_adapter/boot"
 
 	"dashoo.cn/micro_libary/micro_srv"
@@ -55,7 +57,7 @@ func main() {
 	s.RegisterName("Test",
 		new((handler.TestController)), "")
 	s.RegisterName("LearningSkill",
-		new((handler.LearningSkill)), "")
+		new((learning.LearningSkill)), "")
 
 	// 注册auth处理
 	s.AuthFunc = handleAuth

+ 4 - 0
model/base.go

@@ -31,3 +31,7 @@ type ContractBreach struct {
 	MaxPoint int
 	Persent  float64
 }
+
+type IdRequiredReq struct {
+	Id int `json:"id" v:"required#请输入Id"`
+}

+ 14 - 7
service/learning/skill.go

@@ -128,12 +128,20 @@ func (s LearningSkillService) Update(ctx context.Context, req *learning.Learning
 		return validErr.Current()
 	}
 
+	skill, err := s.LearningSkillDao.Where("Id = ?", req.Id).One()
+	if err != nil {
+		return err
+	}
+	if skill == nil {
+		return myerrors.NewMsgError(nil, fmt.Sprintf("技能不存在: %d", req.Id))
+	}
+
 	if req.Name != "" {
-		skill, err := s.LearningSkillDao.Where("Name = ?", req.Name).One()
+		existSkill, err := s.LearningSkillDao.Where("Name = ?", req.Name).One()
 		if err != nil {
 			return err
 		}
-		if skill != nil {
+		if existSkill != nil && existSkill.Id != skill.Id {
 			return myerrors.NewMsgError(nil, fmt.Sprintf("技能已存在: %s", req.Name))
 		}
 
@@ -167,7 +175,9 @@ func (s LearningSkillService) Update(ctx context.Context, req *learning.Learning
 			})
 		}
 		_, err = s.LearningSkillInstrumentDao.Insert(relation)
-		return err
+		if err != nil {
+			return err
+		}
 	}
 	return nil
 }
@@ -178,8 +188,5 @@ func (s LearningSkillService) Delete(ctx context.Context, id int) error {
 		return err
 	}
 	_, err = s.LearningSkillDao.Where("Id = ?", id).Delete()
-	if err != nil {
-		return err
-	}
-	return nil
+	return err
 }