From 4a31971e2b5cb281a83d37cbd673bfc8826f5b7c Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期二, 06 九月 2022 17:46:35 +0800
Subject: [PATCH] 生产汇报入库 同步金蝶bug修复
---
WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs | 184 +++++++++++++++++++++++++++++++++------------
1 files changed, 134 insertions(+), 50 deletions(-)
diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
index 453acf8..8b4ad48 100644
--- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
@@ -68,7 +68,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}'," +
+ 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.ps},{com.Organization},'{com.user}' ", "h_p_JIT_CallGoodsPlatForm_Query");
@@ -99,6 +99,7 @@
public long HSourceEntryID = 0;//HSourceEntryIDCol
public int? 鍙枡鏁伴噺 = 0;//HBHGQtyCol
public int? 宸插彨鏂欐暟閲� = 0;//HBHGQtyCol
+ public int? 宸查厤閫佹暟閲� = 0;//HBHGQtyCol
public double? 閫�鏂欐暟閲� = 0;//閫�鏂欐暟閲�
public long HSTOCKID = 0;//HSTOCKID
public string 閫�鏂欏師鍥� { get; set; }//閫�鏂欏師鍥�
@@ -109,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
@@ -118,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
-
}
//涓存椂琛� 鍙枡瀛愯〃
@@ -138,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;
@@ -193,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);//鑾峰緱涓�涓柊鐨勫崟鎹彿
@@ -217,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;
@@ -313,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);
//涓昏〃
@@ -384,11 +415,41 @@
{
if (listCa[i].閫�鏂欐暟閲� > 0)
{
- if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸插彨鏂欐暟閲�)
+ if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
- objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡鍙枡鏁伴噺!";
+ 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;
+ }
+
+ 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;
}
@@ -438,14 +499,13 @@
{
try
{
-
- 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;
- 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);
+ 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 = 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);
oCN.BeginTran();
//鎻掑叆瀛愯〃
@@ -462,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();
@@ -484,12 +544,12 @@
var _value = msg["msg"].ToString();
string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
- string user = sArray[1].ToString();
+ DBUtility.ClsPub.CurUserName = sArray[1].ToString();
string HOrgID = sArray[2].ToString();
try
{
- if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, user))
+ if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, DBUtility.ClsPub.CurUserName))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
@@ -508,17 +568,29 @@
int j = 0;
for (int i = 0; i < listCa.Count; i++)
{
- if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸插彨鏂欐暟閲�)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡鍙枡鏁伴噺!";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
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], "666602", " 浣欓噺閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
j = 1;
}
@@ -569,12 +641,12 @@
var _value = msg["msg"].ToString();
string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
- string user = sArray[1].ToString();
+ DBUtility.ClsPub.CurUserName = sArray[1].ToString();
string HOrgID = sArray[2].ToString();
try
{
- if (!DBUtility.ClsPub.Security_Log("JIT_BF_ComplementGoods_Edit", 1, false, user))
+ if (!DBUtility.ClsPub.Security_Log("JIT_BF_ComplementGoods_Edit", 1, false, DBUtility.ClsPub.CurUserName))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
@@ -595,11 +667,23 @@
{
if (listCa[i].閫�鏂欐暟閲� > 0)
{
- if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸插彨鏂欐暟閲�)
+ if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
- objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡鍙枡鏁伴噺!";
+ 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;
}
@@ -814,7 +898,7 @@
msg2 = msg2.Replace("\\", "");
msg2 = msg2.Replace("\n", "");
- ds = oCN.RunProcReturn("select * from JIT_CallGoodsBackBillMain ", "JIT_CallGoodsBackBillMain ");
+ ds = oCN.RunProcReturn("select * from JIT_CallGoodsBackRequestBillMain where HISCheck=0 ", "JIT_CallGoodsBackRequestBillMain ");
if (ds.Tables[0].Rows.Count > 0)
{
--
Gitblit v1.9.1