From b4e78e5b10fd9777e44a9114aad3502edfd43037 Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期二, 29 十一月 2022 17:19:40 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API into master
---
WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs | 668 +++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 519 insertions(+), 149 deletions(-)
diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
index 90f0110..273dfc6 100644
--- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
@@ -40,6 +40,7 @@
public DateTime HEndDate { get; set; }//缁撴潫鏃堕棿
public int ps { get; set; }//浠呮樉绀烘湭瀹屽叏閰嶉��
public string user { get; set; }//褰撳墠鐧诲綍浜�
+ public string Arbitrarily { get; set; }//浠绘剰鍙傛暟
}
[Route("Sc_ComplementGoodBill/ComplementGoodBillList")]
@@ -69,7 +70,7 @@
ComplementGoodBill com = JsonConvert.DeserializeObject<ComplementGoodBill>(sWhere.ToString());
ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_Query '{com.HSeOrderBillNo}','{com.DepartmentName}','{com.MaterialNumber}','{com.MaterialName}'," +
- $"'{com.MaterialModel}','{com.HICMOBillNo}','{com.CPNumber}','{com.CPName}','{com.CPModel}','{com.HBeginDate}','{com.HEndDate.AddDays(1).AddSeconds(-1)}'," +
+ $"'{com.MaterialModel}','{com.HICMOBillNo}','{com.CPNumber}','{com.CPName}','{com.CPModel}'," +
$"{com.ps},{com.Organization},'{com.user}' ", "h_p_JIT_CallGoodsPlatForm_Query");
objJsonResult.code = "1";
@@ -98,18 +99,21 @@
public long HSouceInterID = 0;//HSourceInterIDCol
public long HSourceEntryID = 0;//HSourceEntryIDCol
public int? 鍙枡鏁伴噺 = 0;//HBHGQtyCol
+ public int? 閰嶅鏁伴噺 = 0;
public int? 宸插彨鏂欐暟閲� = 0;//HBHGQtyCol
public int? 宸查厤閫佹暟閲� = 0;//HBHGQtyCol
public double? 閫�鏂欐暟閲� = 0;//閫�鏂欐暟閲�
public long HSTOCKID = 0;//HSTOCKID
public string 閫�鏂欏師鍥� { get; set; }//閫�鏂欏師鍥�
public int HMaterialID = 0; //HMaterialIDCol
+ public string 鐗╂枡浠g爜 = "";
public string HSourceBillNo { get; set; }//HSourceBillNoCol
public int 璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺 = 0;//HKFQtyKYCol
public int 璋冨嚭浠撳簱搴撳瓨鏁伴噺 = 0;//HKFQtySCol
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 +123,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 +143,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;
@@ -185,11 +190,96 @@
{
if (listCa[i].HMaterialID != 0 && listCa[i].鍙枡鏁伴噺 > 0)
{
+ var Hqty = 0.0;
+ var TuiHqty = 0.0;
+ //褰撳墠鍗曟嵁宸插彨鏂� 鍜� 宸查��鏂欐暟閲�
+ ds = oCN.RunProcReturn($@"
+ select isnull(a.HQty,0) 宸插彨鏂欐暟閲�,isnull(b.HQty,0) 宸查��鏂欑敵璇锋暟閲� from (
+ select sum(b.HQty) HQty,c.HNumber ,b.HSourceBillNo
+ from JIT_CallGoodsBillMain a
+ join JIT_CallGoodsBillSub b on a.HInterID=b.HInterID
+ left join Gy_Material c on b.HMaterID=c.HItemID
+ where b.HSourceBillNo='{listCa[i].HSourceBillNo}'
+ group by c.HNumber,b.HSourceBillNo
+ ) a
+ left join (
+ select sum(b.HQty) HQty,c.HNumber,b.HSourceBillNo
+ from JIT_CallGoodsBackRequestBillMain a
+ inner join JIT_CallGoodsBackRequestBillSub b on a.HInterID=b.HInterID
+ left join Gy_Material c on b.HMaterID=c.HItemID
+ where b.HSourceBillNo='{listCa[i].HSourceBillNo}'
+ group by c.HNumber,b.HSourceBillNo
+ ) b on a.HNumber=b.HNumber and a.HSourceBillNo=b.HSourceBillNo where a.HNumber='{listCa[i].鐗╂枡浠g爜}'", "JIT_CallGoodsBillMain");
+
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ Hqty = double.Parse(ds.Tables[0].Rows[0]["宸插彨鏂欐暟閲�"].ToString());
+ TuiHqty = double.Parse(ds.Tables[0].Rows[0]["宸查��鏂欑敵璇锋暟閲�"].ToString());
+ }
+
if (listCa[i].鍙枡鏁伴噺 > listCa[i].璁″垝鍙戞枡鏁伴噺)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
- objJsonResult.Message = "鍙枡鏁伴噺澶т簬璁″垝鍙戞枡鏁伴噺!";
+ objJsonResult.Message = $"绗瑊(i + 1)}琛屽彨鏂欐暟閲忓ぇ浜庤鍒掑彂鏂欐暟閲�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if((listCa[i].鍙枡鏁伴噺 + Hqty - TuiHqty)> listCa[i].璁″垝鍙戞枡鏁伴噺)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊(i + 1)}琛屽彨鏂欐�绘暟閲忓ぇ浜庤鍒掑彂鏂欐暟閲�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ ds = oCN.RunProcReturn("select * from h_v_JIT_WarehouseList where 浠撳簱ID=" + listCa[i].璋冨嚭浠撳簱id + " and 鐗╂枡缂栫爜 = '" + listCa[i].鐗╂枡浠g爜 + "' and 搴撳瓨缁勭粐=" + listCa[i].HOutOrgID, "h_v_JIT_WarehouseList");
+
+ var HSCWHIDCount= double.Parse(ds.Tables[0].Rows[0]["璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺"].ToString());
+
+ if (HSCWHIDCount == 0 && listCa[i].鍙枡鏁伴噺 > 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊(i + 1)}琛屽簱瀛樻暟閲忎负0,鏃犳硶鍙枡!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].鍙枡鏁伴噺 > HSCWHIDCount)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊(i + 1)}琛屽簱瀛樻暟閲忓皬浜庡彨鏂欐暟閲�,鏃犳硶鍙枡!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].鍙枡鏁伴噺 > 0 && listCa[i].璋冨叆浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊(i + 1)}琛岃閫夋嫨璋冨叆浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].鍙枡鏁伴噺 > 0 && listCa[i].璋冨嚭浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊(i + 1)}琛岃閫夋嫨璋冨嚭浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].璋冨嚭浠撳簱id == listCa[i].璋冨叆浠撳簱id)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊(i + 1)}琛岃皟鍑轰粨搴撳拰璋冨叆浠撳簱涓嶈兘涓�鏍�!";
objJsonResult.data = null;
return objJsonResult;
}
@@ -218,28 +308,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;
@@ -264,7 +337,7 @@
{
objJsonResult.code = "0";
objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊txt}琛屽彨鏂欏け璐ワ紝閲嶆柊鍙枡锛屽叾浠栬鏁板彨鏂欐垚鍔�";
+ objJsonResult.Message = $"绗瑊txt}琛屽彨鏂欏け璐ワ紝閲嶆柊鍙枡";
objJsonResult.data = null;
return objJsonResult;
}
@@ -314,12 +387,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);
//涓昏〃
@@ -346,6 +419,7 @@
catch (Exception e)
{
sReturn = e.Message;
+ oCN.RollBack();
throw (e);
}
}
@@ -361,7 +435,7 @@
string msg2 = sArray[0].ToString();
DBUtility.ClsPub.CurUserName = sArray[1].ToString();
string HOrgID = sArray[2].ToString();
- bool flag = false;
+ json flag =new json();
try
{
@@ -385,29 +459,17 @@
{
if (listCa[i].閫�鏂欐暟閲� > 0)
{
- if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
- ds = oCN.RunProcReturn("select sum(d.HQty) HQty from JIT_CallGoodsBackRequestBillSub c inner join JIT_CallGoodsBackBillSub d on c.HInterID = d.HSourceInterID and c.HEntryID = d.HSourceEntryID and c.HMaterID = d.HMaterID " +
- $"where c.HSourceInterID={listCa[i].HSouceInterID} and c.HSourceEntryID ={listCa[i].HSourceEntryID} and c.HSourceBillNo = '{listCa[i].HSourceBillNo}' and c.HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub");
-
- if ((double.Parse(ds.Tables[0].Rows[0][0].ToString()==""?"0": ds.Tables[0].Rows[0][0].ToString()) +listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"宸茬粡閫�鏂欐暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
- flag = AddICStockTuiBill(listCa[i], "666601", "涓嶈壇鍝侀��鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
+ flag = (json)AddICStockTuiBill(listCa[i], "666601", "涓嶈壇鍝侀��鏂�", HOrgID);
j = 1;
+
+ if (flag.code == "0")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = objJsonResult.Message;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
}
}
if (j == 0)
@@ -419,22 +481,11 @@
return objJsonResult;
}
- if (flag)
- {
- objJsonResult.code = "1";
- objJsonResult.count = 1;
- objJsonResult.Message = "涓嶈壇鍝侀��鏂欐垚鍔�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
- else
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "涓嶈壇鍝侀��鏂欏け璐�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "涓嶈壇鍝侀��鏂欐垚鍔�!";
+ objJsonResult.data = null;
+ return objJsonResult;
}
catch (Exception e)
{
@@ -447,14 +498,66 @@
}
//鏂板
- public bool AddICStockTuiBill(CallGoodsBill listCa,string HBillType,string HBackType,string HOrgID, ref string sReturn)
+ public object AddICStockTuiBill(CallGoodsBill listCa,string HBillType,string HBackType,string HOrgID)
{
try
{
+
+
+ if (listCa.閫�鏂欐暟閲� > listCa.宸查厤閫佹暟閲� && listCa.宸查厤閫佹暟閲� > 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa.璋冨叆浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "璇烽�夋嫨璋冨叆浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa.璋冨嚭浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "璇烽�夋嫨璋冨嚭浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ var THqty = 0.0;
+ ds = oCN.RunProcReturn($@"
+ select sum(b.HQty) HQty,c.HNumber,b.HSourceBillNo
+ from JIT_CallGoodsBackRequestBillMain a
+ inner join JIT_CallGoodsBackRequestBillSub b on a.HInterID=b.HInterID
+ left join Gy_Material c on b.HMaterID=c.HItemID
+ where c.HNumber='{listCa.鐗╂枡浠g爜}' and b.HSourceBillNo='{listCa.HSourceBillNo}'
+ group by c.HNumber,b.HSourceBillNo
+ ", "JIT_CallGoodsBackRequestBillMain");
+
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ THqty = double.Parse(ds.Tables[0].Rows[0]["HQty"].ToString());
+ }
+
+ if ((listCa.閫�鏂欐暟閲� + THqty) > listCa.宸查厤閫佹暟閲�)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "绱閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
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,15 +577,19 @@
" 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();
- return true;
+
+ objJsonResult.code = "1";
+ objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�";
+ return objJsonResult;
}
catch (Exception e)
{
- sReturn = e.Message;
+ objJsonResult.code = "0";
+ objJsonResult.Message = e.Message; ;
+ return objJsonResult;
throw (e);
}
}
@@ -515,36 +622,23 @@
List<CallGoodsBill> listCa = new List<CallGoodsBill>();
//鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎
listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
- bool flag = false;
+ json flag = new json();
int j = 0;
for (int i = 0; i < listCa.Count; i++)
{
if (listCa[i].閫�鏂欐暟閲� > 0)
{
- if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
- ds = oCN.RunProcReturn("select sum(HQty) from JIT_CallGoodsBackRequestBillSub " +
- $"where HSourceInterID={listCa[i].HSouceInterID} and HSourceEntryID ={listCa[i].HSourceEntryID} and HSourceBillNo = '{listCa[i].HSourceBillNo}' and HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub");
-
- if ((double.Parse(ds.Tables[0].Rows[0][0].ToString() == "" ? "0" : ds.Tables[0].Rows[0][0].ToString()) + listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"宸茬粡閫�鏂欑敵璇锋暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
- flag = AddICStockTuiBill(listCa[i], "666602", " 浣欓噺閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
+ flag =(json)AddICStockTuiBill(listCa[i], "666602", " 浣欓噺閫�鏂�", HOrgID);
j = 1;
+ if (flag.code == "0")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = objJsonResult.Message;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
}
}
if (j == 0)
@@ -556,23 +650,11 @@
return objJsonResult;
}
- if (flag)
- {
- objJsonResult.code = "1";
- objJsonResult.count = 1;
- objJsonResult.Message = "浣欓噺閫�鏂欐垚鍔�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
- else
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "浣欓噺閫�鏂欏け璐�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "浣欓噺閫�鏂欐垚鍔�!";
+ objJsonResult.data = null;
+ return objJsonResult;
}
catch (Exception e)
{
@@ -613,35 +695,22 @@
//鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎
listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
- bool flag = false;
+ json flag = new json();
int j = 0;
for (int i = 0; i < listCa.Count; i++)
{
if (listCa[i].閫�鏂欐暟閲� > 0)
{
- if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
- ds = oCN.RunProcReturn("select sum(HQty) from JIT_CallGoodsBackRequestBillSub " +
- $"where HSourceInterID={listCa[i].HSouceInterID} and HSourceEntryID ={listCa[i].HSourceEntryID} and HSourceBillNo = '{listCa[i].HSourceBillNo}' and HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub");
-
- if ((double.Parse(ds.Tables[0].Rows[0][0].ToString() == "" ? "0" : ds.Tables[0].Rows[0][0].ToString()) + listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"宸茬粡閫�鏂欑敵璇锋暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
- flag = AddICStockTuiBill(listCa[i], "666603", "鎶ュ簾閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
+ flag =(json) AddICStockTuiBill(listCa[i], "666603", "鎶ュ簾閫�鏂�", HOrgID);
j = 1;
+ if (flag.code == "0")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = objJsonResult.Message;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
}
}
if (j == 0)
@@ -653,22 +722,11 @@
return objJsonResult;
}
- if (flag)
- {
- objJsonResult.code = "1";
- objJsonResult.count = 1;
- objJsonResult.Message = "鎶ュ簾閫�鏂欐垚鍔�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
- else
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "鎶ュ簾閫�鏂欏け璐�!";
- objJsonResult.data = null;
- return objJsonResult;
- }
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鎶ュ簾閫�鏂欐垚鍔�!";
+ objJsonResult.data = null;
+ return objJsonResult;
}
catch (Exception e)
{
@@ -888,5 +946,317 @@
}
#endregion
+ #region 鐢熶骇鍙枡骞冲彴 浠撳簱搴撳瓨鍒楄〃
+
+ [Route("Sc_ComplementGoodBill/GetWarehouseList_JIT")]
+ [HttpGet]
+ public object GetWarehouseList_JIT(string sWhere)
+ {
+ try
+ {
+ ds = oCN.RunProcReturn("select * from h_v_JIT_WarehouseList where 1=1 "+ sWhere, "h_v_JIT_WarehouseList");
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = ds.Tables[0];
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+ #region 鐢熶骇鍙枡骞冲彴 鏈敓鎴愭嫞鏂欑敵璇峰崟 鏈敓鎴愰��鏂欏崟
+ [Route("Sc_ComplementGoodBill/NotGeneratedMaterialList")]
+ [HttpGet]
+ public object NotGeneratedMaterialList(string sWhere, string user)
+ {
+ try
+ {
+ //鏌ヨ鍙枡鍗� 鏈敓鎴� 鎷f枡鍗� 鐨勬潯鏁�
+ //鏌ヨ閫�鏂欑敵璇峰崟 鏈敓鎴� 閫�鏂欏崟鐨� 鏉℃暟
+ ds = oCN.RunProcReturn($@"select count(*) 鏈敓鎴� from JIT_CallGoodsBackRequestBillMain as a
+ inner join JIT_CallGoodsBackRequestBillSub as b on a.HInterID=b.HInterID
+ where a.HISCheck =0 and a.HOrgID={sWhere}
+ and a.HMaker = '{user}'
+ union all
+ select count(*) 鏈敓鎴� from JIT_CallGoodsBillMain a
+ join JIT_CallGoodsBillSub b on a.HInterID=b.HInterID
+ where b.HPSQty=0 and a.HOrgID={sWhere}
+ and a.HMaker = '{user}'", "JIT_CallGoodsBackRequestBillMain");
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = ds.Tables[0];
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+ #region 鐢熶骇鍙枡骞冲彴 閰嶅鍙枡鏌ヨ
+
+ [Route("Sc_ComplementGoodBill/JIT_ComplementGoodPT")]
+ [HttpGet]
+ public object JIT_ComplementGoodPT(string sWhere,string user)
+ {
+ try
+ {
+ ds = oCN.RunProcReturn("exec h_p_JIT_ComplementGoodPT " + sWhere, "h_p_JIT_ComplementGoodPT");
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = ds.Tables[0];
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+ #region 鐢熶骇鍙枡骞冲彴 閰嶅鍙枡鏂板
+ [Route("Sc_ComplementGoodBill/InsertCallGoodsBill_PTJL")]
+ [HttpPost]
+ public object InsertCallGoodsBill_PTJL([FromBody] JObject msg)
+ {
+ var _value = msg["msg"].ToString();
+ string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+ string msg2 = sArray[0].ToString();
+ string user = sArray[1].ToString();
+ omodel.HPRDORGID = long.Parse(sArray[2].ToString());
+
+ try
+ {
+ if (!DBUtility.ClsPub.Security_Log("Cj_CallGoodsBill_Edit", 1, false, user))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏃犱繚瀛樻潈闄�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ msg2 = msg2.Replace("\\", "");
+ msg2 = msg2.Replace("\n", "");
+
+ List<CallGoodsBill> listCa = new List<CallGoodsBill>();
+ //鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎
+ listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
+
+ var flag = false;
+ var txt = "";
+
+ for (int i = 0; i < listCa.Count; i++)
+ {
+ if (listCa[i].閰嶅鏁伴噺 <= 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i + 1}琛岄厤濂楁暟閲忓皬浜�0锛屾棤娉曞彨鏂�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ ds = oCN.RunProcReturn("select * from h_v_JIT_WarehouseList where 浠撳簱ID=" + listCa[i].璋冨嚭浠撳簱id + " and 鐗╂枡缂栫爜 = '" + listCa[i].鐗╂枡浠g爜 + "' and 搴撳瓨缁勭粐=" + listCa[i].HOutOrgID, "h_v_JIT_WarehouseList");
+
+ var HSCWHIDCount = double.Parse(ds.Tables[0].Rows[0]["璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺"].ToString());
+
+ if (HSCWHIDCount == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i + 1}琛屽簱瀛樻暟閲忎负0,鏃犳硶鍙枡!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].閰嶅鏁伴噺 > HSCWHIDCount)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i+1}琛屽簱瀛樻暟閲忓皬浜庡彨鏂欐暟閲�,鏃犳硶鍙枡!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].璋冨叆浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i + 1}琛岃閫夋嫨璋冨叆浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].璋冨嚭浠撳簱id == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i + 1}琛岃閫夋嫨璋冨嚭浠撳簱!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (listCa[i].璋冨嚭浠撳簱id == listCa[i].璋冨叆浠撳簱id)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i + 1}琛岃皟鍑轰粨搴撳拰璋冨叆浠撳簱涓嶈兘涓�鏍�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ var Hqty = 0.0;
+ var TuiHqty = 0.0;
+ //褰撳墠鍗曟嵁宸插彨鏂� 鍜� 宸查��鏂欐暟閲�
+ ds = oCN.RunProcReturn($@"
+ select isnull(a.HQty,0) 宸插彨鏂欐暟閲�,isnull(b.HQty,0) 宸查��鏂欑敵璇锋暟閲� from (
+ select sum(b.HQty) HQty,c.HNumber ,b.HSourceBillNo
+ from JIT_CallGoodsBillMain a
+ join JIT_CallGoodsBillSub b on a.HInterID=b.HInterID
+ left join Gy_Material c on b.HMaterID=c.HItemID
+ where b.HSourceBillNo='{listCa[i].HSourceBillNo}'
+ group by c.HNumber,b.HSourceBillNo
+ ) a
+ left join (
+ select sum(b.HQty) HQty,c.HNumber,b.HSourceBillNo
+ from JIT_CallGoodsBackRequestBillMain a
+ inner join JIT_CallGoodsBackRequestBillSub b on a.HInterID=b.HInterID
+ left join Gy_Material c on b.HMaterID=c.HItemID
+ where b.HSourceBillNo='{listCa[i].HSourceBillNo}'
+ group by c.HNumber,b.HSourceBillNo
+ ) b on a.HNumber=b.HNumber and a.HSourceBillNo=b.HSourceBillNo where a.HNumber='{listCa[i].鐗╂枡浠g爜}'", "JIT_CallGoodsBillMain");
+
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ Hqty = double.Parse(ds.Tables[0].Rows[0]["宸插彨鏂欐暟閲�"].ToString());
+ TuiHqty = double.Parse(ds.Tables[0].Rows[0]["宸查��鏂欑敵璇锋暟閲�"].ToString());
+ }
+
+ if (listCa[i].閰嶅鏁伴噺 > listCa[i].璁″垝鍙戞枡鏁伴噺)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i + 1}琛屽彨鏂欐暟閲忓ぇ浜庤鍒掑彂鏂欐暟閲�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if ((listCa[i].閰嶅鏁伴噺 + Hqty - TuiHqty) > listCa[i].璁″垝鍙戞枡鏁伴噺)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊i + 1}琛屽彨鏂欐�绘暟閲忓ぇ浜庤鍒掑彂鏂欐暟閲�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+
+ var txtHBillNo = DBUtility.ClsPub.CreateBillCode_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿
+ omodel.HInterID = DBUtility.ClsPub.CreateBillID_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo);
+ omodel.HYear = DateTime.Now.Year;
+ omodel.HPeriod = DateTime.Now.Month;
+ //鍥哄畾璧嬪��=================================
+ omodel.HBillNo = txtHBillNo.Trim(); //鍦ㄨ祴鍊肩被鍓嶅氨澶勭悊濂藉瓧绗︿覆鍜屾暟瀛�
+ omodel.HDate = DateTime.Now;
+ omodel.HMaker = user;
+ omodel.HMakeDate = DateTime.Today.ToString();
+ omodel.HUpDater = "";
+ omodel.HUpDateDate = "";
+ omodel.HCloseType = false;
+ //鏄庣粏绫昏祴鍊�
+
+ //鍥哄畾璧嬪��========================================
+ oSub.HEntryID = i + 1;
+ oSub.HSourceInterID = listCa[i].HSouceInterID;
+ oSub.HSourceEntryID = listCa[i].HSourceEntryID;
+ oSub.HSourceBillType = "88";
+ oSub.HSourceBillNo = listCa[i].HSourceBillNo;
+ oSub.HQty = double.Parse(listCa[i].閰嶅鏁伴噺.ToString());
+
+ oSub.HMaterID = listCa[i].HMaterialID;
+ oSub.HMaterNumber = listCa[i].HMaterialNumberCol;
+ oSub.HModel = listCa[i].HMaterialModelCol;
+ 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;
+ oSub.HICMOBillNo = listCa[i].HICMOBillNo;
+ oSub.HICMOInterID = listCa[i].HICMOInterID;
+ oSub.HICMOEntryID = listCa[i].HICMOEntryID;
+ oSub.HDeptID = listCa[i].HDeptID;
+ oSub.HPlanQty = listCa[i].璁″垝鍙戞枡鏁伴噺;
+ oSub.HSeOrderNo = listCa[i].閿�鍞鍗曞彿;
+ oSub.HBPlanDate = listCa[i].璁″垝寮�宸ユ棩鏈�;
+
+
+ flag = AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+
+ if (flag == false)
+ {
+ txt = txt + DBUtility.ClsPub.isStrNull(i + 1) + "銆�";
+ }
+
+ }
+ if (txt != "")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = $"绗瑊txt}琛屽彨鏂欏け璐ワ紝閲嶆柊鍙枡";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ else
+ {
+ if (flag == true)
+ {
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鍙枡鎴愬姛!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = null;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
+
+ #endregion
}
}
\ No newline at end of file
--
Gitblit v1.9.1