diff --git a/api/service/QuestionQa.go b/api/service/QuestionQa.go index ed31efc..03bb113 100644 --- a/api/service/QuestionQa.go +++ b/api/service/QuestionQa.go @@ -205,7 +205,7 @@ func (r *QuestionQaService) AddQuestionQa(req requests.AddQuestionQa) (bool, err // 生成分享链接 questionQaData := make(map[string]interface{}) - questionQaData["qa_share_id"] = utils.HashString(fmt.Sprintf("%d", questionQa.QaId)) + questionQaData["qa_share_id"] = utils.GenerateUniqueCode() err = questionQaDao.EditQuestionQaById(tx, questionQa.QaId, questionQaData) if err != nil { tx.Rollback() diff --git a/utils/aes.go b/utils/aes.go index ba70469..88b454f 100644 --- a/utils/aes.go +++ b/utils/aes.go @@ -7,7 +7,10 @@ import ( "crypto/sha256" "encoding/base64" "encoding/hex" + "fmt" "io" + mathRand "math/rand" + "time" ) // Encrypt 加密函数 @@ -88,3 +91,10 @@ func hashKey(key string) []byte { hash := sha256.Sum256([]byte(key)) return hash[:] } + +// GenerateUniqueCode 生成6位数唯一码 +func GenerateUniqueCode() string { + mathRand.Seed(time.Now().UnixNano()) + code := fmt.Sprintf("%06d", mathRand.Intn(999999)) + return code +}