From 86bc636d8c2c16247f9450a04fe2f46ca3286cb3 Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期四, 11 八月 2022 19:55:14 +0800
Subject: [PATCH] 维护
---
WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs | 109 ++++++++++++++++++++++-----
WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs | 96 ++++++++++++++++++------
WebAPI/DLL/ClsSc_ICMOBillWorkQtyStatus_Tmp.cs | 4
3 files changed, 162 insertions(+), 47 deletions(-)
diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
index 51bce5f..8eef032 100644
--- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
@@ -110,6 +110,7 @@
public double 璁″垝鍙戞枡鏁伴噺 = 0;//HPlanQtyCol
public int HWHID = 0;//HWHIDCol
public int? 璋冨嚭浠撳簱id = 0;//璋冨嚭浠撳簱id
+ public int? 璋冨叆浠撳簱id = 0;//璋冨叆浠撳簱id
public string HMaterialNumberCol { get; set; }
public string HMaterialModelCol { get; set; }
public string HProcID { get; set; }//HProcIDCol
@@ -119,10 +120,10 @@
public long HICMOInterID = 0;// HICMOInterIDCol
public long HICMOEntryID = 0;// HICMOEntryIDCol
public long HDeptID = 0;//HDeptID
+ public long 搴撳瓨鏁伴噺 = 0;
public double HBHGQtyCol = 0;
public string 閿�鍞鍗曞彿 { get; set; }//HSeOrderNOCol
public DateTime? 璁″垝寮�宸ユ棩鏈� = null;//HBPlanDateCol
-
}
//涓存椂琛� 鍙枡瀛愯〃
@@ -139,6 +140,7 @@
public string HSeOrderNo;
public string HSeOrderBillNo;
public int HWHID = 0;
+ public int HSCWHID = 0;
public long HOutOrgID = 0;
public long HICMOInterID = 0;
public long HICMOEntryID = 0;
@@ -194,6 +196,51 @@
return objJsonResult;
}
+ if (listCa[i].搴撳瓨鏁伴噺 == 0 && listCa[i].鍙枡鏁伴噺 > 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "搴撳瓨鏁伴噺涓�0,鏃犳硶鍙枡!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].鍙枡鏁伴噺 > listCa[i].搴撳瓨鏁伴噺)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "搴撳瓨鏁伴噺灏忎簬鍙枡鏁伴噺,鏃犳硶鍙枡!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].鍙枡鏁伴噺 > 0 && listCa[i].璋冨叆浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "璇烽�夋嫨璋冨叆浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].鍙枡鏁伴噺 > 0 && listCa[i].璋冨嚭浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "璇烽�夋嫨璋冨嚭浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺 == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺涓�0!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
j = 1;
var txtHBillNo = DBUtility.ClsPub.CreateBillCode_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿
@@ -218,28 +265,11 @@
oSub.HSourceBillNo = listCa[i].HSourceBillNo;
oSub.HQty =double.Parse(listCa[i].鍙枡鏁伴噺.ToString());
- //if (oSub.HQty <= 0)
- //{
- // objJsonResult.code = "0";
- // objJsonResult.count = 0;
- // objJsonResult.Message = $"绗瑊i+1}琛岋紝鍙枡鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0";
- // objJsonResult.data = null;
- // return objJsonResult;
- //}
-
- //if (oSub.HQty > listCa[i].璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺)
- //{
- // objJsonResult.code = "0";
- // objJsonResult.count = 0;
- // objJsonResult.Message = $"绗瑊i+1}琛岋紝鍙枡鏁伴噺澶т簬璇ョ墿鏂欒皟鍑轰粨搴撳彲鐢ㄥ簱瀛樻暟閲�";
- // objJsonResult.data = null;
- // return objJsonResult;
- //}
-
oSub.HMaterID = listCa[i].HMaterialID;
oSub.HMaterNumber = listCa[i].HMaterialNumberCol;
oSub.HModel = listCa[i].HMaterialModelCol;
- oSub.HWHID = listCa[i].HWHID;
+ oSub.HWHID = int.Parse(listCa[i].璋冨叆浠撳簱id.ToString());
+ oSub.HSCWHID = int.Parse(listCa[i].璋冨嚭浠撳簱id.ToString());
oSub.HProcName = listCa[i].HProcNameCol;
oSub.HProcID = listCa[i].HProcID;
oSub.HOutOrgID = listCa[i].HOutOrgID;
@@ -314,12 +344,12 @@
" (HInterID,HEntryID,HRemark" +
",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo,HICMOInterID,HICMOEntryID,HICMOBillNo" +
- ",HDeptID,HMaterID,HQty,HProcID,HWHID,HSPID,HBillNo_bak,HOutOrgID" +
+ ",HDeptID,HMaterID,HQty,HProcID,HWHID,HSCWHID,HSPID,HBillNo_bak,HOutOrgID,HStockOutOrgID,HStockInOrgID" +
") values("
+ omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'" +
"," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
"," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString() + ",'" + oSub.HICMOBillNo + "'" +
- "," + oSub.HDeptID.ToString() + "," + oSub.HMaterID.ToString() + "," + oSub.HQty.ToString() + ",'" + oSub.HProcID + "'," + oSub.HWHID.ToString() + ", " + oSub.HSPID.ToString() +",'',"+oSub.HOutOrgID+") ", ref DBUtility.ClsPub.sExeReturnInfo);
+ "," + oSub.HDeptID.ToString() + "," + oSub.HMaterID.ToString() + "," + oSub.HQty.ToString() + ",'" + oSub.HProcID + "'," + oSub.HWHID.ToString() + ", " + oSub.HSCWHID.ToString()+"," + oSub.HSPID.ToString() +",'',"+oSub.HOutOrgID+ ","+oSub.HOutOrgID+ "," + omodel.HPRDORGID +") ", ref DBUtility.ClsPub.sExeReturnInfo);
//涓昏〃
@@ -406,6 +436,24 @@
return objJsonResult;
}
+ if (listCa[i].璋冨叆浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "璇烽�夋嫨璋冨叆浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].璋冨嚭浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "璇烽�夋嫨璋冨嚭浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
flag = AddICStockTuiBill(listCa[i], "666601", "涓嶈壇鍝侀��鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
j = 1;
}
@@ -454,7 +502,7 @@
Int64 lngBillKey = listCa.HSouceInterID == 0 ? 0 : listCa.HSouceInterID;
Int64 lngBillKeyEntry = listCa.HSourceEntryID == 0 ? 0 : listCa.HSourceEntryID;
double HQty = (double)(listCa.閫�鏂欐暟閲� == 0 ? 0 : listCa.閫�鏂欐暟閲�);
- long HDeptWHID = listCa.HSTOCKID == 0 ? 0 : listCa.HSTOCKID;
+ long HDeptWHID = int.Parse(listCa.璋冨叆浠撳簱id.ToString()) == 0 ? 0 : int.Parse(listCa.璋冨叆浠撳簱id.ToString());
string HTuiResult = listCa.閫�鏂欏師鍥� == "" ? "" : listCa.閫�鏂欏師鍥�;
var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿
var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
@@ -474,7 +522,7 @@
" HItemMainID, HSendManID, HWareManID, HStockOutOrgID, HStockInOrgID, HBackType)" +
$"values({DateTime.Now.Year},{DateTime.Now.Month},{HBillInterID},'{HBillType}',1," +
$" '{HBillType}','{DateTime.Now}','{HBillNo}',{HOrgID},'{ DBUtility.ClsPub.CurUserName}','{DateTime.Now}','','',0,0,0,''," +
- $" 0, 0, 0, {HOrgID}, 0,'{HBackType}')");
+ $" 0, 0, {listCa.HOutOrgID}, {HOrgID}, 0,'{HBackType}')");
sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
oCN.Commit();
diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs
index 96f2adb..5b9802d 100644
--- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs
@@ -64,6 +64,8 @@
ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_Query '{com.MaterialNumber}','{com.MaterialName}','{com.MaterialModel}','{com.HGD}'," +
$"'{com.HWHName}','{com.HDeptName}','{com.Organization}','{com.user}','{com.HJLStatus}','{com.HBeginDate}','{com.HEndDate}'", "h_p_JIT_ComplementGoodsBillList_Query");
+ //bool a = AddSendGoodsBillSynChronizAtion("PLD00000112", ref DBUtility.ClsPub.sExeReturnInfo);
+
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "Sucess锛�";
@@ -211,6 +213,9 @@
public int? HMaterID = 0;
public int? HWHID = 0;
public int? HSPID = 0;
+ public int? HStockOutOrgID = 0;
+ public int? HStockInOrgID = 0;
+ public int? HSCWHID = 0;
}
[Route("Sc_ComplementGoods/JIT_SendGoodsBill")]
@@ -295,36 +300,47 @@
ds = oCN.RunProcReturn($"select a.HMainSourceEntryID,b.HMaterID from JIT_SendGoodsBillMain a with(nolock) inner join JIT_SendGoodsBillSub b with(nolock) on a.HInterID = b.HInterID where a.HMainSourceInterID={SourceInterID} and a.HBillStatus=1", "JIT_SendGoodsBillMain");
+ long InterID = 0;
+ string HBillNo = "";
for (int i = 0; i < listCa.Count; i++)
{
- int a = -1;
- for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
+ //int a = -1;
+ //for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
+ //{
+ // if (ds.Tables[0].Rows[j]["HMaterID"].ToString() == listCa[i].HMaterID.ToString() && ds.Tables[0].Rows[j]["HMainSourceEntryID"].ToString() == listCa[i].HEntryID.ToString())
+ // {
+ // a = j;
+ // break;
+ // }
+ //}
+
+ // 鍒欎唬琛ㄩ厤閫佸崟娌℃湁鏁版嵁 闇�瑕佹坊鍔犳暟鎹�
+ if (ds.Tables[0].Rows.Count == 0)
{
- if (ds.Tables[0].Rows[j]["HMaterID"].ToString() == listCa[i].HMaterID.ToString()&& ds.Tables[0].Rows[j]["HMainSourceEntryID"].ToString() == listCa[i].HEntryID.ToString())
+ if (i == 0)
{
- a = j;
- break;
+ InterID = DBUtility.ClsPub.CreateBillID_Prod("460201", ref DBUtility.ClsPub.sExeReturnInfo);
+ HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("460201", ref DBUtility.ClsPub.sExeReturnInfo, true);
+
+ //娣诲姞涓昏〃鏁版嵁
+ oCN.RunProc("insert into JIT_SendGoodsBillMain(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate" +
+ ",HBillNo,HBillStatus,HMaker,HMakeDate,HISCheck, HMainSourceInterID, HMainSourceEntryID" +
+ ", HMainSourceBillNo, HMainSourceBillType)" +
+ $"values({DateTime.Now.Year},{DateTime.Now.Month},'460201','460201',{InterID}, GETDATE(), '{HBillNo}'," +
+ $" 1,'{user}', GETDATE(), 0, {SourceInterID}, {listCa[i].HEntryID}, '{SourceBillNo}', '4602')");
}
- }
-
- //a=0 鍒欎唬琛ㄩ厤閫佸崟娌℃湁鏁版嵁 闇�瑕佹坊鍔犳暟鎹�
- if (a == -1 )
- {
- long InterID = DBUtility.ClsPub.CreateBillID_Prod("460201", ref DBUtility.ClsPub.sExeReturnInfo);
- string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("460201", ref DBUtility.ClsPub.sExeReturnInfo, true);
-
- //娣诲姞涓昏〃鏁版嵁
- oCN.RunProc("insert into JIT_SendGoodsBillMain(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate" +
- ",HBillNo,HBillStatus,HMaker,HMakeDate,HISCheck, HMainSourceInterID, HMainSourceEntryID" +
- ", HMainSourceBillNo, HMainSourceBillType)" +
- $"values({DateTime.Now.Year},{DateTime.Now.Month},'460201','460201',{InterID}, GETDATE(), '{HBillNo}'," +
- $" 1,'{user}', GETDATE(), 0, {SourceInterID}, {listCa[i].HEntryID}, '{SourceBillNo}', '4602')");
//娣诲姞瀛愯〃鏁版嵁
oCN.RunProc("insert into JIT_SendGoodsBillSub(HInterID,HBillNo_bak,HEntryID" +
- ",HMaterID,HQty,HWHID,HSPID,HISCheck,HCheckSubMan,HCheckSubDate)" +
+ ",HMaterID,HQty,HWHID,HSPID,HISCheck,HCheckSubMan,HCheckSubDate,HStockOutOrgID,HStockInOrgID,HSCWHID)" +
$"values({InterID},'{HBillNo}',{i + 1}, {listCa[i].HMaterID},{listCa[i].鏈鎷f枡鏁伴噺}," +
- $" {listCa[i].HWHID},{listCa[i].HSPID},0,'{user}', GETDATE())");
+ $" {listCa[i].HWHID},{listCa[i].HSPID},0,'{user}', GETDATE(),{listCa[i].HStockOutOrgID},{listCa[i].HStockInOrgID},{listCa[i].HSCWHID})");
+
+ //鍚屾閲戣澏鐩存帴璋冩嫧鍗�
+ if (AddSendGoodsBillSynChronizAtion(HBillNo, ref DBUtility.ClsPub.sExeReturnInfo))
+ {
+
+ }
}
else
{
@@ -374,6 +390,57 @@
throw (e);
}
}
+
+ //鍚屾閲戣澏鐩存帴璋冩嫧鍗�
+ public bool AddSendGoodsBillSynChronizAtion(string HBillNo, ref string sReturn)
+ {
+ ds = oCN.RunProcReturn("exec JIT_SendGoodsBillSynChronizAtion '" + HBillNo + "'", "JIT_SendGoodsBillSynChronizAtion");
+
+ foreach (DataRow dr in ds.Tables[0].Rows)
+ {
+ JObject model = new JObject();
+ model.Add("FBillTypeID", new JObject() { ["Fnumber"] = dr["FBillTypeID"].ToString() }); //鍗曟嵁绫诲瀷
+ model.Add("FDate", dr["FDate"].ToString());
+ model.Add("FBILLNO", dr["FBILLNO"].ToString());
+ model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FStockOrgId"].ToString() });
+ model.Add("FOwnerTypeIdHead", dr["FOwnerTypeIdHead"].ToString());
+ model.Add("FTransferBizType", dr["FTransferBizType"].ToString());
+ model.Add("FOwnerTypeOutIdHead", dr["FOwnerTypeOutIdHead"].ToString());
+ model.Add("FTransferDirect", dr["FTransferDirect"].ToString());
+ model.Add("FStockOutOrgId", new JObject() { ["Fnumber"] = dr["FStockOutOrgId"].ToString() });
+
+ JArray Fentity = new JArray();
+ JObject FentityModel = new JObject();
+ FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = dr["FMaterialId"].ToString() });
+ FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = dr["FUnitID"].ToString() });
+ FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = dr["FBaseUnitId"].ToString() });
+ FentityModel.Add("FOwnerTypeId", dr["FOwnerTypeId"].ToString());
+ FentityModel.Add("FOwnerId", new JObject() { ["Fnumber"] = dr["FOwnerId"].ToString() });
+ FentityModel.Add("FOwnerTypeOutId", dr["FOwnerTypeOutId"].ToString());
+ FentityModel.Add("FOwnerOutId", new JObject() { ["Fnumber"] = dr["FOwnerOutId"].ToString() });
+ FentityModel.Add("FKeeperTypeId", dr["FKeeperTypeId"].ToString());
+ FentityModel.Add("FKeeperId", new JObject() { ["Fnumber"] = dr["FKeeperId"].ToString() });
+ FentityModel.Add("FKeeperTypeOutId", dr["FKeeperTypeOutId"].ToString());
+ FentityModel.Add("FKeeperOutId", new JObject() { ["Fnumber"] = dr["FKeeperOutId"].ToString() });
+ FentityModel.Add("FQty", dr["FQty"].ToString());
+
+ Fentity.Add(FentityModel);
+ model.Add("FBillEntry", Fentity);
+
+ JObject jsonRoot = new JObject()
+ {
+ ["Creator"] = "",
+ ["NeedUpDateFields"] = new JArray(),
+ ["NeedReturnFields"] = new JArray(),
+ ["IsDeleteEntry"] = "false",
+ ["SubSystemId"] = "",
+ ["IsVerifyBaseDataField"] = "false",
+ ["Model"] = model
+ };
+
+ }
+ return true;
+ }
#endregion
#region 涓婃煡
diff --git a/WebAPI/DLL/ClsSc_ICMOBillWorkQtyStatus_Tmp.cs b/WebAPI/DLL/ClsSc_ICMOBillWorkQtyStatus_Tmp.cs
index 18752d4..1878702 100644
--- a/WebAPI/DLL/ClsSc_ICMOBillWorkQtyStatus_Tmp.cs
+++ b/WebAPI/DLL/ClsSc_ICMOBillWorkQtyStatus_Tmp.cs
@@ -100,7 +100,7 @@
") ");
double sumqty = omodel.HQty + omodel.HBadQty + omodel.HWasterQty; //汇报数量+不良+报废
//回写生产状态临时表Sc_ICMOBillStatus_Tmp拆分汇报数量 HSplitRelationQty
- oCn.RunProc("update Sc_ICMOBillStatus_Tmp set HSplitRelationQty=HSplitRelationQty+" + sumqty + " where HICMOBillNo='" + omodel.HICMOBillNo + "' and HSourceID='" + omodel.HSourceID + "' and HICMOInterID='" + omodel.HICMOInterID + "' and HICMOEntryID='" + omodel.HICMOEntryID + "'");
+ oCn.RunProc("update Sc_ICMOBillStatus_Tmp set HSplitRelationQty=HSplitRelationQty+" + sumqty + " where HICMOBillNo='" + omodel.HICMOBillNo + "' and HSourceID='" + omodel.HSourceID + "' and HICMOInterID='" + omodel.HICMOInterID + "' and HICMOEntryID='" + omodel.HICMOEntryID + "' and HInterID="+ omodel.HSourceInterID.ToString());
//再次验证 保存是否 合理
DataSet ds = oCn.RunProcReturn("exec h_p_JIT_ICMOBillWorkQtyStatus_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_ICMOBillWorkQtyStatus_SaveCtrl");
@@ -200,7 +200,7 @@
//更新生产状态临时状态表数量
//oCn.RunProc("exec h_p_Sc_UpDateRelation_ICMOToICMOReport_Qty " + HICMOInterID.ToString() + "," + HICMOEntryID.ToString() + "");
//根据源单主内码 设置 生产状态表 完工状态(设置本单对应得源单 为完工状态) 更新生产状态临时状态表数量
- oCn.RunProc("exec h_p_JIT_ICMOBillWorkQtyStatus_AddRelation " + HSourceID.ToString() + "," + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo.ToString() + "',"+ HICMOInterID.ToString() + ","+ HICMOEntryID.ToString()+ "");
+ oCn.RunProc("exec h_p_JIT_ICMOBillWorkQtyStatus_AddRelation " + HSourceID.ToString() + "," + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo.ToString() + "'," + HICMOInterID.ToString() + "," + HICMOEntryID.ToString() + "");
sReturn = "审核单据成功!";
oCn.Commit();
//生成调拨单
--
Gitblit v1.9.1