11
王 垚
2022-12-12 c5f913558cca7a14a6aa56413406c76c03e89122
11
2个文件已修改
43 ■■■■■ 已修改文件
zymes/OperationService/zymes_RealessBom.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zymes/OperationService/zymes_RealessStock.cs 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zymes/OperationService/zymes_RealessBom.cs
@@ -215,7 +215,7 @@
                {
                    ["model"] = model
                };
                LogService.Write("生产订单BOM同步示例" + JsonConvert.SerializeObject(jsonRoot));
                //LogService.Write("生产BOM同步示例" + JsonConvert.SerializeObject(jsonRoot));
                string clientUrl = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "ClientUrl");//K/3 Cloud 业务站点地址
                var client = new RestSharp.RestClient(clientUrl);
                //新增
zymes/OperationService/zymes_RealessStock.cs
@@ -18,7 +18,7 @@
namespace zymes_Project.OperationService
{
    [Description("[仓库-审核]服务插件]")]
    [Description("[仓库仓位-审核]服务插件]")]
    [HotUpdate]
    public class zymes_RealessStock : AbstractOperationServicePlugIn
    {
@@ -46,34 +46,47 @@
            foreach (var billObj in e.DataEntitys)
            {
                var sql = $"exec zymes_RealessStock {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);
                    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("HStockplaceEntry", 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_Warehouse/SaveGy_WarehouseListApi", 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_Warehouse/SaveGy_WarehouseListApi");
                    LogService.Write("仓库同步异常,JsonConvert.SerializeObject(_jsonRoot)," + JsonConvert.SerializeObject(_jsonRoot));
                    LogService.Write("仓库仓位同步异常,POST方式获取结果," + billObj["Id"] + "," + contentPost);
                    LogService.Write("仓库仓位同步异常,POST," + clientUrl + "Gy_Warehouse/SaveGy_WarehouseListApi");
                    LogService.Write("仓库仓位同步异常,JsonConvert.SerializeObject(_jsonRoot)," + JsonConvert.SerializeObject(jsonRoot));
                }
            };