|
|
@@ -55,8 +55,8 @@ namespace HH.YiDaSyncNC.DataSync
|
|
|
DingTalkService _dingTalkService = new DingTalkService(_AppType, _SystemToken, _UserId, _FormId);
|
|
|
|
|
|
// 宜搭全量数据Id
|
|
|
- //var idList = _dingTalkService.GetFormIdList("{\"radioField_lycrvvtk\":\"Y\"}");
|
|
|
- var idList = _dingTalkService.GetFormIdList("{\"textField_lvdosccc\":\"KP_2024071800267\"}");
|
|
|
+ //var idList = _dingTalkService.GetFormIdList("{\"radioField_lycrvvtk\":\"Y\",\"selectField_lvituew9\":\"正常\"}");
|
|
|
+ var idList = _dingTalkService.GetFormIdList("{\"textField_lvdosccc\":\"KP_2024071700252\"}");
|
|
|
|
|
|
LogHelper.WriteLog(JsonConvert.SerializeObject(idList.Count), "idList");
|
|
|
|
|
|
@@ -83,10 +83,10 @@ namespace HH.YiDaSyncNC.DataSync
|
|
|
|
|
|
var ydDataSource = _dingTalkService.GetFormDataById(item, out createTime, out modifyTime);
|
|
|
|
|
|
- if (ydDataSource["textField_ltxyt75i"].ToString() != "")
|
|
|
- {
|
|
|
- continue;
|
|
|
- }
|
|
|
+ //if (ydDataSource.FirstOrDefault(f => f.Key == "dateField_ltxyt75l").Value != null && UnixTimeHelper.ConvertMillisecondsToDateTime(Convert.ToInt64(ydDataSource["dateField_ltxyt75l"].ToString())).ToString("yyyy-MM-dd") != "2024-07-16")
|
|
|
+ //{
|
|
|
+ // continue;
|
|
|
+ //}
|
|
|
|
|
|
var ncResData = new List<YiDaResDto>();
|
|
|
|
|
|
@@ -304,13 +304,12 @@ namespace HH.YiDaSyncNC.DataSync
|
|
|
#region 工程订单开票明细
|
|
|
if (ydDataSource.FirstOrDefault(f => f.Key == "tableField_lvd8pp44").Value != null)
|
|
|
{
|
|
|
- dataSource.项目 = "PM99001";
|
|
|
-
|
|
|
var detailObjList2 = (List<object>)ydDataSource["tableField_lvd8pp44"]; // 工程订单开票明细
|
|
|
if (ydDataSource.FirstOrDefault(f => f.Key == "tableField_lvd8pp44").Value != null)
|
|
|
{
|
|
|
if (detailObjList2.Count() > 0 && !string.IsNullOrWhiteSpace(((Dictionary<string, object>)detailObjList2.FirstOrDefault())["textField_lvdojfur"].ToString()))
|
|
|
{
|
|
|
+ dataSource.项目 = "PM99001";
|
|
|
|
|
|
foreach (var objItem in detailObjList2)
|
|
|
{
|
|
|
@@ -457,7 +456,7 @@ namespace HH.YiDaSyncNC.DataSync
|
|
|
dataSource.价税合计 = dataSource.明细.Sum(s => Convert.ToDecimal(s.价税合计)).ToString();
|
|
|
|
|
|
|
|
|
- var results_销售订单 = NCImportFunc.NCImport(KP_SyncServiceModel.ImportXml_销售订单.TemplateHeade(), KP_SyncServiceModel.ImportXml_销售订单.Header(dataSource, item + "02"), _NCApiUrl + "?account=01&groupcode=0");
|
|
|
+ var results_销售订单 = NCImportFunc.NCImport(KP_SyncServiceModel.ImportXml_销售订单.TemplateHeade(), KP_SyncServiceModel.ImportXml_销售订单.Header(dataSource, item + "05"), _NCApiUrl + "?account=LY01&groupcode=0");
|
|
|
|
|
|
LogHelper.WriteLog(JsonConvert.SerializeObject(results_销售订单), "results_销售订单");
|
|
|
|
|
|
@@ -499,7 +498,7 @@ namespace HH.YiDaSyncNC.DataSync
|
|
|
detailItem.销售订单子表id = saleorderbData.FirstOrDefault(f => f.vbdef10 == detailItem.行id).csaleorderbid;
|
|
|
}
|
|
|
|
|
|
- var results_销售发票 = NCImportFunc.NCImport(KP_SyncServiceModel.ImportXml_销售发票.TemplateHeade(), KP_SyncServiceModel.ImportXml_销售发票.Header(dataSource, item + "02"), _NCApiUrl + "?account=01&groupcode=0");
|
|
|
+ var results_销售发票 = NCImportFunc.NCImport(KP_SyncServiceModel.ImportXml_销售发票.TemplateHeade(), KP_SyncServiceModel.ImportXml_销售发票.Header(dataSource, item + "05"), _NCApiUrl + "?account=LY01&groupcode=0");
|
|
|
|
|
|
|
|
|
LogHelper.WriteLog(JsonConvert.SerializeObject(results_销售发票), "results_销售发票");
|
|
|
@@ -527,44 +526,18 @@ namespace HH.YiDaSyncNC.DataSync
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- // -------------------------------销售发票同步完,开始同步应收
|
|
|
-
|
|
|
- var saleinvoicebData = _db_nc.Queryable<so_saleinvoice_b>().Where(f => f.csaleinvoiceid == xE_销售发票.Element("sendresult").Element("content").Value).ToList();
|
|
|
- var squareinvbData = _db_nc.Queryable<so_squareinv_d>().Where(f => f.csquarebillid == xE_销售发票.Element("sendresult").Element("content").Value).ToList();
|
|
|
-
|
|
|
- dataSource.销售发票主表id = xE_销售发票.Element("sendresult").Element("content").Value;
|
|
|
-
|
|
|
- //foreach (var detailItem in dataSource.明细)
|
|
|
- //{
|
|
|
- // var a = saleinvoicebData.FirstOrDefault(f => f.vbdef10 == detailItem.行id).csaleinvoicebid;
|
|
|
- // var b = squareinvbData.FirstOrDefault(f => f.csquarebillbid == a);
|
|
|
- // detailItem.销售发票子表id = b.csalesquaredid;
|
|
|
- //}
|
|
|
-
|
|
|
- var results_应收单 = NCImportFunc.NCImport(KP_SyncServiceModel.ImportXml_应收单.TemplateHeade(), KP_SyncServiceModel.ImportXml_应收单.Header(dataSource, item + "02"), _NCApiUrl + "?account=01&groupcode=0");
|
|
|
-
|
|
|
- LogHelper.WriteLog(JsonConvert.SerializeObject(results_应收单), "results_应收单");
|
|
|
-
|
|
|
- XElement xE_应收单 = XElement.Parse(results_应收单);
|
|
|
- string resultcode_应收单 = xE_应收单.Element("sendresult").Element("resultcode").Value;
|
|
|
- string resultdescription_应收单 = xE_应收单.Element("sendresult").Element("resultdescription")?.Value;
|
|
|
-
|
|
|
- var recitemData = _db_nc.Queryable<ar_recitem>().Where(w => w.pk_recbill == xE_应收单.Element("sendresult").Element("content").Value).ToList();
|
|
|
+ // -------------------------------销售发票同步完,开始同步应收 (新版)应收不同步,改为调用审核接口,让NC自动取生成应收单
|
|
|
|
|
|
- foreach (var recitem in recitemData)
|
|
|
- {
|
|
|
- recitem.scomment = recitem.def1;
|
|
|
-
|
|
|
- _db_nc.Updateable(recitem).ExecuteCommand();
|
|
|
- }
|
|
|
+ var results_销售发票审核 = HttpRequestHelper.ApporeNCCSOBill(xE_销售发票.Element("sendresult").Element("content").Value);
|
|
|
|
|
|
+ LogHelper.WriteLog(JsonConvert.SerializeObject(results_销售发票审核), "results_销售发票审核");
|
|
|
|
|
|
- if (resultcode_应收单 == "1")
|
|
|
+ if (results_销售发票审核.state == 0)
|
|
|
{
|
|
|
ncResData.Add(new YiDaResDto()
|
|
|
{
|
|
|
bSuccess = true,
|
|
|
- ncNo = xE_应收单.Element("sendresult").Element("content").Value,
|
|
|
+ ncNo = "",
|
|
|
log = "同步成功!"
|
|
|
});
|
|
|
}
|
|
|
@@ -574,10 +547,11 @@ namespace HH.YiDaSyncNC.DataSync
|
|
|
{
|
|
|
bSuccess = false,
|
|
|
ncNo = "",
|
|
|
- log = "同步失败!原因为【" + resultdescription_应收单 + "】!"
|
|
|
+ log = "同步失败!原因为【" + results_销售发票审核.msg + "】!"
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+
|
|
|
var finalResData = new YiDaResDto();
|
|
|
|
|
|
if (ncResData.FirstOrDefault(f => !f.bSuccess) != null)
|