From d79f81d5f07f47be053cfcbae4a4ed47cd0ccce0 Mon Sep 17 00:00:00 2001
From: yxj <yxj@hz-kingdee.com>
Date: 星期二, 13 八月 2024 09:59:03 +0800
Subject: [PATCH] 新增设备保养率报表、设备维修率报表调用方法

---
 DAL/应收管理/ClsYS_ReceiveBill.cs |  165 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 149 insertions(+), 16 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..4d3ea04 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"
@@ -38,10 +38,25 @@
         {
             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() + "'" +
@@ -49,7 +64,7 @@
                 ",HRemark='" + omodel.HRemark + "'" +
                 ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" +
                 ",HUpDateDate=getdate()" +
-                    //========================================
+                //========================================
                 ",HAccDate='" + omodel.HAccDate + "'" +
                 ",HCusID=" + omodel.HCusID.ToString() +
                 ",HAccCusID=" + omodel.HAccCusID.ToString() +
@@ -58,6 +73,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,12 +87,15 @@
                 ",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());
+                " where HInterID=" + lngBillKey.ToString();
+
+
+                oCn.RunProc(mainSql);
                 //鍒犻櫎鍏宠仈
                 DeleteRelation(ref sReturn, lngBillKey);
                 //鍒犻櫎瀛愯〃
@@ -100,6 +122,24 @@
                       "," + oSub.HPOContractInterID.ToString() + "," + oSub.HPOContractEntryID.ToString() + ",'" + oSub.HPOContractBillNo + "'," + oSub.HSeContractInterID.ToString() + "," + oSub.HSeContractEntryID.ToString() + ",'" + oSub.HSeContractBillNo + "'" +
                       ") ");
                 }
+
+                //=========================淇濆瓨鍚庢帶鍒�  
+                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 +169,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 + "'" +
+                ",'" + DBUtility.ClsPub.CurUserName + "'" +
+                ",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" +
@@ -167,8 +272,26 @@
                       "," + 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);
                 }
+
+                //=========================淇濆瓨鍚庢帶鍒�  
+                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 +355,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 +370,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