From 4e8fffff87e70a9847d65ea4216cf4f4825854c1 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期二, 28 十月 2025 08:45:00 +0800
Subject: [PATCH] 生产订单推检验单,自动携带出质检方案
---
DAL/销售管理/ClsXs_SeOrderBill.cs | 137 +++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 129 insertions(+), 8 deletions(-)
diff --git "a/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs" "b/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs"
index 596454a..b5b93fe 100644
--- "a/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs"
+++ "b/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs"
@@ -79,7 +79,8 @@
oCn.BeginTran();
string mainSql = "UpDate Xs_SeOrderBillMain set " +
- " HBillNo='" + omodel.HBillNo + "'" + //鍥哄畾璧嬪��===============
+ " HBillSubType='" + omodel.HBillSubType + "'" +
+ ",HBillNo='" + omodel.HBillNo + "'" + //鍥哄畾璧嬪��===============
",HDate='" + omodel.HDate + "'" +
",HYear='" + omodel.HYear.ToString() + "'" +
",HPeriod='" + omodel.HPeriod.ToString() + "'" +
@@ -102,7 +103,10 @@
",HPayCusID=" + omodel.HPayCusID +
",HExplanation='" + omodel.HExplanation + "'" +
",HLinkMan='" + omodel.HLinkMan + "'" +
+ ",HWHID='" + omodel.HWHID + "'" +
+ ",HProjectID='" + omodel.HProjectID + "'" +
",HLinkPhone='" + omodel.HLinkPhone + "'" +
+ ",HProductType='" + omodel.HProductType + "'" +
" where HInterID=" + lngBillKey.ToString();
oCn.RunProc(mainSql);
@@ -129,9 +133,9 @@
// ") ");
string subSql = "Insert into Xs_SeOrderBillSub" +
- "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HMoney" +
+ "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationQty_SellOutCheck,HRelationMoney_SellOutCheck,HRelationQty_ICMO,HRelationQty_SellBack,HRelationQty_SellBackCheck,HRelationMoney,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HMoney" +
",HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney,HlineTotal,HlineTotalBB,HDate,HOutStockQty,HInvoiceQty,HRemark,HOrderLevID" +
- ",HCusMaterNumber,HCusModel,HCusMaterName,HisStockGoods) " +
+ ",HCusMaterNumber,HCusModel,HCusMaterName,HisStockGoods,HWHID,HRemark_TL,HRemark_SJG) " +
"values(" +
"" + omodel.HInterID +
"," + oSub.HEntryID +
@@ -140,6 +144,11 @@
",'" + (oSub.HSourceBillNo == null ? "" : oSub.HSourceBillNo) +
"','" + (oSub.HSourceBillType == null ? "" : oSub.HSourceBillType) +
"'," + oSub.HRelationQty +
+ "," + oSub.HRelationQty_SellOutCheck +
+ "," + oSub.HRelationMoney_SellOutCheck +
+ "," + oSub.HRelationQty_ICMO +
+ "," + oSub.HRelationQty_SellBack +
+ "," + oSub.HRelationQty_SellBackCheck +
"," + oSub.HRelationMoney +
"," + oSub.HMaterID +
"," + oSub.HUnitID +
@@ -162,6 +171,9 @@
"','" + oSub.HCusModel +
"','" + oSub.HCusMaterName +
"'," + (oSub.HisStockGoods?1:0) +
+ ",'" + oSub.HWhID + "'" +
+ ",'" + oSub.HRemark_TL + "'" +
+ ",'" + oSub.HRemark_SJG + "'" +
")";
oCn.RunProc(subSql);
}
@@ -272,12 +284,12 @@
string mainSql = "Insert Into Xs_SeOrderBillMain" +
"(HYear,HPeriod,HBillType,HBillSubType,HBillStatus,HExplanation" +
",HInterID,HBillNo,HDate,HInnerBillNo,HAddress,HDeptID,HCusID,HEmpID,HCurID,HExRate,HEarnestRate,HManagerID,HSellSID,HSSID,HSSDate,HPayCusID,HRemark,HOrgID,HMaker,HMakeDate,HLinkMan,HLinkPhone" +
- ",HERPInterID,HERPBillType,HSALEORGID,HSALEGROUPID,HRECEIVEID,HSETTLEID,HCHARGEID,HHEADLOCID,HRECCONTACTID,HCORRESPONDORGID,HBUSINESSTYPE) " +
+ ",HERPInterID,HERPBillType,HSALEORGID,HSALEGROUPID,HRECEIVEID,HSETTLEID,HCHARGEID,HHEADLOCID,HRECCONTACTID,HCORRESPONDORGID,HBUSINESSTYPE,HProjectID,HWHID,HProductType) " +
"values(" +
"" + omodel.HYear +
"," + omodel.HPeriod +
",'" + this.BillType +
- "','" + this.HBillSubType +
+ "','" + omodel.HBillSubType +
"'," + omodel.HBillStatus +
",'" + omodel.HExplanation +
@@ -316,6 +328,10 @@
"," + omodel.HRECCONTACTID +
"," + omodel.HCORRESPONDORGID +
",'" + omodel.HBUSINESSTYPE +
+
+ "','" + omodel.HProjectID +
+ "','" + omodel.HWHID +
+ "','" + omodel.HProductType +
"')";
oCn.RunProc(mainSql);
@@ -336,9 +352,9 @@
// "," + oSub.HTaxPrice.ToString() + "," + oSub.HDiscountRate.ToString() + "," + oSub.HRelTaxPrice.ToString() + "," + oSub.HOutStockQty.ToString() + "," + oSub.HInvoiceQty.ToString() +
// ") ");
string subSql = "Insert into Xs_SeOrderBillSub" +
- "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HMoney" +
+ "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationQty_SellOutCheck,HRelationMoney_SellOutCheck,HRelationQty_ICMO,HRelationQty_SellBack,HRelationQty_SellBackCheck,HRelationMoney,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HMoney" +
",HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney,HlineTotal,HlineTotalBB,HDate,HOutStockQty,HInvoiceQty,HRemark,HOrderLevID" +
- ",HCusMaterNumber,HCusModel,HCusMaterName,HisStockGoods) " +
+ ",HCusMaterNumber,HCusModel,HCusMaterName,HisStockGoods,HWHID,HRemark_TL,HRemark_SJG) " +
"values(" +
"" + omodel.HInterID +
"," + oSub.HEntryID +
@@ -347,6 +363,11 @@
",'" + (oSub.HSourceBillNo==null?"":oSub.HSourceBillNo) +
"','" + (oSub.HSourceBillType==null?"":oSub.HSourceBillType) +
"'," + oSub.HRelationQty +
+ "," + oSub.HRelationQty_SellOutCheck +
+ "," + oSub.HRelationMoney_SellOutCheck +
+ "," + oSub.HRelationQty_ICMO +
+ "," + oSub.HRelationQty_SellBack +
+ "," + oSub.HRelationQty_SellBackCheck +
"," + oSub.HRelationMoney +
"," + oSub.HMaterID +
"," + oSub.HUnitID +
@@ -369,6 +390,9 @@
"','" + oSub.HCusModel +
"','" + oSub.HCusMaterName +
"'," + (oSub.HisStockGoods?1:0) +
+ ",'" + oSub.HWhID + "'" +
+ ",'" + oSub.HRemark_TL + "'" +
+ ",'" + oSub.HRemark_SJG + "'" +
")";
oCn.RunProc(subSql);
}
@@ -474,6 +498,7 @@
omodel.HLinkMan = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HLinkMan"]);
omodel.HLinkPhone = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HLinkPhone"]);
+ omodel.HProductType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HProductType"]);
//
//寰幆
@@ -497,6 +522,12 @@
oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
//===================================================
+ oSub.HRelationQty_SellOutCheck = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty_SellOutCheck"]);
+ oSub.HRelationMoney_SellOutCheck = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney_SellOutCheck"]);
+ oSub.HRelationQty_ICMO = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty_ICMO"]);
+ oSub.HRelationQty_SellBack = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty_SellBack"]);
+ oSub.HRelationQty_SellBackCheck = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty_SellBackCheck"]);
+ //===================================================
oSub.HMaterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HMaterID"]);
oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HUnitID"]);
oSub.HQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HQty"]);
@@ -513,6 +544,9 @@
oSub.HOutStockQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HOutStockQty"]);
oSub.HInvoiceQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HInvoiceQty"]);
oSub.HisStockGoods = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HisStockGoods"]) == 1 ? true : false;
+
+ oSub.HRemark_TL = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HRemark_TL"]);
+ oSub.HRemark_SJG = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HRemark_SJG"]);
DetailColl.Add(oSub);
}
@@ -549,7 +583,94 @@
oCn.RunProc("update Xs_SeOrderBillMain set HPrintQty=HPrintQty + 1 Where HInterID= " + sInterID.ToString());
}
-
+ //鍙戣捣瀹℃壒
+ public bool startCheckFlow(Int64 lngBillKey,Int64 HCheckFlowID_select, ref string sReturn)
+ {
+ try
+ {
+ string HBillNo = ""; //鍗曟嵁鍙�
+ string HCheckFlowID = ""; //瀹℃壒娴両D
+ string HCheckItemNowID = ""; //褰撳墠瀹℃牳椤圭洰ID
+ string HCheckItemNextID = ""; //寰呭鏍搁」鐩甀D
+
+ //鍒ゆ柇鏄惁宸茬粡鍙戣捣瀹℃壒
+ string sql0 = "select * from Xt_BillCheckFlowStatus where HBillInterID = " + lngBillKey + " and HBillTypeID = '" + this.BillType + "'";
+ DataSet ds0 = oCn.RunProcReturn(sql0, "Xt_BillCheckFlowStatus");
+ if (ds0 != null && ds0.Tables[0].Rows.Count > 0)
+ {
+ sReturn = "鍗曟嵁宸插彂璧峰鎵癸紝涓嶅彲閲嶅瀹℃壒锛�";
+ return false;
+ }
+
+ //鑾峰彇鍗曟嵁鏁版嵁
+ string sql = "select * from " + this.MvarItemKey + " where HInterID = " + lngBillKey;
+ DataSet ds = oCn.RunProcReturn(sql, this.MvarItemKey);
+ if (ds == null || ds.Tables[0].Rows.Count == 0)
+ {
+ sReturn = "鍗曟嵁涓嶅瓨鍦紒";
+ return false;
+ }
+ HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
+
+ //鑾峰彇鍗曟嵁绫诲瀷瀵瑰簲鐨勯粯璁ゅ鎵规祦
+ string sql1 = "select b.HInterID,b.HCheckItemID from Xt_CheckFlowMain as a " +
+ "inner join Xt_CheckFlowSub as b on a.HInterID = b.HInterID " +
+ "where a.HBillTypeID = '" + this.BillType + "' " +
+ "and a.HInterID = " + HCheckFlowID_select + " " +
+ "order by b.HFlowNo asc";
+ DataSet ds1 = oCn.RunProcReturn(sql1, "Xt_CheckFlowMain");
+ if (ds1 == null || ds1.Tables[0].Rows.Count == 0)
+ {
+ sReturn = "榛樿瀹℃壒娴佷笉瀛樺湪锛�";
+ return false;
+ }
+
+ HCheckFlowID = ds1.Tables[0].Rows[0]["HInterID"].ToString();
+ HCheckItemNowID = ds1.Tables[0].Rows[0]["HCheckItemID"].ToString();
+ if (ds1.Tables[0].Rows.Count >= 2)
+ {
+ HCheckItemNextID = ds1.Tables[0].Rows[1]["HCheckItemID"].ToString();
+ }
+ else
+ {
+ HCheckItemNextID = "0";
+ }
+
+ oCn.BeginTran();
+ //澧炲姞 鍗曟嵁瀹℃壒鐘舵�佽〃 鏁版嵁
+ for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
+ {
+ string sql2 = "insert into Xt_BillCheckFlowStatus" +
+ "(HBillTypeID,HBillInterID,HBillNo,HCheckFlowID,HCheckItemID,HChecker,HCheckDate,HCheckNote) " +
+ "values(" +
+ "'" + this.BillType + "'," +
+ "" + lngBillKey + "," +
+ "'" + HBillNo + "'," +
+ "" + ds1.Tables[0].Rows[i]["HInterID"].ToString() + "," +
+ "" + ds1.Tables[0].Rows[i]["HCheckItemID"].ToString() + "," +
+ "" + "''" + "," +
+ "" + "''" + "," +
+ "" + "''" + "" +
+ ")";
+
+ oCn.RunProc(sql2);
+ }
+
+ //鏇存柊涓昏〃 瀹℃壒娴� 鏁版嵁
+ string sql3 = "update " + this.MvarItemKey + " set HCheckFlowID = " + HCheckFlowID + ",HCheckItemNowID=" + HCheckItemNowID + ",HCheckItemNextID=" + HCheckItemNextID + " where HInterID = " + lngBillKey;
+ oCn.RunProc(sql3);
+
+
+ oCn.Commit();
+
+ return true;
+ }
+ catch(Exception e)
+ {
+ sReturn += e.Message;
+ return false;
+ }
+ }
}
}
--
Gitblit v1.9.1