WebAPI/DLL/ClsQC_PatrolProcCheckBill.cs
@@ -9,11 +9,12 @@
    {
        public Model.ClsQC_PatrolProcCheckBillMain omodel = new Model.ClsQC_PatrolProcCheckBillMain();
        public List<Model.ClsQC_PatrolProcCheckBillSub> DetailColl = new List<Model.ClsQC_PatrolProcCheckBillSub>();
        public List<Model.ClsQC_PatrolProcCheckBillSub_BadReason> DetailColl_Bad = new List<Model.ClsQC_PatrolProcCheckBillSub_BadReason>();
        //public List<Model.ClsQC_PatrolProcCheckBillSub_Item> DetailColl1 = new List<Model.ClsQC_PatrolProcCheckBillSub_Item>();
        public ClsQC_PatrolProcCheckBill()
        {
            base.MvarItemKeySub = "QC_PatrolProcCheckBillSub";
            base.MvarItemKeySub2 = "";
            base.MvarItemKeySub2 = "QC_PatrolProcCheckBillSub_BadReason";
            base.MvarItemKeySub3 = "";
            base.MvarItemKeySub4 = "";
            base.MvarItemKey="QC_PatrolProcCheckBillMain";
@@ -36,11 +37,30 @@
        {
            try
            {
                //保存前控制=========================================
                string HBillNote = "";
                DataSet ds = oCn.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_QC_PatrolProcCheckBill_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();
                string sqlerro = @"UpDate QC_PatrolProcCheckBillMain set  " +
                " HBillNo='" + omodel.HBillNo + "'" +  //固定赋值===============
                ",HDate='" + omodel.HDate + "'" +
                ",HLastResult='" + omodel.HLastResult + "'" +
                ",HYear='" + omodel.HYear.ToString() + "'" +
                ",HPeriod='" + omodel.HPeriod.ToString() + "'" +
                ",HBillStatus='" + omodel.HBillStatus + "'" +
@@ -59,20 +79,21 @@
                //",HCloseType="+omodel.HCloseType.ToString()+
                //",HDeleteMan='" + omodel.HDeleteMan + "'" +
                //",HDeleteDate='" + omodel.HDeleteDate + "'" +
                ",HPrintQty=" + omodel.HPrintQty.ToString() +
                //",HPrintQty=" + omodel.HPrintQty.ToString() +
                //========================================
                //",HSupID=" + omodel.HSupID.ToString() +
                //",HEmpID=" + omodel.HEmpID.ToString() +
                ",HSourceID=" + omodel.HSourceID.ToString() +
                ",HICMOInterID=" + omodel.HICMOInterID.ToString() +
                ",HICMOBillNo='" + omodel.HICMOBillNo + "'" +
                ",HICMOQty=" + omodel.HICMOQty.ToString() +
                ",HProcExchInterID=" + omodel.HICMOQty.ToString() +
                ",HProcExchEntryID=" + omodel.HICMOQty.ToString() +
                ",HProcExchBillNo='" + omodel.HProcExchBillNo + "'" +
                ",HProcExchQty=" + omodel.HICMOQty.ToString() +
                ",HMaterID=" + omodel.HMaterID.ToString() +
                //",HSourceID=" + omodel.HSourceID.ToString() +
                //",HICMOInterID=" + omodel.HICMOInterID.ToString() +
                //",HICMOBillNo='" + omodel.HICMOBillNo + "'" +
                //",HICMOQty=" + omodel.HICMOQty.ToString() +
                //",HProcExchInterID=" + omodel.HICMOQty.ToString() +
                //",HProcExchEntryID=" + omodel.HICMOQty.ToString() +
                //",HProcExchBillNo='" + omodel.HProcExchBillNo + "'" +
                //",HProcExchQty=" + omodel.HICMOQty.ToString() +
                //",HMaterID=" + omodel.HMaterID.ToString() +
                ",HFirstCheckEmp=" + omodel.HFirstCheckEmp.ToString() +
                ",HMainProcID=" + omodel.HMainProcID.ToString() +
                " where HInterID=" + lngBillKey.ToString();
                //更新主表
                oCn.RunProc(sqlerro);
@@ -80,8 +101,11 @@
                DeleteRelation(ref sReturn, lngBillKey);
                //删除子表
                DeleteBillSub(lngBillKey);
                //删除子表2
                DeleteBillSub2(lngBillKey);
                //插入子表
                omodel.HInterID = lngBillKey;
                //插入子表
                foreach (Model.ClsQC_PatrolProcCheckBillSub oSub in DetailColl)
                {
                    oCn.RunProc("Insert into QC_PatrolProcCheckBillSub " +
@@ -89,14 +113,28 @@
                      ",HEntryCloseDate,HCloseType,HRemark,HSourceInterID" +
                      ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                      ",HQCCheckItemID,HQCStd,HQCNote1,HQCNote2,HQCNote3,HQCNote4" +
                      ",HQCNote5,HQCNote6,HQCNote7,HQCNote8,HQCNote9,HQCNote10"+
                      ",HQCNote5,HQCNote6,HQCNote7,HQCNote8,HQCNote9,HQCNote10" +
                      ") values("
                      + omodel.HInterID.ToString() + ",'" + oSub.HBillNo_bak + "'," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "'" +
                      ",getdate()," + 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.HQCCheckItemID.ToString() + ",'" + oSub.HQCStd + "','" + oSub.HQCNote1 + "','" + oSub.HQCNote2 + "','" + oSub.HQCNote3+ "','" + oSub.HQCNote4+ "'" +
                      ",'" + oSub.HQCNote5+ "','" + oSub.HQCNote6 + "','" + oSub.HQCNote7 + "','" + oSub.HQCNote8 + "','" + oSub.HQCNote9 + "','" + oSub.HQCNote10 + "'" +
                      "," + oSub.HQCCheckItemID.ToString() + ",'" + oSub.HQCStd + "','" + oSub.HQCNote1 + "','" + oSub.HQCNote2 + "','" + oSub.HQCNote3 + "','" + oSub.HQCNote4 + "'" +
                      ",'" + oSub.HQCNote5 + "','" + oSub.HQCNote6 + "','" + oSub.HQCNote7 + "','" + oSub.HQCNote8 + "','" + oSub.HQCNote9 + "','" + oSub.HQCNote10 + "'" +
                      ") ");
                }
                //插入子表2
                foreach (Model.ClsQC_PatrolProcCheckBillSub_BadReason oBad in DetailColl_Bad)
                {
                    oCn.RunProc("Insert into QC_PatrolProcCheckBillSub_BadReason " +
                      " (HInterID,HBillNo_bak,HEntryID,HSEQ" +
                      ",HCreateDate,HBadReasonID,HEmpID,HProcID" +
                      ",HCheckEmpID,HFinishDate,HMaterID,HQty,HRemark" +
                      ") values("
                      + omodel.HInterID.ToString() + ",'" + oBad.HBillNo_bak + "'," + oBad.HEntryID + "," + oBad.HSEQ + ",'" + oBad.HCreateDate + "',"
                      + oBad.HBadReasonID + "," + oBad.HEmpID + "," + oBad.HProcID + "," + oBad.HCheckEmpID + ",'" + oBad.HFinishDate + "',"
                      + oBad.HMaterID + "," + oBad.HQty + ",'" + oBad.HRemark + "'"
                      + ") ");
                }
                //foreach (Model.ClsQC_PatrolProcCheckBillSub_Item oSub2 in DetailColl1)
                //{
@@ -125,6 +163,24 @@
                //        return false;
                //    }
                //}
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_QC_PatrolProcCheckBill_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;
@@ -143,6 +199,23 @@
            {
                //得到mainid
                omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //保存前控制=========================================
                string HBillNote = "";
                DataSet ds = oCn.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_QC_PatrolProcCheckBill_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;
                }
                //=========================================================
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //主表
@@ -150,12 +223,12 @@
                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
                ",HYear,HPeriod,HRemark" +
                ",HSourceID,HICMOInterID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID" +
                ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp" +
                ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp,HMainProcID,HLastResult" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'" +
                "," + omodel.HSourceID.ToString() + "," + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo + "'," + omodel.HICMOQty.ToString() + "," + omodel.HProcExchInterID.ToString() + "," + omodel.HProcExchEntryID.ToString() +
                ",'" + omodel.HProcExchBillNo + "'," + omodel.HProcExchQty.ToString() + "," + omodel.HMaterID.ToString() + "," + omodel.HFirstCheckEmp.ToString() +
                ",'" + omodel.HProcExchBillNo + "'," + omodel.HProcExchQty.ToString() + "," + omodel.HMaterID.ToString() + "," + omodel.HFirstCheckEmp.ToString() + "," + omodel.HMainProcID +" ,"+ omodel.HLastResult +
                ") ");
                //插入子表
                foreach (Model.ClsQC_PatrolProcCheckBillSub oSub in DetailColl)
@@ -173,6 +246,19 @@
                      "," + oSub.HQCCheckItemID.ToString() + ",'" + oSub.HQCStd + "','" + oSub.HQCNote1 + "','" + oSub.HQCNote2 + "','" + oSub.HQCNote3 + "','" + oSub.HQCNote4 + "'" +
                      ",'" + oSub.HQCNote5 + "','" + oSub.HQCNote6 + "','" + oSub.HQCNote7 + "','" + oSub.HQCNote8 + "','" + oSub.HQCNote9 + "','" + oSub.HQCNote10 + "'" +
                      ") ");
                }
                //插入子表2
                foreach (Model.ClsQC_PatrolProcCheckBillSub_BadReason oBad in DetailColl_Bad)
                {
                    oCn.RunProc("Insert into QC_PatrolProcCheckBillSub_BadReason " +
                      " (HInterID,HBillNo_bak,HEntryID,HSEQ" +
                      ",HCreateDate,HBadReasonID,HEmpID,HProcID" +
                      ",HCheckEmpID,HFinishDate,HMaterID,HQty,HRemark" +
                      ") values("
                      + omodel.HInterID.ToString() + ",'" + oBad.HBillNo_bak + "'," + oBad.HEntryID + "," + oBad.HSEQ + ",'" + oBad.HCreateDate + "',"
                      + oBad.HBadReasonID + "," + oBad.HEmpID + "," + oBad.HProcID + "," + oBad.HCheckEmpID + ",'" + oBad.HFinishDate + "',"
                      + oBad.HMaterID + "," + oBad.HQty + ",'" + oBad.HRemark + "'"
                      + ") ");
                }
                //foreach (Model.ClsQC_PatrolProcCheckBillSub_Item oSub2 in DetailColl1)
                //{
@@ -202,6 +288,23 @@
                //    }
                //}
                //
                //=========================保存后控制
                DataSet ds2 = oCn.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_QC_PatrolProcCheckBill_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;