完成推送云星空部分

This commit is contained in:
2025-07-21 16:52:17 +08:00
parent 0cc51644b2
commit 94d802d5da
12 changed files with 438 additions and 249 deletions

View File

@@ -1,4 +1,5 @@
using MyCode.Project.Domain.Message.Request.KingDee;
using MyCode.Project.Domain.Message.Response.KingDee.K3Result.Model;
namespace MyCode.Project.OutSideService
{
@@ -10,7 +11,7 @@ namespace MyCode.Project.OutSideService
/// <param name="formId"></param>
/// <param name="billSave"></param>
/// <returns></returns>
string Save(string formId, BillSave billSave);
ResponseStatus Save(string formId, BillSave billSave);
}

View File

@@ -1,6 +1,7 @@
using Kingdee.CDP.WebApi.SDK;
using MyCode.Project.Domain.Message.Request.KingDee;
using MyCode.Project.Domain.Message.Response.KingDee;
using MyCode.Project.Domain.Message.Response.KingDee.K3Result;
using MyCode.Project.Domain.Message.Response.KingDee.K3Result.Model;
using MyCode.Project.Infrastructure.Common;
using Newtonsoft.Json;
using System;
@@ -17,7 +18,7 @@ namespace MyCode.Project.OutSideService.Implementation
}
public static K3CloudApi staClient = null;
public static DateTime timeOut = DateTime.Now;
#region
/// <summary>
@@ -77,12 +78,12 @@ namespace MyCode.Project.OutSideService.Implementation
#region
/// <summary>
/// 保存一个订单对象
@@ -90,40 +91,28 @@ namespace MyCode.Project.OutSideService.Implementation
/// <param name="formId"></param>
/// <param name="billSave"></param>
/// <returns></returns>
public string Save(string formId, BillSave billSave)
public ResponseStatus Save(string formId, BillSave billSave)
{
staClient = GetK3CloudClient();
var datastr = JsonHelper.ToJson(billSave,false, false, true);
var datastr = JsonHelper.ToJson(billSave, false, false, true);
LogHelper.Info(datastr);
var resultString = staClient.Save(formId, datastr);
if (resultString.Contains("ErrorCode"))
var result = JsonHelper.ToObject<K3ApiResult>(resultString);
if (!result.Result.ResponseStatus.IsSuccess)
{
LogHelper.Error("金蝶云接口调用失败,请检查");
LogHelper.Error(resultString);
//throw new Exception("单据在云星空已锁定,请联系采购员");
string Message = "";
try
{
ErrorResponse errorResponse = JsonHelper.ToObject<ErrorResponse>(resultString);
Message = string.Join(",", errorResponse.Result.ResponseStatus.Errors.Select(t => t.Message).ToList());
}
catch (Exception ex)
{
string ds = ex.Message;
throw new Exception("2云星空接口调用失败请联系管理员,错误信息:" + resultString);
}
throw new Exception("1云星空接口调用失败请联系管理员,错误信息:" + Message);
string Message = string.Join(",", result.Result.ResponseStatus.Errors.Select(t => t.Message).ToList());
throw new Exception("云星空接口调用失败,请联系管理员,错误信息:" + Message);
}
var result = JsonHelper.ToObject<Dictionary<string, Dictionary<string, dynamic>>>(resultString);
var data = result["Result"]["ResponseStatus"];
return resultString;
var data = result.Result.ResponseStatus;
return data;
}
#endregion
#region Delete()
/// <summary>
/// 删除某个订单
@@ -133,34 +122,34 @@ namespace MyCode.Project.OutSideService.Implementation
/// <returns></returns>
/// <exception cref="Exception"></exception>
public dynamic Delete(string formId, BillDelete billdelete)
{
staClient = GetK3CloudClient();
var datastr = JsonHelper.ToJson(billdelete);
LogHelper.Info(datastr);
var resultString = staClient.Delete(formId, datastr);
if (resultString.Contains("ErrorCode"))
{
LogHelper.Error("金蝶云接口调用失败,请检查");
LogHelper.Error(resultString);
string Message = "";
try
{
ErrorResponse errorResponse = JsonHelper.ToObject<ErrorResponse>(resultString);
Message = string.Join(",", errorResponse.Result.ResponseStatus.Errors.Select(t => t.Message).ToList());
}
catch (Exception ex)
{
string ds = ex.Message;
throw new Exception("2云星空接口调用失败请联系管理员,错误信息:" + resultString);
//public dynamic Delete(string formId, BillDelete billdelete)
//{
// staClient = GetK3CloudClient();
// var datastr = JsonHelper.ToJson(billdelete);
// LogHelper.Info(datastr);
// var resultString = staClient.Delete(formId, datastr);
// if (resultString.Contains("ErrorCode"))
// {
// LogHelper.Error("金蝶云接口调用失败,请检查");
// LogHelper.Error(resultString);
// string Message = "";
// try
// {
// ErrorResponse errorResponse = JsonHelper.ToObject<ErrorResponse>(resultString);
// Message = string.Join(",", errorResponse.Result.ResponseStatus.Errors.Select(t => t.Message).ToList());
// }
// catch (Exception ex)
// {
// string ds = ex.Message;
// throw new Exception("2云星空接口调用失败请联系管理员,错误信息:" + resultString);
}
throw new Exception("1云星空接口调用失败请联系管理员,错误信息:" + Message);
}
var result = JsonHelper.ToObject<dynamic>(resultString);
var data = result["Result"]["ResponseStatus"]["SuccessEntitys"];
return JsonHelper.ToJson(data);
}
// }
// throw new Exception("1云星空接口调用失败请联系管理员,错误信息:" + Message);
// }
// var result = JsonHelper.ToObject<dynamic>(resultString);
// var data = result["Result"]["ResponseStatus"]["SuccessEntitys"];
// return JsonHelper.ToJson(data);
//}
#endregion
}