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 += "×tamp=" + timestamp; sign_str += "&web_token=" + userInfo.Email; sign_str += "&" + key; param += "&signature=" + GetSHA1(sign_str); param += "×tamp=" + 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); }