| | |
| | | foreach (var billObj in e.DataEntitys) |
| | | { |
| | | var sql = $"exec zymes_RealessCustomer {billObj["Id"]} "; |
| | | DataTable dt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0]; |
| | | if (dt.Rows.Count == 0) |
| | | DataSet ds = DBServiceHelper.ExecuteDataSet(Context,sql); |
| | | DataTable maindt = ds.Tables[0];//客户信息 |
| | | DataTable subdt = ds.Tables[1];//客户_交货地点 |
| | | if (maindt.Rows.Count == 0) |
| | | { |
| | | LogService.Write("客户同步异常:" + sql); |
| | | continue; |
| | | } |
| | | DataRow dr = dt.Rows[0]; |
| | | JObject model = new JObject(); |
| | | foreach (DataColumn column in dt.Columns) |
| | | JArray array = new JArray();//明细表 |
| | | foreach (DataRow dr in subdt.Rows) |
| | | { |
| | | model.Add(column.ColumnName, dr[column.ColumnName].ToString()); |
| | | JObject fentrymodel = new JObject(); |
| | | foreach (DataColumn column in subdt.Columns) |
| | | { |
| | | fentrymodel.Add(column.ColumnName, dr[column.ColumnName].ToString()); |
| | | } |
| | | array.Add(fentrymodel); |
| | | } |
| | | JObject _jsonRoot = new JObject() |
| | | JObject model = new JObject();//主表 |
| | | DataRow maindr = maindt.Rows[0]; |
| | | foreach (DataColumn column in maindt.Columns) |
| | | { |
| | | model.Add(column.ColumnName, maindr[column.ColumnName].ToString()); |
| | | } |
| | | model.Add("HCustLocationEntry", array); |
| | | JObject jsonRoot = new JObject() |
| | | { |
| | | ["model"] = model |
| | | }; |
| | | //LogService.Write("客户同步示例:"+JsonConvert.SerializeObject(_jsonRoot)); |
| | | LogService.Write("客户同步示例" + JsonConvert.SerializeObject(jsonRoot)); |
| | | string clientUrl = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "ClientUrl");//K/3 Cloud 业务站点地址 |
| | | var client = new RestSharp.RestClient(clientUrl); |
| | | var requestPost = new RestRequest("Gy_Customer/SaveGy_CustomerListApi", Method.POST); |
| | | requestPost.AddParameter("application/json", JsonConvert.SerializeObject(_jsonRoot), ParameterType.RequestBody); |
| | | requestPost.AddParameter("application/json", JsonConvert.SerializeObject(jsonRoot), ParameterType.RequestBody); |
| | | IRestResponse responsePost = client.Execute(requestPost); |
| | | var contentPost = responsePost.Content; |
| | | if (!contentPost.Contains("成功")) |
| | | { |
| | | LogService.Write("客户同步异常,POST方式获取结果," + billObj["Id"] + "," + contentPost); |
| | | LogService.Write("客户同步异常,POST," + clientUrl + "Gy_Customer/SaveGy_CustomerListApi"); |
| | | LogService.Write("客户同步异常,JsonConvert.SerializeObject(_jsonRoot)," + JsonConvert.SerializeObject(_jsonRoot)); |
| | | LogService.Write("客户同步异常,JsonConvert.SerializeObject(_jsonRoot)," + JsonConvert.SerializeObject(jsonRoot)); |
| | | } |
| | | }; |
| | | |