From 8e6b791ea1981d9e4386b99dcbe70a96bfd21ae2 Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期二, 10 九月 2024 10:40:44 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API
---
WebAPI/DLL/ClsSc_MESBeginWorkBill.cs | 211 ++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 201 insertions(+), 10 deletions(-)
diff --git a/WebAPI/DLL/ClsSc_MESBeginWorkBill.cs b/WebAPI/DLL/ClsSc_MESBeginWorkBill.cs
index 3069ba0..982f9d3 100644
--- a/WebAPI/DLL/ClsSc_MESBeginWorkBill.cs
+++ b/WebAPI/DLL/ClsSc_MESBeginWorkBill.cs
@@ -9,12 +9,13 @@
{
public Models.ClsSc_MESBeginWorkBillMain omodel = new Models.ClsSc_MESBeginWorkBillMain();
public List<Models.ClsSc_MESBeginWorkBillSub> DetailColl = new List<Models.ClsSc_MESBeginWorkBillSub>();
+ public List<Models.ClsSc_MESBeginWorkBillSub_RelationBill> DetailCol2 = new List<Models.ClsSc_MESBeginWorkBillSub_RelationBill>();
//public List<Model.ClsSc_MESBeginWorkBillSub_Item> DetailColl1 = new List<Model.ClsSc_MESBeginWorkBillSub_Item>();
public ClsSc_MESBeginWorkBill()
{
base.MvarItemKeySub = "Sc_MESBeginWorkBillSub";
- base.MvarItemKeySub2 = "";
+ base.MvarItemKeySub2 = "Sc_MESBeginWorkBillSub_RelationBill";
base.MvarItemKeySub3 = "";
base.MvarItemKeySub4 = "";
base.MvarItemKey="Sc_MESBeginWorkBillMain";
@@ -30,15 +31,75 @@
{
DetailColl = null;
}
-
+
#endregion 鑷畾涔夋柟娉�
+
+ //淇濆瓨鍓嶆帶鍒�
+ public bool BeforeSave(Int64 HInterID, Int64 HICMOInterID, Int64 HICMOEntryID, string HICMOBillNo, Int64 OperationType, ref string sReturn)
+ {
+ try
+ {
+ DataSet Ds = oCn.RunProcReturn("Exec h_p_Sc_MESBeginWorkBill_BeforeSaveCtrl " + HInterID.ToString() + "," + HICMOInterID.ToString() + "," + HICMOEntryID.ToString() + ",'" + HICMOBillNo + "'," + OperationType.ToString(), "h_p_Sc_MESBeginWorkBill_BeforeSaveCtrl");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sReturn = "淇濆瓨鍓嶅垽鏂け璐ワ紒";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HBack"]) == 1)
+ {
+ sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+ return true;
+ }
+ catch (Exception e)
+ {
+ throw (e);
+ }
+ }
+
+ //淇濆瓨鍚庢帶鍒�
+ public bool AfterSave(Int64 HInterID, Int64 HICMOInterID, Int64 HICMOEntryID, string HICMOBillNo, Int64 OperationType, ref string sReturn)
+ {
+ try
+ {
+ DataSet Ds = oCn.RunProcReturn("Exec h_p_Sc_MESBeginWorkBill_AfterSaveCtrl " + HInterID.ToString() + "," + HICMOInterID.ToString() + "," + HICMOEntryID.ToString() + ",'" + HICMOBillNo + "'," + OperationType.ToString(), "h_p_Sc_MESBeginWorkBill_AfterSaveCtrl");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sReturn = "淇濆瓨鍚庡垽鏂け璐ワ紒";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HBack"]) == 1)
+ {
+ sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+ return true;
+ }
+ catch (Exception e)
+ {
+ throw (e);
+ }
+ }
+
//淇敼鍗曟嵁
public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
{
try
{
- //
oCn.BeginTran();
+ //淇濆瓨鍓嶆帶鍒�
+ if (!BeforeSave(lngBillKey, omodel.HICMOInterID, omodel.HICMOEntryID, omodel.HICMOBillNo, 2, ref sReturn))
+ {
+ oCn.RollBack();
+ return false;
+ }
//鏇存柊涓昏〃
oCn.RunProc("UpDate Sc_MESBeginWorkBillMain set " +
" HBillNo='" + omodel.HBillNo + "'" + //鍥哄畾璧嬪��===============
@@ -92,8 +153,41 @@
DeleteRelation(ref sReturn, lngBillKey);
//鍒犻櫎瀛愯〃
DeleteBillSub(lngBillKey);
+ DeleteBillSub2(lngBillKey);
//鎻掑叆瀛愯〃
omodel.HInterID = lngBillKey;
+
+ //鎻掑叆瀛愯〃_鍓骇璁″垝
+ foreach (Models.ClsSc_MESBeginWorkBillSub_RelationBill oSub in DetailCol2)
+ {
+ string subSql = "insert into Sc_MESBeginWorkBillSub_RelationBill " +
+ "(HInterID, HEntryID,HBillNo_bak, HSourceInterID, HSourceEntryID, HSourceBillNo, HSourceBillType, HRemark, " +
+ "HRelationBillInterID, HRelationBillEntryID, HRelationBillNo, HRelationBillType, HICMOInterID, HICMOEntryID, HICMOBillNo, " +
+ "HProcExchInterID, HProcExchEntryID, HProcExchBillNo, HMaterID, HProcID) " +
+ "values(" +
+ "'" + omodel.HInterID.ToString() + "'," +
+ "'" + oSub.HEntryID.ToString() + "'," +
+ "'" + omodel.HBillNo + "'," +
+ "'" + oSub.HSourceInterID + "'," +
+ "'" + oSub.HSourceEntryID + "'," +
+ "'" + oSub.HSourceBillNo + "'," +
+ "'" + oSub.HSourceBillType + "'," +
+ "'" + oSub.HRemark + "'," +
+ "'" + oSub.HRelationBillInterID + "'," +
+ "'" + oSub.HRelationBillEntryID + "'," +
+ "'" + oSub.HRelationBillNo + "'," +
+ "'" + oSub.HRelationBillType + "'," +
+ "'" + oSub.HICMOInterID + "'," +
+ "'" + oSub.HICMOEntryID + "'," +
+ "'" + oSub.HICMOBillNo + "'," +
+ "'" + oSub.HProcExchInterID + "'," +
+ "'" + oSub.HProcExchEntryID + "'," +
+ "'" + oSub.HProcExchBillNo + "'," +
+ "'" + oSub.HMaterID + "'," +
+ "'" + oSub.HProcID + "')";
+ oCn.RunProc(subSql);
+ }
+
foreach (Models.ClsSc_MESBeginWorkBillSub oSub in DetailColl)
{
//oCn.RunProc("Insert into Sc_MESBeginWorkBillSub " +
@@ -136,7 +230,14 @@
// return false;
// }
//}
- sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+
+ //淇濆瓨鍚庢帶鍒�
+ if (!AfterSave(lngBillKey, omodel.HICMOInterID, omodel.HICMOEntryID, omodel.HICMOBillNo, 2, ref sReturn))
+ {
+ oCn.RollBack();
+ return false;
+ }
+ sReturn = "鍗曟嵁鍙凤細" + omodel.HBillNo + " 淇敼鎴愬姛锛�";
oCn.Commit();
return true;
}
@@ -152,12 +253,18 @@
{
try
{
+ DataSet ds;
//寰楀埌mainid
omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
//鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
oCn.BeginTran();
+ //淇濆瓨鍓嶆帶鍒�
+ if (!BeforeSave(omodel.HInterID, omodel.HICMOInterID, omodel.HICMOEntryID, omodel.HICMOBillNo, 1, ref sReturn))
+ {
+ return false;
+ }
+
//涓昏〃
-
oCn.RunProc("Insert Into Sc_MESBeginWorkBillMain " +
"(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
",HYear,HPeriod,HRemark" +
@@ -165,7 +272,7 @@
",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HBeginWorkTime,HSourceID" +
",HSourceInterID_Main,HSourceEntryID_Main,HSourceBillNo_Main,HSourceBillType_Main" +
",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
- ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" +
+ ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate,HRunStatus,HSourceBeginQty" +
") " +
" values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",getdate(),'" + omodel.HMaker+ "',getdate()" +
"," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'" +
@@ -173,11 +280,43 @@
",'" + omodel.HProcExchBillNo + "'," + omodel.HMaterID.ToString() + "," + omodel.HProcID.ToString() + "," + omodel.HICMOQty.ToString() + "," + omodel.HPlanQty.ToString() + ",getdate()," + omodel.HSourceID.ToString() +
",'" + omodel.HMainSourceInterID.ToString() + "'," + omodel.HMainSourceEntryID.ToString() + ",'" + omodel.HMainSourceBillNo.ToString() + "','" + omodel.HMainSourceBillType.ToString() + "'" +
",'" + omodel.HMainSourceInterID.ToString() + "'," + omodel.HMainSourceEntryID.ToString() + ",'" + omodel.HMainSourceBillNo.ToString() + "','" + omodel.HMainSourceBillType.ToString() + "'" +
- "," + omodel.HGroupID.ToString() + "," + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + ",'" + omodel.HBarCode + "','" + omodel.HAddr + "','" + omodel.HBarCodeMaker + "',getdate()" +
+ "," + omodel.HGroupID.ToString() + "," + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + ",'" + omodel.HBarCode + "','" + omodel.HAddr + "','" + omodel.HBarCodeMaker + "',getdate(),'"+ omodel.HRunStatus + "','"+ omodel.HSourceBeginQty.ToString() + "'" +
") ");
+ //鎻掑叆瀛愯〃
+ foreach (Models.ClsSc_MESBeginWorkBillSub_RelationBill oSub in DetailCol2)
+ {
+ string subSql = "insert into Sc_MESBeginWorkBillSub_RelationBill " +
+ "(HInterID, HEntryID,HBillNo_bak, HSourceInterID, HSourceEntryID, HSourceBillNo, HSourceBillType, HRemark, " +
+ "HRelationBillInterID, HRelationBillEntryID, HRelationBillNo, HRelationBillType, HICMOInterID, HICMOEntryID, HICMOBillNo, " +
+ "HProcExchInterID, HProcExchEntryID, HProcExchBillNo, HMaterID, HProcID) " +
+ "values(" +
+ "'" + omodel.HInterID.ToString() + "'," +
+ "'" + oSub.HEntryID.ToString() + "'," +
+ "'" + omodel.HBillNo + "'," +
+ "'" + oSub.HSourceInterID + "'," +
+ "'" + oSub.HSourceEntryID + "'," +
+ "'" + oSub.HSourceBillNo + "'," +
+ "'" + oSub.HSourceBillType + "'," +
+ "'" + oSub.HRemark + "'," +
+ "'" + oSub.HRelationBillInterID + "'," +
+ "'" + oSub.HRelationBillEntryID + "'," +
+ "'" + oSub.HRelationBillNo + "'," +
+ "'" + oSub.HRelationBillType + "'," +
+ "'" + oSub.HICMOInterID + "'," +
+ "'" + oSub.HICMOEntryID + "'," +
+ "'" + oSub.HICMOBillNo + "'," +
+ "'" + oSub.HProcExchInterID + "'," +
+ "'" + oSub.HProcExchEntryID + "'," +
+ "'" + oSub.HProcExchBillNo + "'," +
+ "'" + oSub.HMaterID + "'," +
+ "'" + oSub.HProcID + "')";
+ oCn.RunProc(subSql);
+ }
+
+
//鍐嶆楠岃瘉 淇濆瓨鏄惁 鍚堢悊
- DataSet ds=oCn.RunProcReturn("exec h_p_JIT_MESBeginWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESBeginWorkBill_SaveCtrl");
+ ds = oCn.RunProcReturn("exec h_p_JIT_MESBeginWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESBeginWorkBill_SaveCtrl");
if (ds == null || ds.Tables[0].Rows.Count <= 0)
{
sReturn = "鏃犻獙璇佹暟鎹紒";
@@ -191,6 +330,40 @@
return false;
}
+ //鑾峰彇鏈�杩戠殑涓婃ā鍗� 鎶婂伐鍗曡窡妯″叿杩涜缁戝畾
+ ds = oCn.RunProcReturn(@"select HICMOInterID,HICMOEntryID,HSourceInterID,HSourceEntryID,HSourceID from Sc_ICMOBillStatus_Tmp where HInterID=" + omodel.HMainSourceInterID.ToString(), "Sc_ICMOBillStatus_Tmp");
+
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ string HICMOInterID = ds.Tables[0].Rows[0]["HICMOInterID"].ToString();
+ string HICMOEntryID = ds.Tables[0].Rows[0]["HICMOEntryID"].ToString();
+ string HSourceInterID = ds.Tables[0].Rows[0]["HSourceInterID"].ToString();
+ string HSourceEntryID = ds.Tables[0].Rows[0]["HSourceEntryID"].ToString();
+ string HSourceID = ds.Tables[0].Rows[0]["HSourceID"].ToString();
+
+ ds = oCn.RunProcReturn(@"select HMouldID from Sc_MouldUpperBillMain a
+ inner join Sc_MouldUpperBillSub b on a.HInterID = b.HInterID where HICMOInterID=" + HICMOInterID + " and HICMOEntryID=" + HICMOEntryID + " and HProcExchInterID=" + HSourceInterID + " and HProcExchEntryID=" + HSourceEntryID + " and HSourceID=" + HSourceID + " order by HMakeDate desc", "Sc_MouldUpperBillMain");
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ oCn.RunProc("update Sc_ICMOBillStatus_Tmp set HMouldID= " + ds.Tables[0].Rows[0]["HMouldID"].ToString() + " where HInterID=" + omodel.HMainSourceInterID.ToString());
+ }
+ else
+ {
+ ds = oCn.RunProcReturn(@"select HMouldID from Sc_MouldUpperBillMain a
+ inner join Sc_MouldUpperBillSub b on a.HInterID = b.HInterID where HSourceID=" + HSourceID + " order by HMakeDate desc", "Sc_MouldUpperBillMain");
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ oCn.RunProc("update Sc_ICMOBillStatus_Tmp set HMouldID= " + ds.Tables[0].Rows[0]["HMouldID"].ToString() + " where HInterID=" + omodel.HMainSourceInterID.ToString());
+ }
+ }
+ }
+
+ //淇濆瓨鍚庢帶鍒�
+ if (!AfterSave(omodel.HInterID, omodel.HICMOInterID, omodel.HICMOEntryID, omodel.HICMOBillNo, 1, ref sReturn))
+ {
+ oCn.RollBack();
+ return false;
+ }
sReturn = omodel.HInterID.ToString();
oCn.Commit();
@@ -399,7 +572,7 @@
}
//鍒犻櫎鍗曟嵁
- public override bool DeleteBill(Int64 lngBillKey, ref string sReturn)
+ public bool DeleteBill(Int64 lngBillKey, string HBillNo, string procName, string user, ref string sReturn)
{
try
{
@@ -425,6 +598,24 @@
//鍒犻櫎涓昏〃
oCn.RunProc("Delete From " + MvarItemKey + " where HInterID=" + lngBillKey.ToString());
+ //鍒犻櫎鍚庢帶鍒�==================================================================================
+ string sql2 = "exec " + procName + " " + lngBillKey + ",'" + HBillNo + "','" + user + "'";
+ ds = oCn.RunProcReturn(sql2, procName);
+ if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+ {
+
+ sReturn = "鍒犻櫎澶辫触!鍘熷洜:鍒犻櫎鍚庡垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+ oCn.RollBack();
+ return false;
+ }
+ if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+ {
+ sReturn = "鍒犻櫎澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
+ oCn.RollBack();
+ return false;
+ }
+ //==============================================================================================
+
sReturn = "鍒犻櫎鍗曟嵁鎴愬姛锛�";
oCn.Commit();
return true;
@@ -448,7 +639,7 @@
oCn.BeginTran();
oCn.RunProc(" Update " + MvarItemKey + " set HBillStatus='2',HChecker='" + HChecker + "',HCheckDate='" + HCheckDate + "' Where HInterID=" + lngBillKey.ToString());
//鏍规嵁寮�宸ュ崟鍐呯爜 璁剧疆 鐢熶骇鐘舵�佽〃 寮�宸ョ姸鎬�(鍏堟妸 鏈祫婧愬叏閮ㄥ伐鍗� 璁剧疆涓洪潪寮�宸ョ姸鎬侊紝鍐嶈缃湰鍗曞搴斿緱婧愬崟 涓哄紑宸ョ姸鎬�)
- oCn.RunProc("exec h_p_JIT_MESBeginWorkBill_SaveCtrl @HInterId=" + lngBillKey + ",@flag='寮�宸�'");
+ oCn.RunProc("exec h_p_JIT_MESBeginWorkBill_BeginWork @HInterId=" + lngBillKey + ",@flag='寮�宸�'");
oCn.Commit();
//鐢熸垚璋冩嫧鍗�
//寰楀埌璋冩嫧鍗� mainid 鍗曟嵁鍙�
--
Gitblit v1.9.1