sendmaillogic.go 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package logic
  2. import (
  3. "app.yhyue.com/moapp/jybase/common"
  4. "bp.jydev.jianyu360.cn/BaseService/biService/entity"
  5. "bp.jydev.jianyu360.cn/BaseService/biService/rpc/internal/svc"
  6. "bp.jydev.jianyu360.cn/BaseService/biService/rpc/pb"
  7. "bp.jydev.jianyu360.cn/BaseService/biService/service"
  8. "context"
  9. "github.com/tjfoc/gmsm/sm4"
  10. "github.com/zeromicro/go-zero/core/logx"
  11. )
  12. type SendMailLogic struct {
  13. ctx context.Context
  14. svcCtx *svc.ServiceContext
  15. logx.Logger
  16. }
  17. func NewSendMailLogic(ctx context.Context, svcCtx *svc.ServiceContext) *SendMailLogic {
  18. return &SendMailLogic{
  19. ctx: ctx,
  20. svcCtx: svcCtx,
  21. Logger: logx.WithContext(ctx),
  22. }
  23. }
  24. func (l *SendMailLogic) SendMail(in *pb.ExportByDbReq) (*pb.BiReply, error) {
  25. if in.Token == "" || in.Title == "" || in.Content == "" || in.Mails == "" {
  26. return &pb.BiReply{
  27. ErrorCode: 1,
  28. ErrorMsg: "参数不能为空",
  29. Data: nil,
  30. }, nil
  31. }
  32. //if RsaEncrypt([]byte(fmt.Sprintf("%s&%s&%s&%s", gconv.String(in.Content), gconv.String(in.Mails), gconv.String(in.Query), gconv.String(in.Title)))) == in.Token {
  33. // return &pb.BiReply{
  34. // ErrorCode: 1,
  35. // ErrorMsg: "token验证不通过",
  36. // Data: nil,
  37. // }, nil
  38. //}
  39. res := (&service.ExportByDbReq{
  40. Token: in.Token,
  41. Title: in.Title,
  42. Content: in.Content,
  43. Mails: in.Mails,
  44. FileName: in.FileName,
  45. Datas: in.Datas,
  46. }).ExportDataByDb()
  47. return &pb.BiReply{
  48. ErrorCode: 0,
  49. ErrorMsg: "",
  50. Data: res,
  51. }, nil
  52. }
  53. func RsaEncrypt(data []byte) string {
  54. key := []byte(entity.PublicKey)
  55. b, _ := sm4.Sm4Ecb(key, data, true)
  56. return common.GetMd5String(string(b))
  57. }