| using System; | 
| using System.Collections.Generic; | 
| using System.Data; | 
| using System.Linq; | 
| using System.Web; | 
| using ViewAPI; | 
|   | 
| namespace WebAPI.DLL | 
| { | 
|     public class ClsSc_ICMOStepBillWorkQtyStatus_Tmp : DBUtility.ClsXt_BaseBill | 
|     { | 
|         //生产产量状态临时表 | 
|         public Models.ClsSc_ICMOBillWorkQtyStatus_Tmp omodel = new Models.ClsSc_ICMOBillWorkQtyStatus_Tmp(); | 
|   | 
|         public ClsSc_ICMOStepBillWorkQtyStatus_Tmp() | 
|         { | 
|             base.MvarItemKeySub = ""; | 
|             base.MvarItemKeySub2 = ""; | 
|             base.MvarItemKeySub3 = ""; | 
|             base.MvarItemKeySub4 = ""; | 
|             base.MvarItemKey = "Sc_ICMOBillWorkQtyStatus_Tmp"; | 
|             base.MvarReportTitle = "生产产量状态临时表(工序)"; | 
|             base.BillType = "3724"; | 
|         } | 
|   | 
|         #region 固定代码 | 
|   | 
|         ~ClsSc_ICMOStepBillWorkQtyStatus_Tmp() | 
|         { | 
|         } | 
|   | 
|         #endregion   自定义方法 | 
|   | 
|         //修改单据 | 
|         public override bool ModifyBill(Int64 lngBillKey, ref string sReturn) | 
|         { | 
|             try | 
|             { | 
|                 // | 
|                 oCn.BeginTran(); | 
|                 //更新主表 | 
|                 oCn.RunProc("UpDate Sc_ICMOBillWorkQtyStatus_Tmp set  " + | 
|                 "HSourceID=" + omodel.HSourceID.ToString() + | 
|                 ",HReportType=" + omodel.HReportType.ToString() + | 
|                 ",HPieceQty=" + omodel.HPieceQty.ToString() + | 
|                 ",HQty=" + omodel.HQty.ToString() + | 
|                 ",HBarCode='" + omodel.HBarCode + "'" + | 
|                 ",HAddr='" + omodel.HAddr + "'" + | 
|                 ",HSourceInterID=" + omodel.HSourceInterID.ToString() + | 
|                 ",HSourceEntryID=" + omodel.HSourceEntryID.ToString() + | 
|                 ",HSourceBillNo='" + omodel.HSourceBillNo + "'" + | 
|                 ",HSplitNO='" + omodel.HSplitNO + "'" + | 
|                 ",HSourceBillType='" + omodel.HSourceBillType + "'" + | 
|                 ",HRelationInterID=" + omodel.HRelationInterID.ToString() + | 
|                 ",HRelationEntryID=" + omodel.HRelationEntryID.ToString() + | 
|                 ",HRelationBillNo='" + omodel.HRelationBillNo + "'" + | 
|                 ",HReportEntryID=" + omodel.HReportEntryID.ToString() + | 
|                 ",HGroupID=" + omodel.HGroupID.ToString() + | 
|                 ",HWorkManID=" + omodel.HWorkManID.ToString() + | 
|                 ",HBadQty=" + omodel.HBadQty.ToString() + | 
|                 ",HWasterQty=" + omodel.HWasterQty.ToString() + | 
|                 " where HInterID=" + lngBillKey.ToString()); | 
|                 //删除关联 | 
|                 DeleteRelation(ref sReturn, lngBillKey); | 
|   | 
|                 sReturn = "修改单据成功!"; | 
|                 oCn.Commit(); | 
|                 return true; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 oCn.RollBack(); | 
|                 throw (e); | 
|             } | 
|         } | 
|         //新增单据 | 
|         public override bool AddBill(ref string sReturn) | 
|         { | 
|             try | 
|             { | 
|                 //得到mainid | 
|                 omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo); | 
|                 //若MAINDI重复则重新获取 | 
|                 oCn.BeginTran(); | 
|                 //主表 | 
|   | 
|                 oCn.RunProc("Insert Into Sc_ICMOBillWorkQtyStatus_Tmp   " + | 
|                "(HInterID,HBillType,HSourceID,HReportType,HPieceQty" + | 
|                ",HMaterID,HGroupID,HWorkManID,HWorkReportDate,HDate" + | 
|                ",HBillSubType,HBillNo,HICMOInterID,HICMOEntryID,HICMOBillNo" + | 
|                ",HPlanQty,HQty,HBadQty,HWasterQty,HBarCode,HAddr,HMaker,HMakeDate" + | 
|                ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSplitNO,HSourceBillType" + | 
|                ",HRelationInterID,HRelationEntryID,HRelationBillNo,HReportEntryID,HProcID" + | 
|                ") " + | 
|                 " values(" + omodel.HInterID.ToString() + ",'" + BillType + "'," + omodel.HSourceID.ToString() + "," + omodel.HReportType.ToString() + "," + omodel.HPieceQty.ToString() + | 
|                 "," + omodel.HMaterID.ToString() + ",'" + omodel.HGroupID + "','" + omodel.HWorkManID + "','" + omodel.HWorkReportDate + "','" + omodel.HDate + "'" + | 
|                 ",'" + omodel.HBillSubType.ToString() + "','" + omodel.HBillNo + "','" + omodel.HICMOInterID + "','" + omodel.HICMOEntryID + "','" + omodel.HICMOBillNo + "'" + | 
|                 "," + omodel.HPlanQty.ToString() + "," + omodel.HQty.ToString() + "," + omodel.HBadQty.ToString() + "," + omodel.HWasterQty.ToString() + ",'" + omodel.HBarCode + "','" + omodel.HAddr + "','" + omodel.HMaker + "','" + omodel.HMakeDate + "'" + | 
|                 "," + omodel.HSourceInterID.ToString() + "," + omodel.HSourceEntryID.ToString() + ",'" + omodel.HSourceBillNo + "','" + omodel.HSplitNO + "','" + omodel.HSourceBillType + "'" + | 
|                 "," + omodel.HRelationInterID.ToString() + "," + omodel.HRelationEntryID.ToString() + ",'" + omodel.HRelationBillNo + "'," + omodel.HReportEntryID.ToString() + ",'" + omodel.HProcID + "'" + | 
|                 ") "); | 
|                 //更新关联数量 | 
|                 //AddNewRelation(ref sReturn, omodel.HInterID); | 
|                 //更新关联数量 | 
|                 oCn.RunProc("exec h_p_Sc_UpDateICMOBillStepStatusRelation_Add " + omodel.HInterID); | 
|                 //回填 生产状态表  日计划  为 已完工 状态 | 
|                 //oCn.RunProc("exec h_p_Sc_UpDateICMOBillQualityStatus " + omodel.HICMOStatusInterID.ToString() + ",3"); | 
|   | 
|                 //再次验证 保存是否 合理 | 
|                 DataSet 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 = "无验证数据!"; | 
|                     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; | 
|                 } | 
|   | 
|   | 
|                 sReturn = omodel.HInterID.ToString(); | 
|   | 
|                 oCn.Commit(); | 
|                 return true; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 oCn.RollBack(); | 
|                 throw (e); | 
|             } | 
|         } | 
|         //显示单据 | 
|         public override bool ShowBill(Int64 lngBillKey, ref string sReturn) | 
|         { | 
|             try | 
|             { | 
|                 //查询主表 | 
|                 DataSet Ds; | 
|                 Ds = oCn.RunProcReturn("Select * from Sc_ICMOBillWorkQtyStatus_Tmp Where HInterID=" + lngBillKey.ToString(), "Sc_ICMOBillWorkQtyStatus_Tmp"); | 
|                 if (Ds.Tables[0].Rows.Count == 0) | 
|                 { | 
|                     sReturn = "单据未找到!"; | 
|                     return false; | 
|                 } | 
|                 //赋值 | 
|                 omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]); | 
|                 omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]); | 
|                 omodel.HSourceID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSourceID"]); | 
|                 omodel.HReportType = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HReportType"]); | 
|                 omodel.HPieceQty = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPieceQty"]); | 
|                 omodel.HQty = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HQty"]); | 
|                 omodel.HBarCode = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBarCode"]); | 
|                 omodel.HAddr = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HAddr"]); | 
|                 omodel.HMaker = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMaker"]); | 
|                 omodel.HMakeDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMakeDate"]); | 
|                 omodel.HSourceInterID = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HSourceInterID"]); | 
|                 omodel.HSourceEntryID = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HSourceEntryID"]); | 
|                 omodel.HSourceBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HSourceBillNo"]); | 
|                 omodel.HSplitNO = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HSplitNO"]); | 
|                 omodel.HSourceBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HSourceBillType"]); | 
|                 omodel.HRelationInterID = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HRelationInterID"]); | 
|                 omodel.HRelationEntryID = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HRelationEntryID"]); | 
|                 omodel.HRelationBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRelationBillNo"]); | 
|                 omodel.HReportEntryID = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HReportEntryID"]); | 
|                 omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim(); | 
|                 omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim(); | 
|                 omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim(); | 
|                 omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim(); | 
|                 omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim(); | 
|                 omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim(); | 
|                 omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim(); | 
|                 omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim(); | 
|                 omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim(); | 
|                 omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim(); | 
|                 omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim(); | 
|                 omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim(); | 
|   | 
|                 sReturn = "显示单据成功!"; | 
|                 return true; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 throw (e); | 
|             } | 
|         } | 
|   | 
|   | 
|         //审核 | 
|         public bool CheckBill(int HSourceID, int HSourceInterID, int HSourceEntryID, string HSourceBillNo, int HICMOInterID, int HICMOEntryID, Int64 lngBillKey, ref string sReturn) | 
|         { | 
|   | 
|             try | 
|             { | 
|                 string HChecker = DBUtility.ClsPub.CurUserName; | 
|                 string HCheckDate = DBUtility.ClsPub.GetServerDate(-1); | 
|                 oCn.BeginTran(); | 
|                 oCn.RunProc(" Update " + MvarItemKey + " set HBillStatus='2',HChecker='" + HChecker + "',HCheckDate='" + HCheckDate + "' Where HInterID=" + lngBillKey.ToString()); | 
|                 sReturn = "审核单据成功!"; | 
|                 oCn.Commit(); | 
|                 //生成调拨单 | 
|                 //得到调拨单 mainid 单据号 | 
|                 //long NewInterID = DBUtility.ClsPub.CreateBillID("1207", ref DBUtility.ClsPub.sExeReturnInfo); | 
|                 //string NewBillNo = DBUtility.ClsPub.CreateBillCode("1207", ref DBUtility.ClsPub.sExeReturnInfo, true);//得到新单号 | 
|                 //oCn.RunProc("exec h_p_Kf_MoveStockBill_Add " + lngBillKey.ToString() + "," + NewInterID.ToString() + ",'" + NewBillNo + "','" + HChecker + "'"); | 
|                 // | 
|                 sReturn = ""; | 
|                 return true; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 throw (e); | 
|             } | 
|         } | 
|   | 
|         //反审核 | 
|         public bool AbandonCheck(int HSourceID, int HSourceInterID, int HSourceEntryID, string HSourceBillNo, int HICMOInterID, int HICMOEntryID, Int64 lngBillKey, ref string sReturn) | 
|         { | 
|   | 
|             try | 
|             { | 
|                 string HChecker = DBUtility.ClsPub.CurUserName; | 
|                 string HCheckDate = DBUtility.ClsPub.GetServerDate(-1); | 
|                 oCn.BeginTran(); | 
|                 //还原单据状态为未审核状态 | 
|                 oCn.RunProc(" Update " + MvarItemKey + " set HBillStatus='1',HChecker='',HCheckDate='' Where HInterID=" + lngBillKey.ToString()); | 
|                 sReturn = "审核单据成功!"; | 
|                 oCn.Commit(); | 
|                 //生成调拨单 | 
|                 //得到调拨单 mainid 单据号 | 
|                 //long NewInterID = DBUtility.ClsPub.CreateBillID("1207", ref DBUtility.ClsPub.sExeReturnInfo); | 
|                 //string NewBillNo = DBUtility.ClsPub.CreateBillCode("1207", ref DBUtility.ClsPub.sExeReturnInfo, true);//得到新单号 | 
|                 //oCn.RunProc("exec h_p_Kf_MoveStockBill_Add " + lngBillKey.ToString() + "," + NewInterID.ToString() + ",'" + NewBillNo + "','" + HChecker + "'"); | 
|                 // | 
|                 sReturn = ""; | 
|                 return true; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 throw (e); | 
|             } | 
|         } | 
|   | 
|         //判断是否完工 | 
|         public bool IsEnded(long HInterID, ref string sReturn) | 
|         { | 
|             try | 
|             { | 
|                 DataSet DS; | 
|                 DS = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_WMSQty " + HInterID.ToString(), "Sc_ICMOReportBillSub_WMS"); | 
|                 if (DS.Tables[0].Rows.Count == 0) | 
|                 { | 
|                     return false; | 
|                 } | 
|                 if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HBool"]) != "") | 
|                 { | 
|                     sReturn = "已完工!"; | 
|                     return true; | 
|                 } | 
|                 else | 
|                 { | 
|                     sReturn = "未完工!"; | 
|                     return false; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 throw (e); | 
|             } | 
|         } | 
|   | 
|   | 
|   | 
|   | 
|     } | 
| } |