3322
This commit is contained in:
parent
3076efb620
commit
f50f9c9675
@ -548,8 +548,8 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
|
|||||||
}
|
}
|
||||||
|
|
||||||
//2、收款单的待核销金额与订单的待最近30天发货通知单金额(除了医院客户)
|
//2、收款单的待核销金额与订单的待最近30天发货通知单金额(除了医院客户)
|
||||||
var SaleBILLLIS2Sa222 = SaleBILLLISNew.Where(t => t.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FBIllNO).ToList();
|
var SaleBILLLIS2Sa222 = 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.FBIllNO).ToList();
|
ReceiveBILLLIST = ReceiveBILLLIST2.Where(a => a.F_RowNew == 1 && a.FISHX != "已核销配对" && a.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FDate).ToList();
|
||||||
|
|
||||||
var oneToOneTemp2 = (from q in SaleBILLLIS2Sa222
|
var oneToOneTemp2 = (from q in SaleBILLLIS2Sa222
|
||||||
join u in ReceiveBILLLIST on new { q.FClient, FDAMOUNT= q.FaHuoAmount30Days } equals new { u.FClient, u.FDAMOUNT }
|
join u in ReceiveBILLLIST on new { q.FClient, FDAMOUNT= q.FaHuoAmount30Days } equals new { u.FClient, u.FDAMOUNT }
|
||||||
@ -633,15 +633,96 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
|
|||||||
|
|
||||||
|
|
||||||
//3、收款单的待核销金额与订单的待最近30天开票金额(只有医院客户)
|
//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 SaleBILLLIS2Sa222
|
||||||
|
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 =>
|
||||||
|
{
|
||||||
|
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张收款单对应多张张销售订单
|
//先挑1张收款单对应多张张销售订单
|
||||||
var SaleBILLLIS2Sa2 = SaleBILLLISNew.Where(t => t.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderBy(t => t.FClient).ThenByDescending(t => t.FBIllNO).ToList();
|
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.FBIllNO).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 =>
|
ReceiveBILLLIST.ForEach(t =>
|
||||||
{
|
{
|
||||||
var tempList = SaleBILLLIS2Sa2.Where(h => h.FClient == t.FClient && h.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderByDescending(h => h.FBIllNO).ToList();
|
var tempList = SaleBILLLIS2Sa2.Where(h => h.FClient == t.FClient && h.FISHX != "已核销配对" && t.FDAMOUNT > 0).OrderByDescending(h => h.FDate).ToList();
|
||||||
|
|
||||||
var FDAMOUNT = t.FDAMOUNT;
|
var FDAMOUNT = t.FDAMOUNT;
|
||||||
List<string> heTongList = new List<string>();
|
List<string> heTongList = new List<string>();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user