lyh.go 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. package main
  2. import (
  3. "context"
  4. "flag"
  5. "fmt"
  6. "log"
  7. . "app.yhyue.com/moapp/jybase/common"
  8. "app.yhyue.com/moapp/jybase/mongodb"
  9. ml "app.yhyue.com/moapp/jybase/mysql"
  10. "bp.jydev.jianyu360.cn/BaseService/resourceCenter/rpc/pb"
  11. "bp.jydev.jianyu360.cn/BaseService/resourceCenter/rpc/resource"
  12. upb "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
  13. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
  14. "github.com/zeromicro/go-zero/core/discov"
  15. "github.com/zeromicro/go-zero/zrpc"
  16. )
  17. var etcdAddress string = "192.168.3.206:2379"
  18. func main() {
  19. phone := flag.String("p", "", "手机号")
  20. m := flag.Int("m", 0, "1:查询权益 2:开通权益 3:取消权益")
  21. flag.Parse()
  22. if *phone == "" {
  23. log.Fatalln("-p 参数无效")
  24. }
  25. BaseService := &ml.Mysql{
  26. Address: "192.168.3.217:4000",
  27. UserName: "root",
  28. PassWord: "=PDT49#80Z!RVv52_z",
  29. DBName: "base_service",
  30. MaxOpenConns: 2,
  31. MaxIdleConns: 2,
  32. }
  33. BaseService.Init()
  34. ur := BaseService.SelectBySql(`select id from base_user where phone=?`, *phone)
  35. if ur == nil || len(*ur) <= 0 {
  36. log.Fatalln("没有找到该用户!")
  37. }
  38. id := Int64All((*ur)[0]["id"])
  39. msg := "用户:" + fmt.Sprint(id) + " 手机号:" + *phone
  40. var c = resource.NewResource(zrpc.MustNewClient(zrpc.RpcClientConf{
  41. Etcd: discov.EtcdConf{
  42. Hosts: []string{etcdAddress},
  43. Key: "resource.rpc",
  44. },
  45. }))
  46. if *m == 1 {
  47. r, err := c.Haspowers(context.Background(), &pb.HaspowersReq{
  48. Appid: "10000",
  49. EntId: 0,
  50. EntUserId: 0,
  51. UserId: id,
  52. })
  53. if err != nil {
  54. log.Println(msg, "查询医械云权益失败!", err)
  55. } else {
  56. mp := map[string]bool{}
  57. for _, v := range r.Powers {
  58. mp[v] = true
  59. }
  60. all := map[string]string{
  61. "医疗标讯搜索": "lyh_yl_ylbxss",
  62. "医疗机构搜索": "lyh_yl_yljgss",
  63. "经销商搜索": "lyh_yl_jxsss",
  64. "医疗机构画像": "lyh_yl_yljghx",
  65. "医疗机构认领": "lyh_yl_yljgrl",
  66. "经销商认领": "lyh_yl_jxsrl",
  67. "医疗订阅": "lyh_yl_yldy",
  68. }
  69. for k, v := range all {
  70. if !mp[v] {
  71. log.Fatalln(msg, "医械云权益权益异常,缺少权益:", k)
  72. }
  73. }
  74. for k, _ := range all {
  75. log.Println(msg, "拥有医械云权益:", k)
  76. }
  77. }
  78. } else if *m == 2 {
  79. r, err := c.PowerHandle(context.Background(), &pb.PowerReq{
  80. Appid: "10000",
  81. GoodsCode: "lyh",
  82. GoodsSpecId: 13,
  83. EntId: 0,
  84. UserId: id,
  85. BuyNum: 1,
  86. Type: 1,
  87. })
  88. if err != nil {
  89. log.Println(msg, "医械云权益开通失败!", err)
  90. } else if r.Status == 1 {
  91. log.Println(msg, "医械云权益已开通!")
  92. } else {
  93. log.Println(msg, "医械云权益开通失败!")
  94. }
  95. } else if *m == 3 {
  96. r, err := c.PowerHandle(context.Background(), &pb.PowerReq{
  97. Appid: "10000",
  98. GoodsCode: "lyh",
  99. GoodsSpecId: 13,
  100. EntId: 0,
  101. UserId: id,
  102. BuyNum: 1,
  103. Type: -1,
  104. })
  105. if err != nil {
  106. log.Println(msg, "医械云权益取消失败!", err)
  107. } else if r.Status == 1 {
  108. log.Println(msg, "医械云权益已取消!")
  109. } else {
  110. log.Println(msg, "医械云权益取消失败!")
  111. }
  112. } else {
  113. log.Fatalln("-m 参数无效")
  114. }
  115. if *m == 2 || *m == 3 {
  116. var cc = usercenter.NewUserCenter(zrpc.MustNewClient(zrpc.RpcClientConf{
  117. Etcd: discov.EtcdConf{
  118. Hosts: []string{etcdAddress},
  119. Key: "usercenter.rpc",
  120. },
  121. }))
  122. Mgo := &mongodb.MongodbSim{
  123. MongodbAddr: "192.168.3.206:27080",
  124. Size: 1,
  125. DbName: "qfw",
  126. ReplSet: "",
  127. UserName: "",
  128. Password: "",
  129. }
  130. Mgo.InitPool()
  131. u, _ := Mgo.FindOneByField("user", map[string]interface{}{"base_user_id": id}, `{"_id":1}`)
  132. userId := mongodb.BsonIdToSId((*u)["_id"])
  133. resp, err := cc.WorkDesktopClearUserInfo(context.Background(), &upb.WorkDesktopClearUserInfoReq{
  134. UserId: userId,
  135. AppId: "10000",
  136. Platform: "PC",
  137. UserIds: userId,
  138. NewUserId: fmt.Sprint(id),
  139. })
  140. if err != nil {
  141. log.Fatalln("清除用户工作桌面缓存失败", err)
  142. } else if resp.ErrorCode != 0 {
  143. log.Fatalln("清除用户工作桌面缓存失败", resp.ErrorMsg)
  144. }
  145. }
  146. }