1
zrg
13 小时以前 83c09afa05bd507c148e6fbd12cf16a3d7b392cf
WebAPI/DLL/ClsOA_ErrMsgBackBill.cs
@@ -40,6 +40,23 @@
            {
                //
                oCn.BeginTran();
                //保存前控制=========================================
                string HBillNote = "";
                DataSet ds = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',2", "h_p_OA_ErrMsgBackBill_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.RunProc("UpDate OA_ErrMsgBackBillMain set  " +
                " HBillNo='" + omodel.HBillNo + "'" +  //固定赋值===============
@@ -70,10 +87,12 @@
                ",HForm='" + omodel.HForm + "'" +
                ",HChangeNote='" + omodel.HChangeNote + "'" +
                ",HNote='" + omodel.HNote + "'" +
                ",HCenterID='" + omodel.HCenterID + "'" +
                ",HBadProcMan='" + omodel.HBadProcMan.ToString() + "'" +
                ",HQEMan='" + omodel.HQEMan.ToString() + "'" +
                ",HSourceID='" + omodel.HSourceID.ToString() + "'" +
                ",HShiftsID='" + omodel.HShiftsID.ToString()+ "'" +
                 ",HErrLev ='" + omodel.HErrLev.ToString() + "'" +
                ",HHandleEmpID=" + omodel.HHandleEmpID.ToString() +
                " where HInterID=" + lngBillKey.ToString());
@@ -119,6 +138,23 @@
                //    }
                //}
                sReturn = "修改单据成功!";
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("h_p_OA_ErrMsgBackBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',2 ", "h_p_OA_ErrMsgBackBill_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;
                }
                //============================
                oCn.Commit();
                return true;
            }
@@ -134,10 +170,26 @@
        {
            try
            {
                //得到mainid
                //omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                DataSet ds;
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //保存前控制=========================================
                string HBillNote = "";
                ds = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_OA_ErrMsgBackBill_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.RunProc("Insert Into OA_ErrMsgBackBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
@@ -146,7 +198,7 @@
                ",HCopyMan,HHasten,HLevel,HReTransmitMan,HBillTypeName"+
                ",HPlanBillNo,HMaterName,HMaterModel,HQty,HSendType"+
                ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRecDeptID,HMaterNumber,HErrMsgBackTypeID,HHandleEmpID,HCloseFlag" +
                ",HForm,HChangeNote,HNote,HBadProcMan,HQEMan,HSourceID,HShiftsID" +
                ",HForm,HChangeNote,HNote,HBadProcMan,HQEMan,HSourceID,HShiftsID,HErrLev,HCenterID" +
                ") " +
                " values('" + this.BillType + "','"  + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
@@ -155,7 +207,7 @@
                ",'" + omodel.HPlanBillNo + "','" + omodel.HMaterName + "','" + omodel.HMaterModel + "'," + omodel.HQty.ToString() + ",'" + omodel.HSendType + "'" +
                ",'" + omodel.HMainSourceInterID + "','" + omodel.HMainSourceEntryID + "','" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'" +
                "," + omodel.HRecDeptID + ",'" + omodel.HMaterNumber + "'," + omodel.HErrMsgBackTypeID +", " + omodel.HHandleEmpID + ", '"+ "0"+
                "','" + omodel.HForm + "','" + omodel.HChangeNote + "','" + omodel.HNote + "','" + omodel.HBadProcMan + "','" + omodel.HQEMan + "','" + omodel.HSourceID + "','" + omodel.HShiftsID + "') ");
                "','" + omodel.HForm + "','" + omodel.HChangeNote + "','" + omodel.HNote + "','" + omodel.HBadProcMan + "','" + omodel.HQEMan + "','" + omodel.HSourceID + "','" + omodel.HShiftsID + "','" + omodel.HErrLev+ "','" + omodel.HCenterID + "') ");
                //插入子表
                //foreach (Models.ClsOA_ErrMsgBackBillSub oSub in DetailColl)
                //{
@@ -194,6 +246,24 @@
                //}
                //
                sReturn = omodel.HInterID.ToString();
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("h_p_OA_ErrMsgBackBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_OA_ErrMsgBackBill_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;
                }
                //============================
                oCn.Commit();
                return true;
            }
@@ -205,6 +275,216 @@
            }
        }
        //修改单据
        public override bool ModifyBill_APP(Int64 lngBillKey, ref string sReturn)
        {
            try
            {
                //
                oCn.BeginTran();
                //保存前控制=========================================
                string HBillNote = "";
                DataSet ds = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',2", "h_p_OA_ErrMsgBackBill_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.RunProc("UpDate OA_ErrMsgBackBillMain set  " +
                " HBillNo='" + omodel.HBillNo + "'" +  //固定赋值===============
                ",HDate='" + omodel.HDate + "'" +
                ",HYear='" + omodel.HYear.ToString() + "'" +
                ",HPeriod='" + omodel.HPeriod.ToString() + "'" +
                ",HRemark='" + omodel.HRemark + "'" +
                ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" +
                ",HUpDateDate=getdate()" +
                //========================================
                ",HContext='" + omodel.HContext + "'" +
                ",HDeptID=" + omodel.HDeptID.ToString() +
                ",HSendMan='" + omodel.HSendMan + "'" +
                ",HReceiveMan='" + omodel.HReceiveMan + "'" +
                ",HCopyMan='" + omodel.HCopyMan + "'" +
                ",HLevel='" + omodel.HLevel + "'" +
                ",HReTransmitMan='" + omodel.HReTransmitMan + "'" +
                ",HBillTypeName='" + omodel.HBillTypeName + "'" +
                ",HPlanBillNo='" + omodel.HPlanBillNo + "'" +
                ",HMaterName='" + omodel.HMaterName + "'" +
                ",HMaterModel='" + omodel.HMaterModel + "'" +
                ",HSendType='" + omodel.HSendType + "'" +
                ",HDescription='" + omodel.HDescription + "'" +
                ",HHasten=" + omodel.HHasten.ToString() +
                ",HQty=" + omodel.HQty.ToString() +
                ",HRecDeptID=" + omodel.HRecDeptID.ToString() +
                ",HMaterNumber='" + omodel.HMaterNumber + "'" +
                ",HForm='" + omodel.HForm + "'" +
                ",HChangeNote='" + omodel.HChangeNote + "'" +
                ",HNote='" + omodel.HNote + "'" +
                ",HCenterID='" + omodel.HCenterID + "'" +
                ",HBadProcMan='" + omodel.HBadProcMan.ToString() + "'" +
                ",HQEMan='" + omodel.HQEMan.ToString() + "'" +
                ",HSourceID='" + omodel.HSourceID.ToString() + "'" +
                ",HShiftsID='" + omodel.HShiftsID.ToString() + "'" +
                 ",HErrLev ='" + omodel.HErrLev.ToString() + "'" +
                ",HHandleEmpID=" + omodel.HHandleEmpID.ToString() +
                " where HInterID=" + lngBillKey.ToString());
                //删除关联
                DeleteRelation(ref sReturn, lngBillKey);
                //删除子表
                DeleteBillSub(lngBillKey);
                DeleteBillSub2(lngBillKey);
                //插入子表
                omodel.HInterID = lngBillKey;
                foreach (Models.ClsOA_ErrMsgBackBillSub oSub in DetailColl)
                {
                    oCn.RunProc("Insert into OA_ErrMsgBackBillSub " +
                      " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                      ",HSendStatus,HSendMan,HDescription,HDate" +
                      ") values("
                      + 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.HSendStatus.ToString() + ",'" + oSub.HSendMan + "','" + oSub.HDescription + "','" + oSub.HDate.ToShortDateString() + "'" +
                      ") ");
                }
                //
                foreach (Models.ClsOA_ErrMsgBackBillSub2 oSubSec in DetailColl2)
                {
                    oCn.RunProc("Insert into OA_ErrMsgBackBillSub2 " +
                      " (HInterID,HEntryID,HReceiveMan,HReadFlag" +
                      ")" +
                      " values("
                      + omodel.HInterID.ToString() + "," + oSubSec.HEntryID.ToString() + ",'" + oSubSec.HReceiveMan + "'," + Convert.ToString(oSubSec.HReadFlag ? 1 : 0) +
                      ") ");
                }
                sReturn = "修改单据成功!";
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("h_p_OA_ErrMsgBackBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',2 ", "h_p_OA_ErrMsgBackBill_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;
                }
                //============================
                oCn.Commit();
                return true;
            }
            catch (Exception e)
            {
                sReturn = e.Message;
                oCn.RollBack();
                throw (e);
            }
        }
        //新增单据
        public override bool AddBill_APP(ref string sReturn)
        {
            try
            {
                DataSet ds;
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //保存前控制=========================================
                string HBillNote = "";
                ds = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_OA_ErrMsgBackBill_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.RunProc("Insert Into OA_ErrMsgBackBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HContext,HDeptID,HDescription,HSendMan,HReceiveMan" +
                ",HCopyMan,HHasten,HLevel,HReTransmitMan,HBillTypeName" +
                ",HPlanBillNo,HMaterName,HMaterModel,HQty,HSendType" +
                ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRecDeptID,HMaterNumber,HErrMsgBackTypeID,HHandleEmpID,HCloseFlag" +
                ",HForm,HChangeNote,HNote,HBadProcMan,HQEMan,HSourceID,HShiftsID,HErrLev,HCenterID" +
                ") " +
                " 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.HContext + "'," + omodel.HDeptID.ToString() + ",'" + omodel.HDescription + "','" + omodel.HSendMan + "','" + omodel.HReceiveMan + "'" +
                ",'" + omodel.HCopyMan + "'," + omodel.HHasten.ToString() + ",'" + omodel.HLevel + "','" + omodel.HReTransmitMan + "','" + omodel.HBillTypeName + "'" +
                ",'" + omodel.HPlanBillNo + "','" + omodel.HMaterName + "','" + omodel.HMaterModel + "'," + omodel.HQty.ToString() + ",'" + omodel.HSendType + "'" +
                ",'" + omodel.HMainSourceInterID + "','" + omodel.HMainSourceEntryID + "','" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'" +
                "," + omodel.HRecDeptID + ",'" + omodel.HMaterNumber + "'," + omodel.HErrMsgBackTypeID + ", " + omodel.HHandleEmpID + ", '" + "0" +
                "','" + omodel.HForm + "','" + omodel.HChangeNote + "','" + omodel.HNote + "','" + omodel.HBadProcMan + "','" + omodel.HQEMan + "','" + omodel.HSourceID + "','" + omodel.HShiftsID + "','" + omodel.HErrLev + "','" + omodel.HCenterID + "') ");
                //插入子表
                foreach (Models.ClsOA_ErrMsgBackBillSub2 oSubSec in DetailColl2)
                {
                    oCn.RunProc("Insert into OA_ErrMsgBackBillSub2 " +
                      " (HInterID,HEntryID" +
                      ",HReceiveMan,HReadFlag" +
                      ")" +
                      " values("
                      + omodel.HInterID.ToString() + "," + oSubSec.HEntryID.ToString() +
                      ",'" + oSubSec.HReceiveMan + "'," + Convert.ToString(oSubSec.HReadFlag ? 1 : 0) +
                      ") ");
                }
                sReturn = omodel.HInterID.ToString();
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("h_p_OA_ErrMsgBackBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_OA_ErrMsgBackBill_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;
                }
                //============================
                oCn.Commit();
                return true;
            }
            catch (Exception e)
            {
                sReturn = e.Message;
                oCn.RollBack();
                throw (e);
            }
        }
        public bool ReplyBill(ref string sReturn)
        {
            try