怡亚通rpc
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.

63 lines
1000 B

2 years ago
  1. package yytrpc
  2. import (
  3. "encoding/json"
  4. "errors"
  5. "log"
  6. )
  7. // 提交怡亚通订单
  8. func CreateOrder(dbname, siteid, order_sn string, url ...string) (bool, error) {
  9. if dbname == "" || siteid == "" || order_sn == "" {
  10. return false, errors.New("参数错误")
  11. }
  12. conn, err := rpc_server_conn(url...)
  13. if err != nil {
  14. return false, err
  15. }
  16. defer conn.Close()
  17. data := OrderParam{}
  18. data.Dbname = dbname
  19. data.SiteId = siteid
  20. data.OrderSn = order_sn
  21. req, err := SetReqData(data)
  22. if err != nil {
  23. log.Println("CreateOrder crypter error:", err)
  24. return false, err
  25. }
  26. res := &Response{}
  27. err = conn.CreateOrder(req, res)
  28. if err != nil {
  29. log.Println("yytrpc CreateOrder error:", err)
  30. return false, err
  31. }
  32. res_data_de, err := GetResData(res)
  33. if err != nil {
  34. return false, err
  35. }
  36. if res_data_de == "" {
  37. return false, nil
  38. }
  39. var return_res bool
  40. err = json.Unmarshal([]byte(res_data_de), &return_res)
  41. if err != nil {
  42. return false, err
  43. }
  44. return return_res, nil
  45. }