Merge branch 'master' of http://8.130.121.29:3000/yuyubo/Pilot_KD_Parino_yuyubo
This commit is contained in:
@@ -400,6 +400,7 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
|
||||
//自动匹配
|
||||
if (e.BarItemKey.ToString().Equals("MBBA_tbButton_2"))
|
||||
{
|
||||
//this.View.ShowMessage("1");
|
||||
if (status11 == 1)
|
||||
{
|
||||
this.View.ShowWarnningMessage("请先过滤一次数据后再点击[自动核销]");
|
||||
@@ -484,9 +485,9 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
|
||||
join u in ReceiveBILLLIST on new { q.FClient, q.FDAMOUNT,q.FBiBie } equals new { u.FClient, u.FDAMOUNT,u.FBiBie }
|
||||
select new { q.FClient, q.FBIllNO, q.FCONTRACTNUMBER, u.FDAMOUNT, UFbillNo = u.FBIllNO, u.FBiBie }).ToList();
|
||||
//var dasdsas = oneToOneTemp.Where(h => h.FBIllNO == "PL-XSDD20250400471").FirstOrDefault();
|
||||
var saleList1 = oneToOneTemp.Select(t => t.FBIllNO).Distinct().ToList();
|
||||
var saleList1 = oneToOneTemp.Select(t => t.FBIllNO).Distinct().OrderByDescending(t=>t).ToList();
|
||||
var ReceiveList1 = oneToOneTemp.Select(t => t.UFbillNo).Distinct().ToList();
|
||||
if (saleList1.Count() > ReceiveList1.Count())
|
||||
if (SaleBILLLISNew.Count() > ReceiveBILLLIST.Count())
|
||||
{
|
||||
List<string> deleteFBIllNOList = new List<string>();
|
||||
ReceiveList1.ForEach(t =>
|
||||
@@ -501,11 +502,20 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
|
||||
DateTime fdate = DateTime.Parse(ReceiveBILLLIST2.FirstOrDefault(h => h.FBIllNO == t).FDate);
|
||||
DateTime begin = fdate.AddDays(-5).Date;
|
||||
DateTime end = fdate.AddDays(6).Date;
|
||||
var list = SaleBILLLIS.Where(h => DateTime.Parse(h.FDate) >= begin && DateTime.Parse(h.FDate) < end && FBIllNOList.Contains(h.FBIllNO)).OrderByDescending(h => h.FDate).ToList();
|
||||
var list = SaleBILLLIS.Where(h => DateTime.Parse(h.FDate) >= begin && DateTime.Parse(h.FDate) < end && FBIllNOList.Contains(h.FBIllNO))
|
||||
.OrderByDescending(h => h.FDate).ToList();
|
||||
if (list.Count > 0)
|
||||
{
|
||||
fbillno = list.FirstOrDefault().FBIllNO;
|
||||
}
|
||||
else
|
||||
{
|
||||
list = SaleBILLLIS.Where(h => FBIllNOList.Contains(h.FBIllNO)).OrderByDescending(h => h.FDate).ToList();
|
||||
if (list.Count > 0)
|
||||
{
|
||||
fbillno = list.FirstOrDefault().FBIllNO;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -549,7 +559,7 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
|
||||
List<string> deleteFBIllNOList = new List<string>();
|
||||
saleList1.ForEach(t =>
|
||||
{
|
||||
var tempList = oneToOneTemp.Where(h => h.UFbillNo == t && !deleteFBIllNOList.Contains(h.UFbillNo)).ToList();
|
||||
var tempList = oneToOneTemp.Where(h => h.FBIllNO == t && !deleteFBIllNOList.Contains(h.UFbillNo)).ToList();
|
||||
if (tempList.Count > 0)
|
||||
{
|
||||
var FBIllNOList = tempList.Select(h => h.UFbillNo).ToList();
|
||||
@@ -565,10 +575,18 @@ namespace Pilot_KD_Parino.QPHY_AutoWrire
|
||||
{
|
||||
fbillno = list.FirstOrDefault().FBIllNO;
|
||||
}
|
||||
else
|
||||
{
|
||||
list = ReceiveBILLLIST.Where(h => FBIllNOList.Contains(h.FBIllNO)).OrderByDescending(h => h.FDate).ToList();
|
||||
if (list.Count > 0)
|
||||
{
|
||||
fbillno = list.FirstOrDefault().FBIllNO;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
fbillno = tempList.FirstOrDefault().FBIllNO;
|
||||
fbillno = tempList.FirstOrDefault().UFbillNo;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace Pilot_KD_Parino.SQL
|
||||
WHERE A.FDOCUMENTSTATUS = 'C'
|
||||
AND A.FISINIT != '1'
|
||||
AND A.FRECAMOUNTFOR > A.F_AMOUNT {where}
|
||||
order by FCONTACTUNIT,A.FID desc ", FORGID);
|
||||
order by FCONTACTUNIT,FDATE desc ", FORGID);
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
|
||||
|
||||
@@ -93,6 +93,11 @@ namespace Pilot_KD_Parino.Sal_Order
|
||||
break;
|
||||
//this.View.ShowMessage("没有上查关联的跨组织的采购订单");
|
||||
|
||||
}
|
||||
else if ( dt.Count > 1 )
|
||||
{
|
||||
throw new KDBusinessException("", "一张销售单下推多张采购订单,不能用自动跨组织推单功能:" + tablename);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -110,6 +115,11 @@ namespace Pilot_KD_Parino.Sal_Order
|
||||
{
|
||||
throw new KDBusinessException("", "没有上查关联的跨组织的采购订单:" + tablename);
|
||||
}
|
||||
else if (dt.Count > 1)
|
||||
{
|
||||
throw new KDBusinessException("", "一张销售单下推多张采购订单,不能用自动跨组织推单功能:" + tablename);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
xiaoFid = tempFid;
|
||||
@@ -150,7 +160,7 @@ namespace Pilot_KD_Parino.Sal_Order
|
||||
result = Invoke("PUR_PurchaseOrder", "PUR_ReceiveBill", tempFid.ToString(), "7cd93c259999489c97798063f2f7bd70", ref stockId,"收料通知单");
|
||||
}
|
||||
}
|
||||
return;
|
||||
|
||||
if (result != null)
|
||||
{
|
||||
sheet = result.SuccessDataEnity.FirstOrDefault();
|
||||
@@ -572,43 +582,68 @@ namespace Pilot_KD_Parino.Sal_Order
|
||||
temStockId = stockList.Select(t => int.Parse(t["FSTOCKID"].ToString())).FirstOrDefault();
|
||||
stockId = temStockId;
|
||||
}
|
||||
var stocks333 = stocks3[pur];
|
||||
var stocks = stocks333 as DynamicObjectCollection;
|
||||
var stock0 = stocks.ToList();
|
||||
//var stocks333 = stocks3[pur];
|
||||
//var stocks = stocks333 as DynamicObjectCollection;
|
||||
//var stock0 = stocks.ToList();
|
||||
|
||||
//拆分下推情况下匹配物料自动删减数量或删减行
|
||||
List<DynamicObject> deleteItem = new List<DynamicObject>();
|
||||
stock0.ForEach(t =>
|
||||
{
|
||||
t["StockID_Id"] = temStockId;
|
||||
//stock0.ForEach(t =>
|
||||
//{
|
||||
// t["StockID_Id"] = temStockId;
|
||||
|
||||
var Material = t["MaterialID"] as DynamicObject;
|
||||
// var Material = t["MaterialID"] as DynamicObject;
|
||||
// if (Material != null)
|
||||
// {
|
||||
// string code2 = (Material["Number"].ToString());
|
||||
// decimal qty = decimal.Parse(t["ActReceiveQty"].ToString());
|
||||
// if (MaterialCode.ContainsKey(code2))
|
||||
// {
|
||||
// if (MaterialCode[code2] != qty)
|
||||
// {
|
||||
// t["ActReceiveQty"] = MaterialCode[code2];
|
||||
// t["StockQty"] = MaterialCode[code2];
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// deleteItem.Add(t);
|
||||
// }
|
||||
// }
|
||||
//});
|
||||
var stock0 = stocks3[pur] as DynamicObjectCollection;
|
||||
|
||||
foreach(var item in stock0)
|
||||
{
|
||||
item["StockID_Id"] = temStockId;
|
||||
var Material = item["MaterialID"] as DynamicObject;
|
||||
if (Material != null)
|
||||
{
|
||||
string code2 = (Material["Number"].ToString());
|
||||
decimal qty = decimal.Parse(t["ActReceiveQty"].ToString());
|
||||
decimal qty = decimal.Parse(item["ActReceiveQty"].ToString());
|
||||
if (MaterialCode.ContainsKey(code2))
|
||||
{
|
||||
if (MaterialCode[code2] != qty)
|
||||
{
|
||||
t["ActReceiveQty"] = MaterialCode[code2];
|
||||
t["StockQty"] = MaterialCode[code2];
|
||||
item["ActReceiveQty"] = MaterialCode[code2];
|
||||
item["StockQty"] = MaterialCode[code2];
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
deleteItem.Add(t);
|
||||
deleteItem.Add(item);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (deleteItem.Count > 0)
|
||||
{
|
||||
//Logger.Error("BeforeData",JsonHelper.ToJson(stock0), new Exception());
|
||||
//Logger.Error("BeforeData", JsonHelper.ToJson(destObjs), new Exception());
|
||||
deleteItem.ForEach(t =>
|
||||
{
|
||||
stock0.Remove(t);
|
||||
});
|
||||
Logger.Error("deleteItem", JsonHelper.ToJson(deleteItem), new Exception());
|
||||
//Logger.Error("AfterData", JsonHelper.ToJson(destObjs), new Exception());
|
||||
}
|
||||
ServiceHelper.GetService<ISaveService>().Save(this.Context, destFormMetadata.BusinessInfo, destObjs, OperateOption.Create());
|
||||
//调用FActReceiveQty字段值更新服务
|
||||
|
||||
@@ -80,7 +80,7 @@ namespace Pilot_KD_Parino.Sal_Order
|
||||
getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_PUR_ReqEntry_LK
|
||||
WHERE FSBILLID = {tempFid} and FSTABLENAME='T_SAL_ORDERENTRY' ";
|
||||
dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
|
||||
if (dt == null || dt.Count == 0)
|
||||
if (dt == null || dt.Count == 0 || dt.Count>1)
|
||||
{
|
||||
//throw new KDBusinessException("", "没有找到跨组织的采购申请单:" + getSourceSql);
|
||||
return;
|
||||
@@ -98,7 +98,7 @@ namespace Pilot_KD_Parino.Sal_Order
|
||||
getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM t_PUR_POOrderEntry_LK
|
||||
WHERE FSBILLID = {tempFid} and FSTABLENAME='T_PUR_ReqEntry' ";
|
||||
dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
|
||||
if (dt == null || dt.Count == 0)
|
||||
if (dt == null || dt.Count == 0 || dt.Count > 1)
|
||||
{
|
||||
//throw new KDBusinessException("", "没有找到跨组织的采购订单:" + getSourceSql);
|
||||
return;
|
||||
@@ -115,7 +115,7 @@ namespace Pilot_KD_Parino.Sal_Order
|
||||
getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_SAL_ORDERENTRY_LK
|
||||
WHERE FSBILLID = {tempFid} and FSTABLENAME='t_PUR_POOrderEntry' ";
|
||||
dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
|
||||
if (dt == null || dt.Count == 0)
|
||||
if (dt == null || dt.Count == 0 || dt.Count > 1)
|
||||
{
|
||||
//throw new KDBusinessException("", "没有找到跨组织的销售订单:" + getSourceSql);
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user