From 7e16752d672d7d035e6e621103d2e9fc4816ac7f Mon Sep 17 00:00:00 2001 From: Patrick Peng Sun Date: Sat, 24 Jun 2017 22:39:41 +1000 Subject: [PATCH] test register new user. --- eventSubscribe.go | 52 ++++++++++++++++++++++++------------------ eventSubscribe_test.go | 29 +++++++++++++++++++++++ 2 files changed, 59 insertions(+), 22 deletions(-) diff --git a/eventSubscribe.go b/eventSubscribe.go index 7e396f4..0db4c8f 100644 --- a/eventSubscribe.go +++ b/eventSubscribe.go @@ -12,33 +12,25 @@ import ( func onSubscribe(in InWechatMsg) { openID := in.header.FromUserName //check whether we have his own record in the CRM system - info, found, err := crmFindOpenID("weid") - log.Println(info) - //existing user - if found && err == nil { - sendGreeting4ExistingUser(in, info) + info, found, err := crmFindOpenID(openID) + + if err != nil { + log.Println(err) return } - //new user - if !found && err == nil { //something is seriously wrong + //existing user + if found { + sendGreeting4ExistingUser(in, info) + } else { //new user //get user info from wechat info := WechatUserInfo{} - err := info.getUserInfo(openID, "zh_CN") - if err != nil { - log.Printf("ERROR: failed to get userinfo [%s] ", openID) - log.Println(err) - //registerNewUser(openID) - } else { - //registerNewUserWithInfo(openID, info) - } - //AskUserFillupBasicInfo() + info.getUserInfo(openID, "zh_CN") + info.registerNewUserWithInfo(in) + AskUserFillupBasicInfo(in) } + //some error happened - //some error - if err != nil { - - } } //WechatUserInfo response for wechat user info. @@ -86,10 +78,10 @@ func (m *WechatUserInfo) save2CRM() { } -func askUserFillupBasicInfo(in InWechatMsg) { +func AskUserFillupBasicInfo(in InWechatMsg) { first := "欢迎加入海外学子之家,这里凝聚着哈工大人在澳洲的,勤奋,努力和奋斗" url := "http://wechat.hitxy.org.au/profile_newly_register" - remark := "如果您是首次加入本社区,请点击详情完善您的个人资料" + remark := "您是首次加入本社区,请点击详情完善您的个人资料" communityName := "哈工大澳洲校友会" joinDate := time.Now().Format("2006-Jan-02") templateSendJoinCommunity(in.header.FromUserName, url, first, remark, communityName, joinDate) @@ -105,3 +97,19 @@ func sendGreeting4ExistingUser(in InWechatMsg, info crmLeadInfo) { templateSendJoinCommunity(in.header.FromUserName, url, first, remark, communityName, joinDate) } + +func (m *WechatUserInfo) registerNewUserWithInfo(in InWechatMsg) { + u := crmLeadInfo{} + u.FirstName = m.NickName + u.LastName = " ." + u.Password = "password" + u.WechatHitxyID = in.header.FromUserName + u.Status = "New" + + data, _ := json.Marshal(u) + url := "https://c.hitxy.org.au/api/v1/Lead" + headers := crmPrepareLeadUploadHTTPHeader() + resp, err := postRAW(data, url, headers) + log.Println(resp) + log.Println(err) +} diff --git a/eventSubscribe_test.go b/eventSubscribe_test.go index 16e4c75..bdc1463 100644 --- a/eventSubscribe_test.go +++ b/eventSubscribe_test.go @@ -47,3 +47,32 @@ func TestDecodeSubscribeJson(t *testing.T) { AssertEqual(t, s.TagIDList[1], int32(2), "TagIDList wrong") } + +func TestRegisterNewUser(t *testing.T) { + SetupConfig() + msg := ` +{ + "subscribe": 1, + "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M", + "nickname": "Band", + "sex": 1, + "language": "zh_CN", + "city": "广州", + "province": "广东", + "country": "中国", + + "headimgurl": "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0", + "subscribe_time": 1382694957, + "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL", + "remark": "rr", + + "groupid": 0, + + "tagid_list":[128,2] +}` + in := InWechatMsg{} + in.header.FromUserName = "abc" + s := WechatUserInfo{} + json.Unmarshal([]byte(msg), &s) + s.registerNewUserWithInfo(in) +}