From 0bb73d4cccd49e09c033ad0378da94f6ebbc280e Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期一, 09 二月 2026 08:58:21 +0800
Subject: [PATCH] 1
---
DAL/应收管理/ClsYS_ReceiveBill.cs | 233 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 211 insertions(+), 22 deletions(-)
diff --git "a/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveBill.cs" "b/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveBill.cs"
index a8bac17..beba459 100644
--- "a/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveBill.cs"
+++ "b/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveBill.cs"
@@ -31,25 +31,82 @@
{
DetailColl = null;
}
-
+
#endregion 鑷畾涔夋柟娉�
+
+
+ //鍒犻櫎鍏宠仈
+ public override void DeleteRelation(ref string sReturn, Int64 lngBillKey)
+ {
+ //搴旀敹鍗� 鍏宠仈鏁伴噺
+ try
+ {
+ if (DetailColl[0].HSourceBillType == "1426") //搴旀敹鍗�
+ {
+ oCn.RunProc("exec h_p_Xs_UpDateRelation_ReceiveToReceivableIn_Del " + lngBillKey.ToString());
+ }
+ else
+ {
+ }
+ }
+ catch (Exception e)
+ {
+ throw (e);
+ }
+ }
+ //鏂板鍏宠仈
+ public override void AddNewRelation(ref string sReturn, Int64 lngBillKey)
+ {
+ //搴旀敹鍗� 鍏宠仈鏁伴噺
+ try
+ {
+ if (DetailColl[0].HSourceBillType == "1426") //搴旀敹鍗�
+ {
+ oCn.RunProc("exec h_p_Xs_UpDateRelation_ReceiveToReceivableIn_Add " + lngBillKey.ToString());
+ }
+ else
+ {
+
+ }
+ }
+ catch (Exception e)
+ {
+ throw (e);
+ }
+ }
+
//淇敼鍗曟嵁
public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
{
try
{
+ //淇濆瓨鍓嶆帶鍒�=========================================
+ string HBillNote = "";
+ DataSet ds = oCn.RunProcReturn("Exec h_p_YS_ReceiveBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_YS_ReceiveBill_BeforeSaveCtrl");
+ if (ds == null)
+ {
+ sReturn = "淇濆瓨鍓嶅垽鏂け璐ワ紒";
+ return false;
+ }
+ if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
+ {
+ sReturn = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+ return false;
+ }
+ //=========================================================
+
//
oCn.BeginTran();
//鏇存柊涓昏〃
- oCn.RunProc("UpDate YS_ReceiveBillMain set " +
+ string mainSql = "UpDate YS_ReceiveBillMain set " +
" HBillNo='" + omodel.HBillNo + "'" + //鍥哄畾璧嬪��===============
",HDate='" + omodel.HDate + "'" +
",HYear='" + omodel.HYear.ToString() + "'" +
",HPeriod='" + omodel.HPeriod.ToString() + "'" +
",HRemark='" + omodel.HRemark + "'" +
- ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" +
+ ",HUpDater='" + omodel.HUpDater + "'" +
",HUpDateDate=getdate()" +
- //========================================
+ //========================================
",HAccDate='" + omodel.HAccDate + "'" +
",HCusID=" + omodel.HCusID.ToString() +
",HAccCusID=" + omodel.HAccCusID.ToString() +
@@ -58,6 +115,10 @@
",HExRate=" + omodel.HExRate.ToString() +
",HDeptID=" + omodel.HDeptID.ToString() +
",HEmpID=" + omodel.HEmpID.ToString() +
+ ",HManagerID=" + omodel.HManagerID +
+ ",HOrgID=" + omodel.HOrgID +
+ ",HGiftRate=" + omodel.HGiftRate +
+ ",HGiftMoney=" + omodel.HGiftMoney +
",HSumMoney=" + omodel.HSumMoney.ToString() +
",HBankID=" + omodel.HBankID.ToString() +
",HBankNo='" + omodel.HBankNo + "'" +
@@ -68,14 +129,20 @@
",HRemainMoney=" + omodel.HRemainMoney.ToString() +
",HCheckStatus=" + omodel.HCheckStatus.ToString() +
- ",HSSNum='" + omodel.HSSNum.ToString() +
+ ",HSSNum='" + omodel.HSSNum.ToString() + "'" +
",HRelSumMoney=" + omodel.HRelSumMoney.ToString() +
",HSumMoneyBB=" + omodel.HSumMoneyBB.ToString() +
",HRelSumMoneyBB=" + omodel.HRelSumMoneyBB.ToString() +
",HDiscountRate=" + omodel.HDiscountRate.ToString() +
- " where HInterID=" + lngBillKey.ToString());
- //鍒犻櫎鍏宠仈
- DeleteRelation(ref sReturn, lngBillKey);
+ " where HInterID=" + lngBillKey.ToString();
+
+
+ oCn.RunProc(mainSql);
+ if (DetailColl.Count != 0)
+ {
+ //鍒犻櫎鍏宠仈
+ DeleteRelation(ref sReturn, lngBillKey);
+ }
//鍒犻櫎瀛愯〃
DeleteBillSub(lngBillKey);
//鎻掑叆瀛愯〃
@@ -94,12 +161,34 @@
+ omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "','" + oSub.HEntryCloseDate.ToShortDateString() + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" +
"," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
"," + oSub.HMaterID.ToString() + "," + oSub.HUnitID.ToString() + "," + oSub.HQty.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HMoney.ToString() +
- ",'" + oSub.HReceiveBillNo + "'," + oSub.HReceiveBillInterID.ToString() + "," + oSub.HReceiveBillEntryID.ToString() + "," + oSub.HSourceDate.ToString() + "," + oSub.HSourceMoney.ToString() +
+ ",'" + oSub.HReceiveBillNo + "'," + oSub.HReceiveBillInterID.ToString() + "," + oSub.HReceiveBillEntryID.ToString() + ",'" + oSub.HSourceDate.ToString() + "'," + oSub.HSourceMoney.ToString() +
"," + oSub.HSourceMoneyBB.ToString() + "," + oSub.HReadyCheckMoney.ToString() + "," + oSub.HUnCheckMoney.ToString() + "," + oSub.HCheckMoney.ToString() + "," + oSub.HCheckMoneyBB.ToString() + "," + oSub.HInovceExRate.ToString() + ",'" + oSub.HSeContractBillNo + "'" +
"," + oSub.HPOOrderInterID.ToString() + "," + oSub.HPOOrderEntryID.ToString() + ",'" + oSub.HPOOrderBillNo + "'," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'" +
"," + oSub.HPOContractInterID.ToString() + "," + oSub.HPOContractEntryID.ToString() + ",'" + oSub.HPOContractBillNo + "'," + oSub.HSeContractInterID.ToString() + "," + oSub.HSeContractEntryID.ToString() + ",'" + oSub.HSeContractBillNo + "'" +
") ");
}
+ if (DetailColl.Count != 0)
+ {
+ //鏇存柊璁㈠崟鍏宠仈鏁伴噺
+ AddNewRelation(ref sReturn, omodel.HInterID);
+ }
+ //=========================淇濆瓨鍚庢帶鍒�
+ DataSet ds2 = oCn.RunProcReturn("h_p_YS_ReceiveBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_YS_ReceiveBill_AfterSaveCtrl");
+ if (ds2 == null)
+ {
+ sReturn = "淇濆瓨鍚庢帶鍒跺垽鏂け璐ワ紒";
+ oCn.RollBack();
+ return false;
+ }
+ if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
+ {
+ sReturn = "淇濆瓨澶辫触2锛�" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
+ oCn.RollBack();
+ return false;
+ }
+ //============================
+
+
//
//foreach (Model.ClsYS_ReceiveBillSub oSub in DetailColl)
//{
@@ -129,29 +218,94 @@
try
{
//寰楀埌mainid
- omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+ //omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+
//鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
+ while (IsExistMainID(ref DBUtility.ClsPub.sExeReturnInfo, omodel.HInterID, Pub_Class.ClsPub.Enum_BillStatus.BillStatus_AddNew))
+ {
+ omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+ }
+
+ //淇濆瓨鍓嶆帶鍒�=========================================
+ string HBillNote = "";
+ DataSet ds = oCn.RunProcReturn("Exec h_p_YS_ReceiveBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_YS_ReceiveBill_BeforeSaveCtrl");
+ if (ds == null)
+ {
+ sReturn = "淇濆瓨鍓嶅垽鏂け璐ワ紒";
+ return false;
+ }
+ if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
+ {
+ sReturn = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+ return false;
+ }
+ //=========================================================
+
oCn.BeginTran();
//涓昏〃
- oCn.RunProc("Insert Into YS_ReceiveBillMain " +
+ string mainSql = "Insert Into YS_ReceiveBillMain " +
"(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
+ ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
",HAccDate,HCusID,HAccCusID,HSSID,HCurID,HExRate" +
- ",HDeptID,HEmpID,HSumMoney,HBankID,HBankNo,HExplanation" +
+ ",HDeptID,HEmpID,HManagerID,HOrgID,HGiftRate,HGiftMoney,HSumMoney,HBankID,HBankNo,HExplanation" +
",HSSNum,HDiscountRate,HRelSumMoney,HSumMoneyBB,HRelSumMoneyBB" +
",HInnerBillNo,HCheckMoney,HCheckMoneyFor,HRemainMoney,HCheckStatus" +
") " +
- " values('" + this.BillType + "','" + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
- ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
- ",'" + omodel.HAccDate + "'," + omodel.HCusID.ToString() + "," + omodel.HAccCusID.ToString() + "," + omodel.HSSID.ToString() + "," + omodel.HCurID.ToString() + "," + omodel.HExRate.ToString() +
- ", " + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HSumMoney.ToString() + "," + omodel.HBankID.ToString() + ",'" + omodel.HBankNo + "','" + omodel.HExplanation + "'" +
- ",'" + omodel.HSSNum + "'," + omodel.HDiscountRate.ToString() + "," + omodel.HRelSumMoney.ToString() + "," + omodel.HSumMoneyBB.ToString() + "," + omodel.HRelSumMoneyBB.ToString() +
- ",'" + omodel.HInnerBillNo + "'," + omodel.HCheckMoney.ToString() + "," + omodel.HCheckMoneyFor.ToString() + "," + omodel.HRemainMoney.ToString() + "," + omodel.HCheckStatus.ToString() +
- ") ");
+ " values(" +
+ "'" + this.BillType + "'" +
+ ",'" + this.HBillSubType + "'" +
+ "," + omodel.HInterID.ToString() + "" +
+ ",'" + omodel.HBillNo + "'" +
+ ",'" + omodel.HDate + "'" +
+ ", " + omodel.HYear.ToString() + "" +
+ "," + omodel.HPeriod.ToString() + "" +
+ ",'" + omodel.HRemark + "'" +
+ ",'" + omodel.HMaker + "'" +
+ ",getdate()" + "";
+
+ mainSql +=
+ "," + omodel.HMainSourceInterID + "";
+ mainSql +=
+ "," + omodel.HMainSourceEntryID + "";
+ mainSql +=
+ ",'" + (omodel.HMainSourceBillNo ==null?"":omodel.HMainSourceBillNo) + "'";
+ mainSql +=
+ ",'" + (omodel.HMainSourceBillType) + "'";
+
+ mainSql +=
+ ",'" + omodel.HAccDate + "'" +
+ "," + omodel.HCusID.ToString() + "" +
+ "," + omodel.HAccCusID.ToString() + "" +
+ "," + omodel.HSSID.ToString() + "" +
+ "," + omodel.HCurID.ToString() + "" +
+ "," + omodel.HExRate.ToString() +
+ ", " + omodel.HDeptID.ToString() + "" +
+ "," + omodel.HEmpID.ToString() + "" +
+ "," + omodel.HManagerID + "" +
+ "," + omodel.HOrgID + "" +
+ "," + omodel.HGiftRate + "" +
+ "," + omodel.HGiftMoney + "" +
+ "," + omodel.HSumMoney.ToString() + "" +
+ "," + omodel.HBankID.ToString() + "" +
+ ",'" + omodel.HBankNo + "'" +
+ ",'" + omodel.HExplanation + "'" +
+ ",'" + omodel.HSSNum + "'" +
+ "," + omodel.HDiscountRate.ToString() + "" +
+ "," + omodel.HRelSumMoney.ToString() + "" +
+ "," + omodel.HSumMoneyBB.ToString() + "" +
+ "," + omodel.HRelSumMoneyBB.ToString() +
+ ",'" + omodel.HInnerBillNo + "'" +
+ "," + omodel.HCheckMoney.ToString() + "" +
+ "," + omodel.HCheckMoneyFor.ToString() + "" +
+ "," + omodel.HRemainMoney.ToString() + "" +
+ "," + omodel.HCheckStatus.ToString() +
+ ") ";
+ oCn.RunProc(mainSql);
//鎻掑叆瀛愯〃
foreach (Model.ClsYS_ReceiveBillSub oSub in DetailColl)
{
- oCn.RunProc("Insert into YS_ReceiveBillSub " +
+ string subSql = "Insert into YS_ReceiveBillSub " +
" (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
",HMaterID,HUnitID,HQty,HPrice,HMoney" +
@@ -163,12 +317,37 @@
+ omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "','" + oSub.HEntryCloseDate.ToShortDateString() + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" +
"," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
"," + oSub.HMaterID.ToString() + "," + oSub.HUnitID.ToString() + "," + oSub.HQty.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HMoney.ToString() +
- ",'" + oSub.HReceiveBillNo + "'," + oSub.HReceiveBillInterID.ToString() + "," + oSub.HReceiveBillEntryID.ToString() + "," + oSub.HSourceDate.ToString() + "," + oSub.HSourceMoney.ToString() +
+ ",'" + oSub.HReceiveBillNo + "'," + oSub.HReceiveBillInterID.ToString() + "," + oSub.HReceiveBillEntryID.ToString() + ",'" + oSub.HSourceDate.ToString() + "'," + oSub.HSourceMoney.ToString() +
"," + oSub.HSourceMoneyBB.ToString() + "," + oSub.HReadyCheckMoney.ToString() + "," + oSub.HUnCheckMoney.ToString() + "," + oSub.HCheckMoney.ToString() + "," + oSub.HCheckMoneyBB.ToString() + "," + oSub.HInovceExRate.ToString() + ",'" + oSub.HSeContractBillNo + "'" +
"," + oSub.HPOOrderInterID.ToString() + "," + oSub.HPOOrderEntryID.ToString() + ",'" + oSub.HPOOrderBillNo + "'," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'" +
"," + oSub.HPOContractInterID.ToString() + "," + oSub.HPOContractEntryID.ToString() + ",'" + oSub.HPOContractBillNo + "'," + oSub.HSeContractInterID.ToString() + "," + oSub.HSeContractEntryID.ToString() + ",'" + oSub.HSeContractBillNo + "'" +
- ") ");
+ ") ";
+ oCn.RunProc(subSql);
}
+
+ if (DetailColl.Count != 0)
+ {
+ //鏇存柊璁㈠崟鍏宠仈鏁伴噺
+ AddNewRelation(ref sReturn, omodel.HInterID);
+ }
+
+
+ //=========================淇濆瓨鍚庢帶鍒�
+ DataSet ds2 = oCn.RunProcReturn("h_p_YS_ReceiveBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_YS_ReceiveBill_AfterSaveCtrl");
+ if (ds2 == null)
+ {
+ sReturn = "淇濆瓨鍚庢帶鍒跺垽鏂け璐ワ紒";
+ oCn.RollBack();
+ return false;
+ }
+ if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
+ {
+ sReturn = "淇濆瓨澶辫触2锛�" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
+ oCn.RollBack();
+ return false;
+ }
+ //============================
+
//
//foreach (Model.ClsYS_ReceiveBillSub oSub in DetailColl)
//{
@@ -232,6 +411,12 @@
omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+
+ omodel.HMainSourceInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMainSourceInterID"]);
+ omodel.HMainSourceEntryID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMainSourceEntryID"]);
+ omodel.HMainSourceBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMainSourceBillNo"]);
+ omodel.HMainSourceBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMainSourceBillType"]);
+
//========================================================
omodel.HAccDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HAccDate"]);
omodel.HCusID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCusID"]);
@@ -241,6 +426,10 @@
omodel.HExRate = DBUtility.ClsPub.isSingle(Ds.Tables[0].Rows[0]["HExRate"]);
omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]);
omodel.HEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HEmpID"]);
+ omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HManagerID"]);
+ omodel.HOrgID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HOrgID"]);
+ omodel.HGiftRate = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HGiftRate"]);
+ omodel.HGiftMoney = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HGiftMoney"]);
omodel.HSumMoney = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HSumMoney"]);
omodel.HBankID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HBankID"]);
omodel.HBankNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBankNo"]);
--
Gitblit v1.9.1