1
wangyi
2026-01-15 df4649d2b21b588052017bd73fda81ae9483307b
DAL/ÐÅϢƽ̨/ClsOA_ErrMsgBackHandleBill.cs
@@ -225,6 +225,203 @@
                throw (e);
            }
        }
        //修改单据_APP
        public override bool ModifyBill_APP(Int64 lngBillKey, ref string sReturn)
        {
            try
            {
                //保存前控制=========================================
                string HBillNote = "";
                DataSet ds = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackHandleBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_OA_ErrMsgBackHandleBill_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 OA_ErrMsgBackHandleBillMain set  " +
                " HBillNo='" + omodel.HBillNo + "'" +  //固定赋值===============
                ",HDate='" + omodel.HDate + "'" +
                ",HYear='" + omodel.HYear.ToString() + "'" +
                ",HPeriod='" + omodel.HPeriod.ToString() + "'" +
                ",HRemark='" + omodel.HRemark + "'" +
                ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" +
                ",HUpDateDate=getdate()" +
                //========================================
                ",HDeptID='" + omodel.HDeptID.ToString() + "'" +
                ",HReceiveID='" + omodel.HReceiveID.ToString() + "'" +
                ",HSendMan='" + omodel.HSendMan + "'" +
                 ",HReceiveMan='" + omodel.HReceiveMan + "'" +
                 ",HCopyMan='" + omodel.HCopyMan + "'" +
                 ",HLevel='" + omodel.HLevel + "'" +
                 ",HErrMsgBackTypeID='" + omodel.HErrMsgBackTypeID.ToString() +
                 "',HContext='" + omodel.HContext + "'" +
                 ",HDescription='" + omodel.HDescription + "'" +
                 ",HBillTypeName='" + omodel.HBillTypeName + "'" +
                 ",HPlanBillNo='" + omodel.HPlanBillNo + "'" +
                 ",HMaterName='" + omodel.HMaterName + "'" +
                 ",HMaterModel='" + omodel.HMaterModel + "'" +
                 ",HEquipID='" + omodel.HEquipID.ToString() +
                 "',HMouldID='" + omodel.HMouldID.ToString() +
                 "',HHandleEmpID='" + omodel.HHandleEmpID.ToString() +
                 "',HHandleNote='" + omodel.HHandleNote + "'" +
                 ",HHandleResult='" + omodel.HHandleResult + "'" +
                 ",HHandleDate='" + omodel.HHandleDate + "'" +
                 ",HErrMsgBackBillNo='" + omodel.HErrMsgBackBillNo +
                 "',HErrMsgBackInterID='" + omodel.HErrMsgBackInterID.ToString() +
                 "',HErrMsgBackEntryID='" + omodel.HErrMsgBackEntryID.ToString() +
                 "',HBadReasonID='" + omodel.HBadReasonID.ToString() +
                "' where HInterID=" + lngBillKey.ToString());
                //删除关联
                DeleteRelation(ref sReturn, lngBillKey);
                //删除子表
                DeleteBillSub(lngBillKey);
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackHandleBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_OA_ErrMsgBackHandleBill_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;
                }
                //============================
                sReturn = "修改单据成功!";
                oCn.Commit();
                return true;
            }
            catch (Exception e)
            {
                sReturn = e.Message;
                oCn.RollBack();
                throw (e);
            }
        }
        //新增单据
        public override bool AddBill_APP(ref string sReturn)
        {
            try
            {
                //得到mainid
                //omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //保存前控制=========================================
                string HBillNote = "";
                DataSet ds = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackHandleBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_OA_ErrMsgBackHandleBill_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;
                }
                //=========================================================
                string sql = "";
                sql = "Insert Into OA_ErrMsgBackHandleBillMain" +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HYear,HPeriod,HRemark,HMaker,HMakeDate,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType," +
                "HDeptID,HReceiveID,HSendMan,HReceiveMan,HCopyMan,HLevel,HErrMsgBackTypeID,HContext,HDescription,HBillTypeName,HPlanBillNo,HMaterName,HMaterModel,HEquipID,HMouldID,HHandleEmpID,HHandleNote,HHandleResult,HHandleDate,HErrMsgBackBillNo,HErrMsgBackInterID,HErrMsgBackEntryID,HBadReasonID) " +
                " values(" +
                "'" + this.BillType +
                "','" + this.HBillSubType +
                "'," + omodel.HInterID.ToString() +
                ",'" + omodel.HBillNo +
                "','" + omodel.HDate +
                "'," + omodel.HYear +
                "," + omodel.HPeriod +
                ",'" + omodel.HRemark +
                "','" + omodel.HMaker +
                "',getdate()" +
                ",'" + omodel.HMainSourceInterID +
                "','" + omodel.HMainSourceEntryID +
                "','" + omodel.HMainSourceBillNo +
                "','" + omodel.HMainSourceBillType +
                "','" + omodel.HDeptID.ToString() +
                "','" + omodel.HReceiveID.ToString() +
                "','" + omodel.HSendMan +
                "','" + omodel.HReceiveMan +
                "','" + omodel.HCopyMan +
                "','" + omodel.HLevel +
                "','" + omodel.HErrMsgBackTypeID.ToString() +
                "','" + omodel.HContext +
                "','" + omodel.HDescription +
                "','" + omodel.HBillTypeName +
                "','" + omodel.HPlanBillNo +
                "','" + omodel.HMaterName +
                "','" + omodel.HMaterModel +
                "','" + omodel.HEquipID.ToString() +
                "','" + omodel.HMouldID.ToString() +
                "','" + omodel.HHandleEmpID.ToString() +
                "','" + omodel.HHandleNote +
                 "','" + omodel.HHandleResult +
                "','" + omodel.HHandleDate +
                 "','" + omodel.HErrMsgBackBillNo +
                "','" + omodel.HErrMsgBackInterID.ToString() +
                "','" + omodel.HErrMsgBackEntryID.ToString() +
                 "','" + omodel.HBadReasonID.ToString() +
                "') ";
                //主表
                oCn.RunProc(sql);
                //反馈处理单保存后,更新异常反馈单的状态
                string sql1 = "update OA_ErrMsgBackBillMain set HBillStatus='9' where HBillNo='" + omodel.HErrMsgBackBillNo + "' ";
                oCn.RunProc(sql1);
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackHandleBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_OA_ErrMsgBackHandleBill_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;
                }
                //============================
                sReturn = "新增单据成功!";
                oCn.Commit();
                return true;
            }
            catch (Exception e)
            {
                sReturn = e.Message;
                oCn.RollBack();
                throw (e);
            }
        }
        //显示单据
        public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
        {