| using DBUtility; | 
| using Newtonsoft.Json.Linq; | 
| using System; | 
| using System.Collections.Generic; | 
| using System.Data; | 
| using System.Linq; | 
| using System.Net; | 
| using System.Net.Http; | 
| using System.Web.Http; | 
| using WebAPI.Models; | 
|   | 
| namespace WebAPI.Controllers | 
| { | 
|     public class Sc_PckSplitBillController : ApiController | 
|     { | 
|         private JsonResult objJsonResult = new JsonResult(); | 
|         public DataSet ds = new DataSet(); | 
|         public double sRelQty = 0; | 
|         SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); | 
|         public WebServer webserver = new WebServer(); | 
|         /// <summary> | 
|         /// 拆箱单扫描托条码/直接调用webservice | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("PackSplitBill/SetPackBarCode_Webs")] | 
|         [HttpGet] | 
|         public Object SetPackBarCode_Webs(Int64 sInterID, string sBillNo, string sBillType, string HTBarCode, string sMaker,Int64 HOWNERID) | 
|         { | 
|             try | 
|             { | 
|                 WebS.WebService1 oWebs = new WebS.WebService1(); | 
|                 WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS(); | 
|                 //string sExpressNumber = ""; | 
|                 WebSoBar = oWebs.get_CheckTypeByPackBarCode_Pack(sInterID, sBillNo, sBillType,HTBarCode,sMaker,HOWNERID,ref DBUtility.ClsPub.sErrInfo); | 
|                 if (WebSoBar == null) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = WebSoBar; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = e.Message + ";" + e.StackTrace; | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|   | 
|         } | 
|   | 
|         /// <summary> | 
|         /// 装箱单扫描托条码/直接调用webservice | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("PackUnionBill/SetPackBarCode_Webs1")] | 
|         [HttpGet] | 
|         public Object SetPackBarCode_Webs1(Int64 sInterID, string sBillNo, string sBillType, string HTBarCode, string sMaker, Int64 HOWNERID) | 
|         { | 
|             try | 
|             { | 
|                 WebS.WebService1 oWebs = new WebS.WebService1(); | 
|                 WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS(); | 
|                 //string sExpressNumber = ""; | 
|                 WebSoBar = oWebs.get_CheckTypeByPackBarCode_Pack(sInterID, sBillNo, sBillType, HTBarCode, sMaker, HOWNERID, ref DBUtility.ClsPub.sErrInfo); | 
|                 if (WebSoBar == null) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = WebSoBar; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = e.Message + ";" + e.StackTrace; | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|   | 
|         } | 
|   | 
|         [Route("PackSplitBill/GetBillEntry_TmpList_Pack")] | 
|         [HttpGet] | 
|         public object GetBillEntry_TmpList_Pack(Int64 HBillID, string HBillNo, string HBillType) | 
|         { | 
|             try | 
|             { | 
|                 WebS.WebService1 oWebs = new WebS.WebService1(); | 
|                 ds = oWebs.GetBillEntry_TmpList_Pack(HBillID, HBillNo, HBillType, ref DBUtility.ClsPub.sErrInfo); | 
|                 if (ds == null || ds.Tables[0].Rows.Count <= 0) | 
|                 { | 
|   | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "没有返回任何记录!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                     //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning); | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "获取信息成功!"; | 
|                     objJsonResult.data = ds.Tables[0]; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "没有返回任何记录!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|   | 
|         [Route("PackUnionBill/GetBillEntry_TmpList_Pack1")] | 
|         [HttpGet] | 
|         public object GetBillEntry_TmpList_Pack1(Int64 HBillID, string HBillNo, string HBillType) | 
|         { | 
|             try | 
|             { | 
|                 WebS.WebService1 oWebs = new WebS.WebService1(); | 
|                 ds = oWebs.GetBillEntry_TmpList_Pack(HBillID, HBillNo, HBillType, ref DBUtility.ClsPub.sErrInfo); | 
|                 if (ds == null || ds.Tables[0].Rows.Count <= 0) | 
|                 { | 
|   | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "没有返回任何记录!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                     //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning); | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "获取信息成功!"; | 
|                     objJsonResult.data = ds.Tables[0]; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "没有返回任何记录!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|   | 
|   | 
|         /// <summary> | 
|         /// 拆箱单扫描拆箱条码/直接调用webservice | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("PackSplit/get_CheckTypeByBarCode_Json")] | 
|         [HttpGet] | 
|         public Object get_CheckTypeByBarCode_Json(string HBarCode,Int64 sInterID, string HBillType, string sBillNo, string HTBarCode, string sMaker, Int64 HOWNERID) | 
|         { | 
|             try | 
|             { | 
|                 WebS.WebService1 oWebs = new WebS.WebService1(); | 
|                 if (oWebs.get_CheckTypeByBarCode_PackSplit(HBarCode, sInterID, HBillType, sBillNo, HTBarCode, sMaker, HOWNERID, ref DBUtility.ClsPub.sErrInfo)) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "扫码成功!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = e.Message + ";" + e.StackTrace; | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|   | 
|         } | 
|   | 
|   | 
|         /// <summary> | 
|         /// 拆箱单扫描拆箱条码/直接调用webservice | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("PackUnionBill/get_CheckTypeByBarCode_Json1")] | 
|         [HttpGet] | 
|         public Object get_CheckTypeByBarCode_Json1(string HBarCode, Int64 sInterID, string HBillType, string sBillNo, string HTBarCode, string sMaker, Int64 HOWNERID) | 
|         { | 
|             try | 
|             { | 
|                 WebS.WebService1 oWebs = new WebS.WebService1(); | 
|                 if (oWebs.get_CheckTypeByBarCode_PackUnion(HBarCode, sInterID, HBillType, sBillNo, HTBarCode, sMaker, HOWNERID, ref DBUtility.ClsPub.sErrInfo)) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "扫码成功!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = e.Message + ";" + e.StackTrace; | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|   | 
|         } | 
|   | 
|   | 
|         [Route("PackSplit/Delete")] | 
|         [HttpGet] | 
|         public object Delete(long HInterID, string  HBarCode,string HBillType) | 
|         { | 
|             string sErrMsg = string.Empty; | 
|             try | 
|             { | 
|                 if (DeletePackSplitBill(HInterID, HBarCode, HBillType, ref sErrMsg)) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "删除成功!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "删除失败!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "删除失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|   | 
|         } | 
|   | 
|   | 
|         public bool DeletePackSplitBill(long HInterID, string HBarCode, string HBillType, ref string sErrMsg) | 
|         { | 
|             WebS.WebService1 oWebs = new WebS.WebService1(); | 
|   | 
|             if (oWebs.set_DelPonderationBillMain_Temp_Pack(HInterID, HBarCode, HBillType, ref DBUtility.ClsPub.sErrInfo)) | 
|             { | 
|                 sErrMsg = "删除成功!"; | 
|                 return true; | 
|             } | 
|             else | 
|             { | 
|                 sErrMsg = "删除失败!"; | 
|                 return false; | 
|             } | 
|         } | 
|   | 
|         /// <summary> | 
|         /// 生成拆箱单 | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("PackSplit/set_SavePackSplitBill_Json")] | 
|         [HttpGet] | 
|         public Object set_SavePackSplitBill_Json(long sInterID, string HBillType, string sBillNo,string HTBarCode,string sMaker,long HOWNERID) | 
|         { | 
|             try | 
|             { | 
|                 | 
|                 if (set_SavePackSplitBill_New(sInterID, HBillType, sBillNo, HTBarCode, sMaker, HOWNERID, ref DBUtility.ClsPub.sErrInfo)) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "生成成功!单据号为:"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "上传失败!" + DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "上传失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|   | 
|         public bool set_SavePackSplitBill_New(long sInterID, string HBillType, string sBillNo, string HTBarCode, string sMaker, long HOWNERID, ref string sErrMsg) | 
|         { | 
|             WebS.WebService1 oWebs = new WebS.WebService1(); | 
|             if (oWebs.set_SavePackSplitBill_New(sInterID, HBillType, sBillNo, HTBarCode, sMaker, HOWNERID, ref sErrMsg)) | 
|             { | 
|                 sErrMsg = "保存成功!" + sBillNo; | 
|                 return true; | 
|             } | 
|             else | 
|             { | 
|                 sErrMsg = "单据号:" + sBillNo + ", 单据ID:" + sInterID + ";" + sErrMsg; | 
|                 return false; | 
|             } | 
|         } | 
|   | 
|         #region 生产领料拆码列表 | 
|          | 
|         [Route("Sc_PckSplit/Get_PPickingBillList")] | 
|         [HttpGet] | 
|         public Object Get_PPickingBillList(string sWhere) | 
|         { | 
|             try | 
|             { | 
|                 string sql1 = string.Format(@"select * from h_v_Kf_ICStockBillList where 1=1 " + sWhere); | 
|                  DataSet ds=oCn.RunProcReturn(sql1, "h_v_Kf_ICStockBillList"); | 
|                 if (ds.Tables[0].Rows.Count == 0 || ds == null) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "暂无数据" + DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "1"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "查询成功"; | 
|                     objJsonResult.data = ds.Tables[0]; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "上传失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|         #endregion | 
|   | 
|         #region 产线关键件绑定 | 
|         /// <summary> | 
|         /// SN号查询 | 
|         /// </summary> | 
|         /// <param name="HBarCode">SN号</param> | 
|         /// <returns></returns> | 
|         [Route("Sc_PckSplit/Get_PHPCruxSNBillList")] | 
|         [HttpGet] | 
|         public Object Get_PHPCruxSNBillList(int HinterID, string HBarCode,int HProcID,string HBillNo) | 
|         { | 
|             try | 
|             { | 
|                 string sql1 = string.Format($"exec h_p_Sc_PHPCruxSNBillTOTemp '"+HBarCode+"',"+HinterID+","+HProcID+",'"+ HBillNo+"'"); | 
|                 DataSet ds = oCn.RunProcReturn(sql1, "h_p_Sc_PHPCruxSNBillTOTemp"); | 
|                 if (ds.Tables[0].Rows.Count == 0 || ds == null) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "暂无数据!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["sel"]) ==0) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "暂无数据!"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else{ | 
|                     //先存进临时表再返回数据 | 
|                     objJsonResult.code = "1"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "查询成功"; | 
|                     objJsonResult.data = ds.Tables[0]; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "上传失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|   | 
|         /// <summary> | 
|         /// 关键码查询 | 
|         /// </summary> | 
|         /// <param name="HBarCode">关键码</param> | 
|         /// <returns></returns> | 
|         [Route("Sc_PckSplit/Get_PHPCruxBillList")] | 
|         [HttpGet] | 
|         public Object Get_PHPCruxBillList(int HinterID,string HPCrux,string HBillNo) | 
|         { | 
|             try | 
|             { | 
|                 string sql1 = string.Format($"exec h_p_Sc_PHPCruxBillTOTemp '" +HPCrux+"',"+ HinterID+",'"+ HBillNo+"'"); | 
|                 DataSet ds = oCn.RunProcReturn(sql1, "h_p_Sc_PHPCruxBillTOTemp"); | 
|                 if (ds.Tables[0].Rows.Count == 0 || ds == null) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "未查询到条形码信息!" + DBUtility.ClsPub.sErrInfo; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else if (ds.Tables[0].Rows[0]["HBack"].ToString() == "2") | 
|                 { | 
|                     objJsonResult.code = "2"; | 
|                     objJsonResult.count = 2; | 
|                     objJsonResult.Message = "错误!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0][1]); | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|                 else | 
|                 { | 
|                     //先存进临时表再返回数据 | 
|                     objJsonResult.code = "1"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "查询成功"; | 
|                     objJsonResult.data = ds.Tables[0]; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "上传失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|   | 
|         /// <summary> | 
|         /// 扫码缓存删除 | 
|         /// </summary> | 
|         /// <param name="HBarCode">关键码</param> | 
|         /// <returns></returns> | 
|         [Route("Sc_PckSplit/Delete_PHPCruxBillListByME")] | 
|         [HttpGet] | 
|         public Object Delete_PHPCruxBillListByME(int HInterID,int HMaterID,string HBarCode) | 
|         { | 
|             try | 
|             { | 
|                 oCn.BeginTran(); | 
|                 string sql = string.Format(@"delete Sc_AssemblyBill_BindBarCodeTemp where HInterID="+ HInterID+" and HMaterID="+ HMaterID+ " and HBarCode='" + HBarCode+"'"); | 
|                 oCn.RunProc(sql); | 
|                 //删除成功 | 
|                 string sql1= string.Format(@"select  a.HEntryID,a.HMaterID,m.HName HMaterName,m.HModel HMaterSpec,1 HQty,HBarCode HPJM | 
|                             from Sc_AssemblyBill_BindBarCodeTemp a left join Gy_Material m on a.HMaterID=m.HItemID | 
|                             where HInterID=" + HInterID); | 
|                 DataSet ds=oCn.RunProcReturn(sql1, "Sc_AssemblyBill_BindBarCodeTemp"); | 
|                 oCn.Commit(); | 
|                 objJsonResult.code = "1"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; | 
|                 objJsonResult.data = ds.Tables[0]; | 
|                 return objJsonResult; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 oCn.RollBack(); | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "上传失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|   | 
|         /// <summary> | 
|         /// 组装单提交 | 
|         /// </summary> | 
|         /// <param name="HBarCode">关键码</param> | 
|         /// <returns></returns> | 
|         [Route("Sc_PckSplit/Add_PHPCruxBillList")] | 
|         [HttpPost] | 
|         public Object Add_PHPCruxBillList([FromBody] JObject msg) | 
|         { | 
|             var _value = msg["msg"].ToString(); | 
|             string msg1 = _value.ToString(); | 
|             string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); | 
|             string msg2 = sArray[0].ToString();//基本资料 | 
|             string msg3 = sArray[1].ToString();//配件列表 | 
|             string msg4 = sArray[2].ToString();//条码列表 | 
|             string msg5 = sArray[3].ToString();//登录人 | 
|             ListModels oListModels = new ListModels(); | 
|             long HinterID; | 
|             string HBillNo = ""; | 
|   | 
|             try | 
|             { | 
|                 DLL.ClsSc_PHPCruxBillBill oBill = new DLL.ClsSc_PHPCruxBillBill(); | 
|                 List<Models.ClsSc_AssemblyBillMain> lsmain = new List<Models.ClsSc_AssemblyBillMain>();//基本资料 | 
|                 List<Models.ClsSc_AssemblyBillMain> lspjItme = new List<Models.ClsSc_AssemblyBillMain>();//配件列表 | 
|                 List<Models.ClsSc_AssemblyBillSub> lstmItme = new List<Models.ClsSc_AssemblyBillSub>();//扫码列表 | 
|                 //基本资料_json格式转换 | 
|                 msg2 = msg2.Replace("\\", ""); | 
|                 msg2 = msg2.Replace("\n", "");   | 
|                 lsmain = oListModels.getObjectByJson_Sc_AssemblyBillMain(msg2); | 
|   | 
|                 HinterID = lsmain[0].HInterID;//主ID | 
|                 HBillNo = lsmain[0].HBillNo;//单据号 | 
|   | 
|   | 
|                 //事务开始 | 
|                 oCn.BeginTran(); | 
|                 //根据interID在源单临时表中查找数据 | 
|                 DataSet ds1 = oCn.RunProcReturn("select top 1 * from Sc_AssemblyBill_BindSourceTemp where HInterID=" + HinterID, "Sc_AssemblyBill_BindSourceTemp"); | 
|                //保存生产组装单主表 | 
|                 string sql = "Insert Into Sc_AssemblyBillMain   " + | 
|                         "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate," + | 
|                         "HBillNo,HBillStatus,HMaker,HMakeDate" + | 
|                         ",HMainSourceInterID,HMainSourceBillNo" + | 
|                         ",HICMOInterID,HICMOBillNo,HBarCode_P,HMaterID,HUnitID,HAssemblyStatus" + | 
|                         ") " + | 
|                         " values('" + DateTime.Now.Year + "','" + DateTime.Now.Month + "',3727,3727," + HinterID + ",'" + DateTime.Now+ | 
|                         "','" + HBillNo + "',1,'"+msg5+"',getdate()" + | 
|                         ",0,'" + lsmain[0].HBarCode + "'" +  | 
|                         "," + ds1.Tables[0].Rows[0]["HSourceInterID"].ToString() + ",'" + ds1.Tables[0].Rows[0]["HSourceBillNo"].ToString() + "','" + lsmain[0].HBarCode + "',0,0,'生产中'" +  | 
|                         ") "; | 
|                 oCn.RunProc(sql); | 
|   | 
|                 //根据interID在扫码临时表中查找数据 | 
|                 DataSet ds2 = oCn.RunProcReturn("select * from Sc_AssemblyBill_BindBarCodeTemp where HInterID=" + HinterID, "Sc_AssemblyBill_BindBarCodeTemp"); | 
|                 for (int i = 0; i < ds2.Tables[0].Rows.Count; i++) | 
|                 { | 
|                     string sq2 = "Insert Into Sc_AssemblyBillSub   " + | 
|                         "(HInterID,HBillNo_bak,HEntryID," + | 
|                         "HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" + | 
|                         ",HMaterID,HSourceID,HEquipID,HUnitID,HQty,HGroupID,HWorkerID,HScanDate,HBarCode,HBarCode_P,HSNNumber" + | 
|                         ") " + | 
|                         " values(" + HinterID + ",'" + HBillNo + "'," + i + | 
|                         "," + ds2.Tables[0].Rows[i]["HSourceInterID"].ToString() + "," + ds2.Tables[0].Rows[i]["HSourceEntryID"].ToString() + ",'" + ds2.Tables[0].Rows[i]["HSourceBillNo"].ToString() + "'" + | 
|                         ",''," + ds2.Tables[0].Rows[i]["HMaterID"].ToString() + ",'"+ lsmain[0].HSCZYID + "',0,0,1," + lsmain[0].HGroupID + "," + lsmain[0].HKeeperID + ",getdate(),'" + ds2.Tables[0].Rows[i]["HBarCode"].ToString() + "','" + ds2.Tables[0].Rows[i]["HBarCode"].ToString() + "','" + lsmain[0].HBarCode + "'" + | 
|                         ") "; | 
|                     oCn.RunProc(sq2); | 
|                 } | 
|                 oCn.Commit(); | 
|                 objJsonResult.code = "1"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message ="提交成功"; | 
|                 objJsonResult.data =null; | 
|                 return objJsonResult; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 oCn.RollBack(); | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "上传失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|         #endregion | 
|   | 
|     } | 
| } |