Exemple #1
0
        private string GetCustomServiceParam(GZCNegotiation.Services.EtgInfoLib.Data.UserInfo userInfo, GZCNegotiation.Services.EtgInfoLib.Data.CompanyInfo companyInfo)
        {
            string   param     = string.Empty;
            string   sign_str  = string.Empty;
            string   nonce     = Guid.NewGuid().ToString("N");
            TimeSpan ts        = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
            string   timestamp = Convert.ToInt64(ts.TotalMilliseconds).ToString();

            param    += "c_name=" + userInfo.Name;
            param    += "&c_email=" + userInfo.Email;
            param    += "&c_phone=" + userInfo.Mobile;
            param    += "&c_org=" + companyInfo.Name;
            param    += "&c_cf_TextField_7179=" + companyInfo.Id;
            param    += "&c_cf_TextField_7180=" + companyInfo.SocialCreditCode;
            param    += "&nonce=" + nonce;
            sign_str += "nonce=" + nonce;
            sign_str += "&timestamp=" + timestamp;
            sign_str += "&web_token=" + userInfo.Email;
            sign_str += "&" + key;
            param    += "&signature=" + GetSHA1(sign_str);
            param    += "&timestamp=" + timestamp;
            param    += "&web_token=" + userInfo.Email;
            param    += "&group_id=30750";
            return(param);
        }
        /// <summary>
        /// 调用Udesk添加/更新客户API
        /// </summary>
        /// <param name="userInfo"></param>
        /// <param name="companyInfo"></param>
        /// <returns></returns>
        private async Task <string> GetUdeskCustomerImport(GZCNegotiation.Services.EtgInfoLib.Data.UserInfo userInfo, GZCNegotiation.Services.EtgInfoLib.Data.CompanyInfo companyInfo)
        {
            //生成json数据
            Models.ImportMsg import = new Models.ImportMsg();
            import.sign           = Md5(key);
            import.user.email     = userInfo.Email;
            import.user.nick_name = userInfo.Name;
            import.user.cellphone = userInfo.Mobile;
            import.user.org_name  = companyInfo.Name;
            import.user.customer_field.TextField_7179 = companyInfo.Id;
            import.user.customer_field.TextField_7180 = companyInfo.SocialCreditCode;
            string data = JsonConvert.SerializeObject(import);
            //POST数据至远程API
            HttpClient  client  = new HttpClient();
            HttpContent content = new StringContent(data, Encoding.UTF8);

            content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
            HttpResponseMessage response = await client.PostAsync(postUrl, content);

            var result = await response.Content.ReadAsStringAsync();

            return(result);
        }