是否做首件/工序 检验单控制;批量出站汇报;保存前后控制(生产订单保存方法,开工单保存方法,完工单保存方法,停工挂起单保存方法,产量汇报单保存方法,质量汇报单保存方法,生产汇报单保存方法)
17个文件已修改
407 ■■■■■ 已修改文件
Pub_Class/CustomerCls/ClsXt_SystemParameter.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CJGL/Cj_StationInBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CJGL/Sc_ProcExchSendWorkBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/LMESController.cs 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/ReportPlatFormController.cs 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/生产管理/报工台工序/Sc_QualityReportStepBillController.cs 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/生产管理/生产任务单/Sc_ICMOBillController.cs 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/生产管理/质量汇报单/Sc_QualityReportBillController.cs 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/ClsSc_ICMOBillWorkQtyStatus_Tmp.cs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/ClsSc_ICMOReportBill.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/ClsSc_MESBeginWorkBill.cs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/ClsSc_MESEndWorkBill.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/ClsSc_MESStopWorkBill.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/StationBill.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/CustomerCls/ClsXt_SystemParameter.cs
@@ -142,6 +142,16 @@
                    {
                        omodel.Sc_ICMOReportBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                    }
                    //生产汇报单 æŠ¥å·¥å°æŠ¥æ£€ç”³è¯·ç”Ÿäº§æ±‡æŠ¥å•前判断是否首检检验
                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ICMOReportBill_FirstCheckOut")
                    {
                        omodel.Sc_ICMOReportBill_FirstCheckOut = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                    }
                    //生产汇报单 æŠ¥å·¥å°æŠ¥æ£€ç”³è¯·ç”Ÿäº§æ±‡æŠ¥å•前判断是否过程检验
                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ICMOReportBill_ProcessCheckOut")
                    {
                        omodel.Sc_ICMOReportBill_ProcessCheckOut = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                    }
                    //==========================================收料通知单(送货单、到货确认)
                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Cg_POInStockBill_BarCodeCtl")
Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs
@@ -23,6 +23,7 @@
        public string Sc_ICMOReportBill_UpdateSourceInterID;    //上传后回填条码档案源单信息
        public string Sc_ICMOReportBill_MESFlag;                //生产汇报单同步MES标记,Y为同步
        public string Sc_ICMOReportBill_FirstCheckOut;              //必须首件检验通过才能保存单据
        public string Sc_ICMOReportBill_ProcessCheckOut;              //必须过程检验通过才能保存单据
        public string Sc_ICMOReportBill_DeleterAndMakerMustSame;    //生产汇报单暂存删除人必须是制单人
        //收料通知单(送货单、到货确认)
WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
@@ -530,7 +530,7 @@
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "未查询到出站单明细信息!";
                    objJsonResult.Message = "未查询到职员信息!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
@@ -643,7 +643,7 @@
                    long HMaterID = listSub[i].HMaterID;//产品ID
                    long HProcID = listSub[i].HProcID;//当前工序ID
                    double HICMOQty = listSub[i].HICMOQty;//任务单数量
                    double HPlanQty = list[0].HPlanQty;//移交PNL数
                    double HPlanQty = listSub[i].HPlanQty;//移交PNL数
                    DateTime HStationOutTime = list[0].HStationOutTime;//汇报时间
                    long HSourceID = listSub[i].HSourceID;//生产资源ID
                    long HPayProcID = list[0].HPayProcID;//核算工序ID
@@ -666,10 +666,11 @@
                    string HProcNo = listSub[i].HProcNo;//流水号
                    string HOrderProcNO = list[0].HOrderProcNO;//订单跟踪号
                    string HSourceNameList = list[0].HSourceNameList;//设备清单
                    long HMainSourceInterID = list[0].HInterID;//递入type得到的单据ID
                    string HMainSourceBillNo = list[0].HBillNo;//递入type得到的单据号
                    long HMainSourceInterID = listSub[0].HMainSourceInterID;//递入type得到的单据ID
                    long HMainSourceEntryID = listSub[0].HMainSourceEntryID;//递入type得到的单据子ID
                    string HMainSourceBillNo = listSub[0].HMainSourceBillNo;//递入type得到的单据号
                    string HMainSourceBillType = "3790";
                    bool HLastSubProc = list[0].HLastSubProc;//转下工序
                    bool HLastSubProc = listSub[0].HLastSubProc;//转下工序
                    long HEmpID2 = list[0].HEmpID2;//操作员2ID
                    long HEmpID3 = list[0].HEmpID3;//操作员3ID
                    long HEmpID4 = list[0].HEmpID4;//操作员4ID
@@ -704,7 +705,7 @@
                        ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate,HSourceID2,HSourceID3,HSourceID4,HSourceID5" +
                        ",HSupID,HQty,HPrice,HMoney,HBadCount,HCenterID,HProcNo,HOrderProcNO,HSourceNameList" +
                        ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" +
                        ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" +
                        ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID,HMainSourceEntryID" +
                        ") " +
                        " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" +
                        "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL +
@@ -713,7 +714,7 @@
                        "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" + "," + HSourceID2 + "," + HSourceID3 + "," + HSourceID4 + "," + HSourceID5 +
                        "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HBadCount + "," + HCenterID + "," + HProcNo + ",'" + HOrderProcNO + "'" + ",'" + HSourceNameList + "'" +
                        "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) +
                        "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID +
                        "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID + "," + HMainSourceEntryID +
                        ") ");
                    }
                    else
WebAPI/Controllers/CJGL/Sc_ProcExchSendWorkBillController.cs
@@ -69,7 +69,7 @@
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = string.Format(@"select * from h_v_Sc_ProcessExchangeBillQuerySub_SendWork");
                ds = oCN.RunProcReturn(sql + sWhere + " order by æµæ°´å· ", "h_v_Sc_ProcessExchangeBillQuerySub_SendWork");
                ds = oCN.RunProcReturn(sql + sWhere + " order by convert(int,流水号) asc", "h_v_Sc_ProcessExchangeBillQuerySub_SendWork");
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "获取信息成功!";
WebAPI/Controllers/LMESController.cs
@@ -572,6 +572,7 @@
                //获取系统参数
                string Ret = "";
                string Count = "";
                if (oSystemParameter.ShowBill(ref Ret))
                {
                    //判断客户为龙山汽配
@@ -582,10 +583,16 @@
                        sWhere += sql_splice;                        
                    }
                    //判断客户为瑞与祺
                    if (oSystemParameter.omodel.WMS_CampanyName == "瑞与祺")
                    {
                        Count = "top 1000";
                    }
                }
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeIssueBillQuery where 1 = 1 " + sWhere + " order by hmainid desc ", "h_v_Sc_ProcessExchangeIssueBillQuery");
                ds = oCN.RunProcReturn("select " + Count + " * from h_v_Sc_ProcessExchangeIssueBillQuery where 1 = 1 " + sWhere + " order by hmainid desc ", "h_v_Sc_ProcessExchangeIssueBillQuery");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
WebAPI/Controllers/ReportPlatFormController.cs
@@ -15,6 +15,7 @@
        private json objJsonResult = new json();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        DataSet ds;
        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
        #region æŠ¥å·¥å¹³å°æ ¹æ®è´£ä»»äººç­›é€‰åŠ è½½èµ„æºåˆ—è¡¨
@@ -188,5 +189,73 @@
        }
        #endregion
        #region  é€šè¿‡ç³»ç»Ÿå‚数控制,判断生产订单是否做了首件检验单和工序检验单
        [Route("ReportPlatForm/IsCheck")]
        [HttpGet]
        public object IsCheck(Int64 HICMOInterID,Int64 HICMOEntryID,string HICMOBillNo)
        {
            try
            {
                //获取系统参数
                string sErrMsg = "";
                string HBackRemark = "";
                if (oSystemParameter.ShowBill(ref sErrMsg) == true)
                {
                    if (oSystemParameter.omodel.Sc_ICMOReportBill_FirstCheckOut == "Y") //系统参数  æ˜¯å¦åšäº†é¦–件检验单  ç©ºç™½ä¸ºé€šç”¨
                    {
                        ds = oCN.RunProcReturn("exec h_p_JIT_IsFirstCheckOut " + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "'", "h_p_Sc_IsFirstCheckOut");
                        if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                        {
                            HBackRemark += ds.Tables[0].Rows[0]["HBackRemark"] + "    ";
                        }
                    }
                    if(oSystemParameter.omodel.Sc_ICMOReportBill_ProcessCheckOut == "Y") //系统参数  æ˜¯å¦åšäº†è¿‡ç¨‹æ£€éªŒå•  ç©ºç™½ä¸ºé€šç”¨
                    {
                        ds = oCN.RunProcReturn("exec h_p_JIT_IsProcessCheckOut " + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "'", "h_p_Sc_IsProcessCheckOut");
                        if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                        {
                            HBackRemark += ds.Tables[0].Rows[0]["HBackRemark"];
                        }
                    }
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (HBackRemark == "")
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "当前生产订单已维护首件检验单和过程检验单";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = HBackRemark;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception ex)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = ex.Message;
                objJsonResult.data = null;
            }
            return objJsonResult;
        }
        #endregion
    }
}
WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs
@@ -1077,7 +1077,7 @@
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!";
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
WebAPI/Controllers/Éú²ú¹ÜÀí/±¨¹¤Ì¨¹¤Ðò/Sc_QualityReportStepBillController.cs
@@ -646,6 +646,28 @@
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                bool bResult2 = false;
                oCN.BeginTran();
                //保存前控制=========================================
                ds = oCN.RunProcReturn("exec h_p_Sc_QualityReportBill_BeforeSaveCtrl " + HInterID , "h_p_Sc_QualityReportBill_BeforeSaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存前判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================
                //保存
                oCN.RunProc("exec h_p_save_Sc_QualityReportBill " + HInterID);
                //判断是否允许保存,不允许则回滚
@@ -659,6 +681,26 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //保存后控制=========================================
                ds = oCN.RunProcReturn("exec h_p_Sc_QualityReportBill_AfterSaveCtrl " + HInterID, "h_p_Sc_QualityReportBill_AfterSaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存后判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================
                oCN.Commit();
                //获取自动审核参数
                string sReturn = "";
WebAPI/Controllers/Éú²ú¹ÜÀí/Éú²úÈÎÎñµ¥/Sc_ICMOBillController.cs
@@ -111,6 +111,26 @@
                if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//新增
                {
                    //保存前控制=========================================
                    ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_BeforeSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_BeforeSaveCtrl_New");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存前判断失败!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //=========================================================
                    //主表
                    oCN.RunProc(@"Insert Into Sc_ICMOBillMain   
                        (HBillType,HBillStatus,HInterID,HBillNo,HDate,HPRDORGID
@@ -252,6 +272,27 @@
                ,{oSub.HMaterID},{oSub.HUnitID},'{oSub.HRemark}',{oSub.HSourceID},{oSub.HDeptID},{oSub.HSTATUS}
                        ,0,0,'','',0,0,{HINSTOCKTYPE},{HCHECKPRODUCT},{HQAIP},{HISBACKFLUSH},{HREQSRC},{HSTOCKINQUASELAUXQTY},{HSeOrderEntrySEQ},{HPROJECTNO},{HPRODUCTTYPE},{HCOSTRATE},{HBASEUNITID},{oSub.HSTOCKINORGID},{oSub.HOrderLevID})");
            }
            //保存后控制=========================================
            ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_AfterSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_AfterSaveCtrl_New");
            if (ds == null || ds.Tables[0].Rows.Count == 0)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "保存后判断失败!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                objJsonResult.data = null;
                return objJsonResult;
            }
            //=========================================================
            objJsonResult.code = "1";
            objJsonResult.count = 1;
@@ -452,6 +493,26 @@
                if ((OperationType == 1 || OperationType == 2 || OperationType == 4) && ds.Tables[0].Rows.Count == 0)//新增
                {
                    //保存前控制=========================================
                    ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_BeforeSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_BeforeSaveCtrl_New");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存前判断失败!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //=========================================================
                    //主表
                    oCN.RunProc(@"Insert Into Sc_ICMOBillMain   
                        (HBillType,HBillStatus,HInterID,HBillNo,HDate,HPRDORGID
@@ -598,6 +659,27 @@
                        ,{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',0,0
                ,{oSub.HAuxQty},{oSub.HAuxUnit},{oSub.HWidth},{oSub.HWeight},'{oSub.HColorRemark}','{oSub.HCusMaterName}','{oSub.HCusModel}','{oSub.HOrderPickRemark}')");
            //保存后控制=========================================
            ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_AfterSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_AfterSaveCtrl_New");
            if (ds == null || ds.Tables[0].Rows.Count == 0)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "保存后判断失败!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                objJsonResult.data = null;
                return objJsonResult;
            }
            //=========================================================
            objJsonResult.code = "1";
            objJsonResult.count = 1;
            objJsonResult.Message = null;
WebAPI/Controllers/Éú²ú¹ÜÀí/ÖÊÁ¿»ã±¨µ¥/Sc_QualityReportBillController.cs
@@ -621,6 +621,26 @@
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                bool bResult2 = false;
                oCN.BeginTran();
                //保存前控制=========================================
                ds = oCN.RunProcReturn("exec h_p_Sc_QualityReportBill_BeforeSaveCtrl " + HInterID, "h_p_Sc_QualityReportBill_BeforeSaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存前判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================
                //保存
                oCN.RunProc("exec h_p_save_Sc_QualityReportBill " + HInterID);
                //判断是否允许保存,不允许则回滚
@@ -634,6 +654,26 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //保存后控制=========================================
                ds = oCN.RunProcReturn("exec h_p_Sc_QualityReportBill_AfterSaveCtrl " + HInterID, "h_p_Sc_QualityReportBill_AfterSaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存后判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================
                oCN.Commit();
                //获取自动审核参数
                string sReturn = "";
WebAPI/DLL/ClsSc_ICMOBillWorkQtyStatus_Tmp.cs
@@ -81,8 +81,20 @@
                omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //主表
                DataSet ds;
                //保存前控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_ICMOBillWorkQtyStatus_BeforeSaveCtrl " + omodel.HInterID + "," + omodel.HSourceInterID + "," + omodel.HSourceEntryID + ",'" + omodel.HSourceBillNo + "'", "h_p_Sc_ICMOBillWorkQtyStatus_BeforeSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                //主表
                oCn.RunProc("Insert Into Sc_ICMOBillWorkQtyStatus_Tmp   " +   
               "(HInterID,HBillType,HSourceID,HReportType,HPieceQty" +
               ",HMaterID,HGroupID,HWorkManID,HWorkReportDate,HDate" +
@@ -103,7 +115,7 @@
                oCn.RunProc("update Sc_ICMOBillStatus_Tmp set HSplitRelationQty=HSplitRelationQty+" + sumqty + "  where HICMOBillNo='" + omodel.HICMOBillNo + "'  and HSourceID='" + omodel.HSourceID + "' and  HICMOInterID='" + omodel.HICMOInterID + "' and HICMOEntryID='" + omodel.HICMOEntryID + "' and HInterID="+ omodel.HSourceInterID.ToString());
                //再次验证 ä¿å­˜æ˜¯å¦ åˆç†
                DataSet ds = oCn.RunProcReturn("exec h_p_JIT_ICMOBillWorkQtyStatus_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_ICMOBillWorkQtyStatus_SaveCtrl");
                ds = oCn.RunProcReturn("exec h_p_JIT_ICMOBillWorkQtyStatus_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_ICMOBillWorkQtyStatus_SaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    sReturn = "无验证数据!";
@@ -116,6 +128,18 @@
                    oCn.RollBack();
                    return false;
                }
                //保存后控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_ICMOBillWorkQtyStatus_AfterSaveCtrl " + omodel.HInterID + "," + omodel.HSourceInterID + "," + omodel.HSourceEntryID + ",'" + omodel.HSourceBillNo + "'", "h_p_Sc_ICMOBillWorkQtyStatus_BeforeSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                sReturn = omodel.HInterID.ToString();
                oCn.Commit();
WebAPI/DLL/ClsSc_ICMOReportBill.cs
@@ -155,6 +155,18 @@
                //omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                DataSet ds;
                //保存前控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_BeforeSaveCtrl_New " + omodel.HInterID + "," + oSub.HICMOInterID + "," + oSub.HICMOEntryID + ",'" + oSub.HICMOBillNo + "'", "h_p_Sc_ICMOReportBill_BeforeSaveCtrl_New");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                //主表
                oCn.RunProc("Insert Into Sc_ICMOReportBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMaker,HMakeDate" + 
@@ -228,7 +240,18 @@
                //        return false;
                //    }
                //}
                //
                //
                //
                //保存后控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_AfterSaveCtrl_New " + omodel.HInterID + "," + oSub.HICMOInterID + "," + oSub.HICMOEntryID + ",'" + oSub.HICMOBillNo + "'", "h_p_Sc_ICMOReportBill_AfterSaveCtrl_New");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                sReturn = "新增单据成功!";
                oCn.Commit();
WebAPI/DLL/ClsSc_MESBeginWorkBill.cs
@@ -152,9 +152,21 @@
        {
            try
            {
                DataSet ds;
                //得到mainid
                omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //保存前控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_MESBeginWorkBill_BeforeSaveCtrl " + omodel.HInterID + "," + omodel.HICMOInterID + "," + omodel.HICMOEntryID + ",'" + omodel.HICMOBillNo + "'", "h_p_Sc_MESBeginWorkBill_BeforeSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                //主表
                oCn.RunProc("Insert Into Sc_MESBeginWorkBillMain " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
@@ -175,25 +187,39 @@
              ") ");
                //再次验证 ä¿å­˜æ˜¯å¦ åˆç†
                DataSet ds=oCn.RunProcReturn("exec h_p_JIT_MESBeginWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESBeginWorkBill_SaveCtrl");
                ds = oCn.RunProcReturn("exec h_p_JIT_MESBeginWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESBeginWorkBill_SaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count <= 0) 
                {
                    sReturn = "无验证数据!";
                    oCn.RollBack();
                    return false;
                }
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2") 
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //保存后控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_MESBeginWorkBill_AfterSaveCtrl " + omodel.HInterID + "," + omodel.HICMOInterID + "," + omodel.HICMOEntryID + ",'" + omodel.HICMOBillNo + "'", "h_p_Sc_MESBeginWorkBill_AfterSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                sReturn = omodel.HInterID.ToString();
                oCn.Commit();
                return true;
            }
            catch (Exception e)
            {
                sReturn = e.Message;
                oCn.RollBack();
                throw (e);
            }
        }
WebAPI/DLL/ClsSc_MESEndWorkBill.cs
@@ -158,10 +158,21 @@
        {
            try
            {
                DataSet ds;
                //得到mainid
                omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //保存前控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_MESEndWorkBill_BeforeSaveCtrl " + omodel.HInterID + "," + omodel.HICMOInterID + "," + omodel.HICMOEntryID + ",'" + omodel.HICMOBillNo + "'", "h_p_Sc_MESEndWorkBill_BeforeSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                //主表
                oCn.RunProc("Insert Into Sc_MESEndWorkBillMain " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
@@ -185,7 +196,7 @@
                //再次验证 ä¿å­˜æ˜¯å¦ åˆç†
                DataSet ds = oCn.RunProcReturn("exec h_p_JIT_MESEndWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESEndWorkBill_SaveCtrl");
                ds = oCn.RunProcReturn("exec h_p_JIT_MESEndWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESEndWorkBill_SaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    sReturn = "无验证数据!";
@@ -198,6 +209,18 @@
                    oCn.RollBack();
                    return false;
                }
                //保存后控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_MESEndWorkBill_AfterSaveCtrl " + omodel.HInterID + "," + omodel.HICMOInterID + "," + omodel.HICMOEntryID + ",'" + omodel.HICMOBillNo + "'", "h_p_Sc_MESEndWorkBill_AfterSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                sReturn = omodel.HInterID.ToString();
                oCn.Commit();
                return true;
WebAPI/DLL/ClsSc_MESStopWorkBill.cs
@@ -153,10 +153,21 @@
        {
            try
            {
                DataSet ds;
                //得到mainid
                omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //保存前控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_MESStopWorkBill_BeforeSaveCtrl " + omodel.HInterID + "," + omodel.HICMOInterID + "," + omodel.HICMOEntryID + ",'" + omodel.HICMOBillNo + "'", "h_p_Sc_MESStopWorkBill_BeforeSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                //主表
                oCn.RunProc("Insert Into Sc_MESStopWorkBillMain " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
@@ -177,7 +188,7 @@
                ") ");
                //再次验证 ä¿å­˜æ˜¯å¦ åˆç†
                DataSet ds = oCn.RunProcReturn("exec h_p_JIT_MESStopWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESStopWorkBill_SaveCtrl");
                ds = oCn.RunProcReturn("exec h_p_JIT_MESStopWorkBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_JIT_MESStopWorkBill_SaveCtrl");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    sReturn = "无验证数据!";
@@ -190,6 +201,18 @@
                    oCn.RollBack();
                    return false;
                }
                //保存后控制=========================================
                ds = oCn.RunProcReturn("exec h_p_Sc_MESStopWorkBill_AfterSaveCtrl " + omodel.HInterID + "," + omodel.HICMOInterID + "," + omodel.HICMOEntryID + ",'" + omodel.HICMOBillNo + "'", "h_p_Sc_MESStopWorkBill_AfterSaveCtrl");
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                {
                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    oCn.RollBack();
                    return false;
                }
                //=========================================================
                sReturn = omodel.HInterID.ToString();
                oCn.Commit();
                return true;
WebAPI/Models/StationBill.cs
@@ -77,5 +77,9 @@
        public double HmaterOutqty { get; set; }
        public double HProcPriceRate { get; set; }
        public int HTemporaryAreaID { get; set; }
        public long HMainSourceInterID { get; set; }
        public long HMainSourceEntryID { get; set; }
        public string HMainSourceBillNo { get; set; }
    }
}