This commit is contained in:
2025-05-07 20:08:40 +08:00
parent f8fa1681df
commit a4976430a8
9 changed files with 549 additions and 215 deletions

View File

@@ -51,7 +51,7 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
private string parentRowId = "";//父项ID
string dateFormat = "yyyy-MM-dd HH:mm:ss"; // 指定的日期格式
int status11=1;
int SourceType = 0;
/// <summary>
/// 开始
/// </summary>
@@ -459,7 +459,7 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
#region 2025-04-07
#region
var SaleBILLLIS2Sal = SaleBILLLIS2.Where(t => t.FType == "销售订单" && t.FISHX != "已核销配对").ToList();
var SaleBILLLIS2Sal = SaleBILLLIS2.Where(t => t.FISHX != "已核销配对").ToList();
//将销售订单根据客户分组
//var FClientList2 = SaleBILLLIS2Sal.GroupBy(t => t.FClient).ToList();
//var FClientReceiveBillList= ReceiveBILLLIST
@@ -633,163 +633,167 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
}
//3、收款单的待核销金额与订单的待最近30天开票金额(只有医院客户)
var SaleBILLLIS2Sa333 = SaleBILLLISNew.Where(t => t.FISHX != "已核销配对" && t.FDAMOUNT > 0 ).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
ReceiveBILLLIST = ReceiveBILLLIST2.Where(a => a.F_RowNew == 1 && a.FISHX != "已核销配对" && a.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
var oneToOneTemp3 = (from q in SaleBILLLIS2Sa333
join u in ReceiveBILLLIST on new { q.FClient, FDAMOUNT = q.FInvoiceAmount30Days } equals new { u.FClient, u.FDAMOUNT }
select new { q.FClient, q.FBIllNO, q.FCONTRACTNUMBER, u.FDAMOUNT, UFbillNo = u.FBIllNO }).ToList();
//var dasdsas = oneToOneTemp.Where(h => h.FBIllNO == "PL-XSDD20250400471").FirstOrDefault();
var saleList33 = oneToOneTemp3.Select(t => t.FBIllNO).Distinct().ToList();
var ReceiveList33 = oneToOneTemp3.Select(t => t.UFbillNo).Distinct().ToList();
if (SaleBILLLIS2Sa333.Count() > ReceiveList33.Count())
if (SourceType == 0) //只有销售单有这两种匹配逻辑
{
List<string> deleteFBIllNOList = new List<string>();
ReceiveList33.ForEach(t =>
{
var temp111 = oneToOneTemp3.FirstOrDefault(h => h.UFbillNo == t && !deleteFBIllNOList.Contains(h.FBIllNO));
if (temp111 == null)
return;
var temp11 = temp111.FBIllNO;
deleteFBIllNOList.Add(temp11);
var item = SaleBILLLISNew.Where(h => h.FBIllNO == temp11).OrderBy(h => h.FDate).FirstOrDefault();
//更新销售订单数据
item.FSKBIllNO = t;
item.FISHX = "已核销配对";
item.BenCi = temp111.FDAMOUNT;
item.FDAMOUNT = item.FDAMOUNT - item.BenCi;
//3、收款单的待核销金额与订单的待最近30天开票金额(只有医院客户)
var SaleBILLLIS2Sa333 = SaleBILLLISNew.Where(t => t.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
ReceiveBILLLIST = ReceiveBILLLIST2.Where(a => a.F_RowNew == 1 && a.FISHX != "已核销配对" && a.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
shouKuanDetail.Add(t + "," + item.FBIllNO, item.BenCi);
//item.FYAMOUNT = item.FYAMOUNT + item.BenCi;
//item.=
List<string> fString = new List<string>();
fString.Add(item.FCONTRACTNUMBER);
string fCONTRACTNUMBER = string.Join(",", fString);
//更新收款单数据
var receiveItemTemp = ReceiveBILLLIST.FirstOrDefault(h => h.FBIllNO == t);
if (receiveItemTemp != null)
var oneToOneTemp3 = (from q in SaleBILLLIS2Sa333
join u in ReceiveBILLLIST on new { q.FClient, FDAMOUNT = q.FInvoiceAmount30Days } equals new { u.FClient, u.FDAMOUNT }
select new { q.FClient, q.FBIllNO, q.FCONTRACTNUMBER, u.FDAMOUNT, UFbillNo = u.FBIllNO }).ToList();
//var dasdsas = oneToOneTemp.Where(h => h.FBIllNO == "PL-XSDD20250400471").FirstOrDefault();
var saleList33 = oneToOneTemp3.Select(t => t.FBIllNO).Distinct().ToList();
var ReceiveList33 = oneToOneTemp3.Select(t => t.UFbillNo).Distinct().ToList();
if (SaleBILLLIS2Sa333.Count() > ReceiveList33.Count())
{
List<string> deleteFBIllNOList = new List<string>();
ReceiveList33.ForEach(t =>
{
receiveItemTemp.FCONTRACTNUMBER = fCONTRACTNUMBER;
receiveItemTemp.FISHX = "已核销配对";
receiveItemTemp.BenCi = temp111.FDAMOUNT;
receiveItemTemp.FDAMOUNT = receiveItemTemp.FDAMOUNT - receiveItemTemp.BenCi;
//receiveItemTemp.FYAMOUNT = receiveItemTemp.FYAMOUNT + receiveItemTemp.BenCi;
}
var temp111 = oneToOneTemp3.FirstOrDefault(h => h.UFbillNo == t && !deleteFBIllNOList.Contains(h.FBIllNO));
if (temp111 == null)
return;
var temp11 = temp111.FBIllNO;
deleteFBIllNOList.Add(temp11);
var item = SaleBILLLISNew.Where(h => h.FBIllNO == temp11).OrderBy(h => h.FDate).FirstOrDefault();
//更新销售订单数据
item.FSKBIllNO = t;
item.FISHX = "已核销配对";
item.BenCi = temp111.FDAMOUNT;
item.FDAMOUNT = item.FDAMOUNT - item.BenCi;
shouKuanDetail.Add(t + "," + item.FBIllNO, item.BenCi);
//item.FYAMOUNT = item.FYAMOUNT + item.BenCi;
//item.=
List<string> fString = new List<string>();
fString.Add(item.FCONTRACTNUMBER);
string fCONTRACTNUMBER = string.Join(",", fString);
//更新收款单数据
var receiveItemTemp = ReceiveBILLLIST.FirstOrDefault(h => h.FBIllNO == t);
if (receiveItemTemp != null)
{
receiveItemTemp.FCONTRACTNUMBER = fCONTRACTNUMBER;
receiveItemTemp.FISHX = "已核销配对";
receiveItemTemp.BenCi = temp111.FDAMOUNT;
receiveItemTemp.FDAMOUNT = receiveItemTemp.FDAMOUNT - receiveItemTemp.BenCi;
//receiveItemTemp.FYAMOUNT = receiveItemTemp.FYAMOUNT + receiveItemTemp.BenCi;
}
});
}
else
{
List<string> deleteFBIllNOList = new List<string>();
saleList33.ForEach(t =>
{
var temp111 = oneToOneTemp3.Where(h => h.FBIllNO == t && !deleteFBIllNOList.Contains(h.UFbillNo)).OrderBy(h => h.UFbillNo).FirstOrDefault();
if (temp111 == null)
return;
var temp11 = temp111.UFbillNo;
deleteFBIllNOList.Add(temp11);
var item = SaleBILLLISNew.FirstOrDefault(h => h.FBIllNO == t);
//更新销售订单数据
item.FSKBIllNO = t;
item.FISHX = "已核销配对";
item.BenCi = temp111.FDAMOUNT;
item.FDAMOUNT = item.FDAMOUNT - item.BenCi;
//item.FYAMOUNT = item.FYAMOUNT + item.BenCi;
List<string> fString = new List<string>();
fString.Add(item.FCONTRACTNUMBER);
string fCONTRACTNUMBER = string.Join(",", fString);
//更新收款单数据
var receiveItemTemp = ReceiveBILLLIST.FirstOrDefault(h => h.FBIllNO == temp11);
if (receiveItemTemp != null)
{
receiveItemTemp.FCONTRACTNUMBER = fCONTRACTNUMBER;
receiveItemTemp.FISHX = "已核销配对";
receiveItemTemp.BenCi = temp111.FDAMOUNT;
receiveItemTemp.FDAMOUNT = receiveItemTemp.FDAMOUNT - receiveItemTemp.BenCi;
//receiveItemTemp.FYAMOUNT = receiveItemTemp.FYAMOUNT + receiveItemTemp.BenCi;
receiveItemTemp.FWeiYi = "是";
shouKuanDetail.Add(receiveItemTemp.FBIllNO + "," + item.FBIllNO, item.BenCi);
}
});
}
//先挑1张收款单对应多张张销售订单
var SaleBILLLIS2Sa2 = SaleBILLLISNew.Where(t => t.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
ReceiveBILLLIST = ReceiveBILLLIST2.Where(a => a.F_RowNew == 1 && a.FISHX != "已核销配对" && a.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
//打包式匹配法,按时间倒序逐一核销掉.
ReceiveBILLLIST.ForEach(t =>
{
var tempList = SaleBILLLIS2Sa2.Where(h => h.FClient == t.FClient && h.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderByDescending(h => h.FDate).ToList();
var FDAMOUNT = t.FDAMOUNT;
List<string> heTongList = new List<string>();
if (t.FCONTRACTNUMBER != null)
heTongList = t.FCONTRACTNUMBER.Split(',').ToList().Distinct().ToList();
if (heTongList == null)
heTongList = new List<string>();
tempList.ForEach(sale =>
{
if (FDAMOUNT == 0)
{
return;
}
double benCi = 0;
List<string> str = new List<string>();
if (sale.FSKBIllNO != null)
str = sale.FSKBIllNO.Split(',').ToList();
if (str == null)
str = new List<string>();
str.Add(t.FBIllNO);
sale.FSKBIllNO = string.Join(",", str);
if (FDAMOUNT >= sale.FDAMOUNT)
{
benCi = sale.FDAMOUNT;
sale.BenCi = sale.FDAMOUNT;
sale.FDAMOUNT = 0;
sale.FISHX = "已核销配对";
}
else
{
benCi = FDAMOUNT;
sale.BenCi = FDAMOUNT;
sale.FDAMOUNT = sale.FDAMOUNT - benCi;
}
//sale.FYAMOUNT = sale.FYAMOUNT + sale.BenCi;
heTongList.Add(sale.FCONTRACTNUMBER);
heTongList = heTongList.Distinct().ToList();
str = new List<string>();
if (t.FSKBIllNO != null)
str = t.FSKBIllNO.Split(',').ToList();
if (str == null)
str = new List<string>();
str.Add(sale.FBIllNO);
shouKuanDetail.Add(t.FBIllNO + "," + sale.FBIllNO, benCi);
FDAMOUNT = FDAMOUNT - sale.BenCi;
t.FDAMOUNT = t.FDAMOUNT - benCi;
//t.FYAMOUNT = t.FYAMOUNT + sale.BenCi;
t.BenCi = t.BenCi + benCi;
t.FCONTRACTNUMBER = string.Join(",", heTongList);
if (heTongList.Count == 1)
t.FWeiYi = "是";
else
t.FWeiYi = "否";
if (t.FDAMOUNT == 0)
{
t.FISHX = "已核销配对";
}
});
});
}
else
{
List<string> deleteFBIllNOList = new List<string>();
saleList33.ForEach(t =>
{
var temp111 = oneToOneTemp3.Where(h => h.FBIllNO == t && !deleteFBIllNOList.Contains(h.UFbillNo)).OrderBy(h => h.UFbillNo).FirstOrDefault();
if (temp111 == null)
return;
var temp11 = temp111.UFbillNo;
deleteFBIllNOList.Add(temp11);
var item = SaleBILLLISNew.FirstOrDefault(h => h.FBIllNO == t);
//更新销售订单数据
item.FSKBIllNO = t;
item.FISHX = "已核销配对";
item.BenCi = temp111.FDAMOUNT;
item.FDAMOUNT = item.FDAMOUNT - item.BenCi;
//item.FYAMOUNT = item.FYAMOUNT + item.BenCi;
List<string> fString = new List<string>();
fString.Add(item.FCONTRACTNUMBER);
string fCONTRACTNUMBER = string.Join(",", fString);
//更新收款单数据
var receiveItemTemp = ReceiveBILLLIST.FirstOrDefault(h => h.FBIllNO == temp11);
if (receiveItemTemp != null)
{
receiveItemTemp.FCONTRACTNUMBER = fCONTRACTNUMBER;
receiveItemTemp.FISHX = "已核销配对";
receiveItemTemp.BenCi = temp111.FDAMOUNT;
receiveItemTemp.FDAMOUNT = receiveItemTemp.FDAMOUNT - receiveItemTemp.BenCi;
//receiveItemTemp.FYAMOUNT = receiveItemTemp.FYAMOUNT + receiveItemTemp.BenCi;
receiveItemTemp.FWeiYi = "是";
shouKuanDetail.Add(receiveItemTemp.FBIllNO + "," + item.FBIllNO, item.BenCi);
}
});
}
//先挑1张收款单对应多张张销售订单
var SaleBILLLIS2Sa2 = SaleBILLLISNew.Where(t => t.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
ReceiveBILLLIST = ReceiveBILLLIST2.Where(a => a.F_RowNew == 1 && a.FISHX != "已核销配对" && a.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
//打包式匹配法,按时间倒序逐一核销掉.
ReceiveBILLLIST.ForEach(t =>
{
var tempList = SaleBILLLIS2Sa2.Where(h => h.FClient == t.FClient && h.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderByDescending(h => h.FDate).ToList();
var FDAMOUNT = t.FDAMOUNT;
List<string> heTongList = new List<string>();
if (t.FCONTRACTNUMBER != null)
heTongList = t.FCONTRACTNUMBER.Split(',').ToList().Distinct().ToList();
if (heTongList == null)
heTongList = new List<string>();
tempList.ForEach(sale =>
{
if (FDAMOUNT == 0)
{
return;
}
double benCi = 0;
List<string> str = new List<string>();
if (sale.FSKBIllNO != null)
str = sale.FSKBIllNO.Split(',').ToList();
if (str == null)
str = new List<string>();
str.Add(t.FBIllNO);
sale.FSKBIllNO = string.Join(",", str);
if (FDAMOUNT >= sale.FDAMOUNT)
{
benCi = sale.FDAMOUNT;
sale.BenCi = sale.FDAMOUNT;
sale.FDAMOUNT = 0;
sale.FISHX = "已核销配对";
}
else
{
benCi = FDAMOUNT;
sale.BenCi = FDAMOUNT;
sale.FDAMOUNT = sale.FDAMOUNT - benCi;
}
//sale.FYAMOUNT = sale.FYAMOUNT + sale.BenCi;
heTongList.Add(sale.FCONTRACTNUMBER);
heTongList = heTongList.Distinct().ToList();
str = new List<string>();
if (t.FSKBIllNO != null)
str = t.FSKBIllNO.Split(',').ToList();
if (str == null)
str = new List<string>();
str.Add(sale.FBIllNO);
shouKuanDetail.Add(t.FBIllNO + "," + sale.FBIllNO, benCi);
FDAMOUNT = FDAMOUNT - sale.BenCi;
t.FDAMOUNT = t.FDAMOUNT - benCi;
//t.FYAMOUNT = t.FYAMOUNT + sale.BenCi;
t.BenCi = t.BenCi + benCi;
t.FCONTRACTNUMBER = string.Join(",", heTongList);
if (heTongList.Count == 1)
t.FWeiYi = "是";
else
t.FWeiYi = "否";
if (t.FDAMOUNT == 0)
{
t.FISHX = "已核销配对";
}
});
});
#region
////1个销售订单对应多张收款单
//SaleBILLLIS2Sa2 = SaleBILLLISNew.Where(t => t.FISHX != "已核销配对").OrderBy(t => t.FClient).ThenBy(t => t.FCONTRACTNUMBER).ThenBy(t => t.FDate).ToList();
@@ -903,34 +907,37 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
var Rowindex = this.View.Model.GetEntryRowCount("FEntity2");
for (int i = 0; i < tempList2.Count; i++)
{
this.View.Model.SetValue("FPARENTROWID", FROWID, item.FRow);
this.View.Model.CreateNewEntryRow("FEntity2");
this.View.Model.SetValue("FROWID", Guid.NewGuid().ToString(), Rowindex + i);
this.View.Model.SetValue("FPARENTROWID", FROWID, Rowindex + i);
this.View.Model.SetValue("FBILLNO2", tempList2[i].FBIllNO, Rowindex + i);
if (DateTime.TryParseExact(item?.FDate, dateFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime parsedDate))
double benci = 0;
if (shouKuanDetail.ContainsKey(item.FBIllNO + "," + tempList2[i].FBIllNO))
{
this.View.Model.SetValue("FDate2", item?.FDate, Rowindex + i);
benci = shouKuanDetail[item.FBIllNO + "," + tempList2[i].FBIllNO];
}
this.View.Model.SetValue("FPARENTROWID", FROWID, item.FRow);
if(benci==0)
continue;
this.View.Model.CreateNewEntryRow("FEntity2");
this.View.Model.SetValue("FROWID", Guid.NewGuid().ToString(), Rowindex + 1);
this.View.Model.SetValue("FPARENTROWID", FROWID, Rowindex + 1);
this.View.Model.SetValue("FBILLNO2", tempList2[i].FBIllNO, Rowindex + 1);
if (DateTime.TryParseExact(tempList2[i].FDate, dateFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime parsedDate))
{
this.View.Model.SetValue("FDate2", tempList2[i].FDate, Rowindex + 1);
}
else
{
this.View.Model.SetValue("FDate2", DateTime.Now.AddDays(-1 * Convert.ToInt32(item?.FDate)).ToString("yyyy-MM-dd"), Rowindex + i);
this.View.Model.SetValue("FDate2", DateTime.Now.AddDays(-1 * Convert.ToInt32(tempList2[i].FDate)).ToString("yyyy-MM-dd"), Rowindex + 1);
}
this.View.Model.SetValue("F_MBBA_Decimal_imu", tempList2[i].FALLAMOUNT, Rowindex + i);
this.View.Model.SetValue("FClient2", tempList2[i].FClient, Rowindex + i);
this.View.Model.SetValue("F_RowNew", 2, Rowindex + i);
this.View.Model.SetValue("FCreated2", tempList2[i].FCreated, Rowindex + i);
this.View.Model.SetValue("FCONTRACTNUMBER2", tempList2[i].FCONTRACTNUMBER, Rowindex + i);
this.View.Model.SetValue("FSalesman2", tempList2[i].FSalesman, Rowindex + i);
this.View.Model.SetValue("F_MBBA_Decimal_qtr", tempList2[i].FDAMOUNT, Rowindex + i);
this.View.Model.SetValue("F_PendingAmount", tempList2[i].FDAMOUNT, Rowindex + i);
double benci = shouKuanDetail[item.FBIllNO + "," + tempList2[i].FBIllNO];
this.View.Model.SetValue("F_BenCi", benci, Rowindex + i);
this.View.Model.SetValue("F_MBBA_Decimal_3iy", tempList2[i].FYAMOUNT, Rowindex + i);
this.View.Model.SetValue("F_ISHX", false, Rowindex + i);
this.View.Model.SetValue("F_MBBA_Decimal_imu", tempList2[i].FALLAMOUNT, Rowindex + 1);
this.View.Model.SetValue("FClient2", tempList2[i].FClient, Rowindex + 1);
this.View.Model.SetValue("F_RowNew", 2, Rowindex + 1);
this.View.Model.SetValue("FCreated2", tempList2[i].FCreated, Rowindex + 1);
this.View.Model.SetValue("FCONTRACTNUMBER2", tempList2[i].FCONTRACTNUMBER, Rowindex + 1);
this.View.Model.SetValue("FSalesman2", tempList2[i].FSalesman, Rowindex + 1);
this.View.Model.SetValue("F_MBBA_Decimal_qtr", tempList2[i].FDAMOUNT, Rowindex + 1);
this.View.Model.SetValue("F_PendingAmount", tempList2[i].FDAMOUNT, Rowindex + 1);
this.View.Model.SetValue("F_BenCi", benci, Rowindex + 1);
this.View.Model.SetValue("F_MBBA_Decimal_3iy", tempList2[i].FYAMOUNT, Rowindex + 1);
this.View.Model.SetValue("F_ISHX", false, Rowindex + 1);
}
@@ -1111,7 +1118,11 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
try
{
//创建核销记录单
string FBILLNO = CommonHelper.CreateAutoWrireRecord2(this.Context, Convert.ToString(FOrgId), item.XSAPList, item);
string FBILLNO = "";
if(SourceType==0)
FBILLNO = CommonHelper.CreateAutoWrireRecord2(this.Context, Convert.ToString(FOrgId), item.XSAPList, item);
else
FBILLNO = CommonHelper.CreateAutoWrireRecord3(this.Context, Convert.ToString(FOrgId), item.XSAPList, item);
if (FBILLNO != "")
{
Message = Message + string.Format("生成核销记录单成功,单号为:'{0}'\r\n", FBILLNO);
@@ -1135,7 +1146,7 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
{
var tempRow = ReceiveBILLLIST2.Where(t => successFbillNo.Contains(t.FBIllNO)).ToList();
var pId = tempRow.Select(t => t.FROWID).ToList();
var allRows = FEntity2.Where(t => pId.Contains(t["PARENTROWID"].ToString())).ToList();
var allRows = FEntity2.Where(t => t["PARENTROWID"] !=null && pId.Contains(t["PARENTROWID"].ToString())).ToList();
allRows.ForEach(t =>
{
this.Model.DeleteEntryRow("FEntity2", Convert.ToInt32(t["Seq"]) - 1);
@@ -1393,7 +1404,7 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
if (F_RowNew != "1")
return;
string PARENTROWID = this.Model.GetValue("FPARENTROWID", e.Row)?.ToString();
var dataRow = FEntity2.Where(item => item["PARENTROWID"].ToString() == PARENTROWID && int.Parse(item["F_RowNew"].ToString()) != 1).ToList();
var dataRow = FEntity2.Where(item => item["PARENTROWID"] !=null && item["PARENTROWID"].ToString() == PARENTROWID && int.Parse(item["F_RowNew"].ToString()) != 1).ToList();
if (IsHX.ToLower() == "true" && dataRow.Where(t => t["F_ISHX"].ToString().ToLower() == "true").Count() > 0)
{
return;
@@ -1471,6 +1482,9 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
{
FilterParameter returnData = action.ReturnData as FilterParameter;//过滤框返回的数据
DynamicObject dyObj = returnData.CustomFilter as DynamicObject;
//获取应收款数据来源 0=销售订单 1=发货通知单
SourceType = Convert.ToInt32(dyObj["F_Source_Type2"]);
//获取组织FID
DynamicObject FSaleOrg = dyObj["F_ZhuZhi2"] as DynamicObject;
string FSaleOrgId = "";
@@ -1499,15 +1513,17 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
if (ZZS.Count > 0)
{
List<string> zzList = new List<string>();
//循环获取多选组织FID
//循环获取多选客户FID
foreach (DynamicObject dobj in ZZS)
{
DynamicObject dynamic = dobj["FClientList"] as DynamicObject;
zzList.Add(dynamic["ID"].ToString());
}
CustFid = string.Join("','", zzList);
where1 += $@" and A.FCUSTID in ('{CustFid}')";
if(SourceType==0)
where1 += $@" and A.FCUSTID in ('{CustFid}')";
else
where1 += $@" and A.FCustomerID in ('{CustFid}')";
where2 += $@" and A.FCONTACTUNIT in ('{CustFid}')";
}
//this.View.ShowMessage(string.Format("选中的客户是:{0}s", CustFid));
@@ -1535,12 +1551,19 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
//删除四个单据体
this.View.Model.DeleteEntryData("FEntity");
this.View.Model.DeleteEntryData("FEntity2");
//var FShuaXin = this.View.Model.GetValue("FShuaXin");
DynamicObjectCollection WriteOrderDate;
//调用SQL获取数据
var WriteOrderDate = SQL.SqlManage_yuyubo.GetWriteOrderDate3(this.Context, FSaleOrgId, where1);
if (SourceType == 0)
WriteOrderDate = SQL.SqlManage_yuyubo.GetWriteOrderDate3(this.Context, FSaleOrgId, where1);
else
WriteOrderDate = SQL.SqlManage_yuyubo.GetFaHuoTongZhiDan(this.Context, FSaleOrgId, where1);
var WriteReceiveDate = SQL.SqlManage_yuyubo.GetWriteReceiveDate3(this.Context, FSaleOrgId, where2);
SaleBILLLIS = WriteOrderDate.Select(item => new CombinaClass
{
Fid = Convert.ToInt32(item["FID"]),