yxj
2022-05-17 5cf8e9d63d09a81d8dd01439d5bc1c619d6a2378
Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API
3个文件已修改
351 ■■■■ 已修改文件
WebAPI/Controllers/博日自动扫码线/ScanlineAPIController.cs 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/生产管理/生产任务单/Sc_ICMOBillController.cs 301 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/ClsQK_PackingBill.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/²©ÈÕ×Ô¶¯É¨ÂëÏß/ScanlineAPIController.cs
@@ -45,9 +45,9 @@
                    sPeriod = sPeriod.Substring(sPeriod.Length - 2, 2);
                    string sDay = "0" + ClsPub.isDate(sDate).Day.ToString();
                    sDay = sDay.Substring(sDay.Length - 2, 2);
                    string  sTMNumber ="ZX"+ sYear + sPeriod + sDay;
                    string sTMNumber = "ZX" + sYear + sPeriod + sDay;
                    ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //获取最大流水号
                    int LSH = ClsPub.isInt(ds.Tables[0].Rows[0][0])+1;  //流水号加1
                    int LSH = ClsPub.isInt(ds.Tables[0].Rows[0][0]) + 1;  //流水号加1
                    string TM = sTMNumber + LSH;
                    jsn.packagebarcode = TM;
                    oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
@@ -55,14 +55,15 @@
                }
                objJsonResult.status = 0;
                objJsonResult.msg = "查询数据成功!";
                objJsonResult.data =objJsonResult.data;
                objJsonResult.data = objJsonResult.data;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.status =-1;
                LogService.Write("错误:" + e.Message.ToString());
                objJsonResult.status = -1;
                objJsonResult.msg = "生成箱条码失败!";
                objJsonResult.data =null;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
@@ -80,7 +81,7 @@
                ScanLineCode list = js.Deserialize<ScanLineCode>(msg.ToString());    //将json数据转化为对象类型并赋值给list
                if (list.billno != "" && list.billno != null)  //任务单号,非必须,非空则校验barcodes里barcode是否由此任务单制作生成的
                {
                    ds = oCN.RunProcReturn("Select HBarCode barcode,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType from Gy_BarCodeBill where HSourceBillNo='" + list.billno.ToString().Trim()+"'  Order by HItemID ", "Gy_BarCodeBill");
                    ds = oCN.RunProcReturn("Select HBarCode barcode,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType from Gy_BarCodeBill where HSourceBillNo='" + list.billno.ToString().Trim() + "'  Order by HItemID ", "Gy_BarCodeBill");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.status = -1;
@@ -89,21 +90,21 @@
                        return objJsonResult;
                    }
                    List<string> NameList = (from r in ds.Tables[0].AsEnumerable() select r.Field<string>("barcode")).ToList();
                    List<string> NameList1= list.barcodes.Select(t => t.barcode).ToList();
                    List<string> NameList1 = list.barcodes.Select(t => t.barcode).ToList();
                    var strList = NameList1.Except(NameList).ToList();  //判断提交数据中条码是否存在于订单中
                    if (strList.Count > 0)
                    if (strList.Count > 0)
                    {
                        string Str=String.Join(",", strList.ToArray());
                        string Str = String.Join(",", strList.ToArray());
                        objJsonResult.status = -1;
                        objJsonResult.msg = "条码:"+ Str.ToString()+" ä¸åŒ…含在订单:"+list.billno+"中!";
                        objJsonResult.msg = "条码:" + Str.ToString() + " ä¸åŒ…含在订单:" + list.billno + "中!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    }
                }
                DLL.ClsSc_PackUnionBill oBill = new DLL.ClsSc_PackUnionBill();
                //判断箱码是否存在
                bool IsBarCodePack = oBill.IsBarCodePack(list.packagebarcode);
                if (IsBarCodePack == false)
                if (IsBarCodePack == false)
                {
                    objJsonResult.status = -1;
                    objJsonResult.msg = "箱码已存在,不能重复绑定!";
@@ -124,7 +125,7 @@
                oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
                oItem.HBillType = "3783";
                oItem.HBillSubType = "3783";
                oItem.HDate= DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                oItem.HDate = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                oItem.HBillNo = DBUtility.ClsPub.CreateBillCode(oItem.HBillType, ref DBUtility.ClsPub.sExeReturnInfo, true);
                oItem.HBillStatus = 1;
                oItem.HCheckItemNowID = 0;
@@ -146,10 +147,10 @@
                oItem.HDeleteDate = "";
                oItem.HICMOInterID = 0;
                oItem.HICMOBillNo = "";
                oItem.HBarCode_Pack= list.packagebarcode;
                oItem.HBarCode_Pack = list.packagebarcode;
                oItem.HMaterID = 0;
                oItem.HUnitID = 0;
                oItem.HUseFlag =false;   //有效状态
                oItem.HUseFlag = false;   //有效状态
                oBill.omodel = oItem;
                for (int i = 0; i < list.barcodes.Count; i++)
                {
@@ -164,14 +165,14 @@
                    }
                    Models.ClsSc_PackUnionBillSub oItemSub = new ClsSc_PackUnionBillSub();
                    ds0 = oCN.RunProcReturn("Select HBarCode,HMaterID,HUnitID,HQty,HSourceID,HGroupID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType from Gy_BarCodeBill where HSourceBillNo='" + list.billno.ToString().Trim() + "' and HBarCode='" + list.barcodes[i].barcode + "'  Order by HItemID ", "Gy_BarCodeBill");
                    oItemSub.HEntryID = i+1;
                    oItemSub.HEntryID = i + 1;
                    oItemSub.HMaterID = DBUtility.ClsPub.isLong(ds0.Tables[0].Rows[0]["HMaterID"].ToString());
                    oItemSub.HUnitID = DBUtility.ClsPub.isLong(ds0.Tables[0].Rows[0]["HUnitID"].ToString());
                    oItemSub.HQty = DBUtility.ClsPub.isDoule(ds0.Tables[0].Rows[0]["HQty"].ToString());
                    oItemSub.HSourceID = DBUtility.ClsPub.isLong(ds0.Tables[0].Rows[0]["HSourceID"].ToString());
                    oItemSub.HEquipID = 0;
                    oItemSub.HGroupID = DBUtility.ClsPub.isLong(ds0.Tables[0].Rows[0]["HGroupID"].ToString());
                    oItemSub.HWorkerID = 0;
                    oItemSub.HWorkerID = 0;
                    oItemSub.HBarCode = list.barcodes[i].barcode;
                    oItemSub.HBarCode_Pack = list.packagebarcode;
                    oItemSub.HCloseMan = "";
@@ -202,7 +203,7 @@
                    objJsonResult.status = 0;
                    objJsonResult.msg = "success";
                    objJsonResult.data = null;
                    Log.LogSaveInfo("提交成功箱条码:"+ list.packagebarcode); //记录提交数据
                    Log.LogSaveInfo("提交成功箱条码:" + list.packagebarcode); //记录提交数据
                    return objJsonResult;
                }
                else
@@ -215,7 +216,7 @@
            }
            catch (Exception e)
            {
                objJsonResult.status =-1;
                objJsonResult.status = -1;
                objJsonResult.msg = e.Message;
                objJsonResult.data = null;
                return objJsonResult;
@@ -232,7 +233,7 @@
            {
                //判断是否入库 
                ds = oCN.RunProcReturn("select * from Sc_ScanLineInStock where HBarCode_Pack='" + packagebarcode + "'", "Sc_ScanLineInStock");
                if (ds!= null && ds.Tables[0].Rows.Count>0)
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.status = -1;
                    objJsonResult.msg = "该箱条码已入库不允许取消!";
@@ -249,7 +250,7 @@
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("Select 1 from Gy_BarCodeBill where HBarCode='" + packagebarcode.ToString().Trim() + "' and HStopflag='1'", "Gy_BarCodeBill");
                if (ds != null && ds.Tables[0].Rows.Count>0)
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.status = -1;
                    objJsonResult.msg = "此箱条码已作废";
@@ -262,11 +263,11 @@
                //删除SUM主表
                oCN.RunProc("Delete From Sc_PackUnionBillSub_Sum  where HBarCode_Pack='" + packagebarcode.ToString() + "'");
                //删除子表
                oCN.RunProc("Delete From Sc_PackUnionBillSub  where HBarCode_Pack='"+ packagebarcode.ToString() + "'");
                oCN.RunProc("Delete From Sc_PackUnionBillSub  where HBarCode_Pack='" + packagebarcode.ToString() + "'");
                //删除主表
                oCN.RunProc("Delete From Sc_PackUnionBillMain  where HBarCode_Pack='" + packagebarcode.ToString() + "'");
                //作废条码档案表
                oCN.RunProc("Update  Gy_BarCodeBill set HStopflag='1'  where HBarCode='"+ packagebarcode.ToString()+ "'");
                oCN.RunProc("Update  Gy_BarCodeBill set HStopflag='1'  where HBarCode='" + packagebarcode.ToString() + "'");
                oCN.Commit();
@@ -296,7 +297,7 @@
                //string aa=list.getWeek(Convert.ToDateTime(tim));
                string aa = list.GetCodeDateStr(Convert.ToDateTime(tim));
                objJsonResult.status = 0;
                objJsonResult.msg =aa.ToString();
                objJsonResult.msg = aa.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
WebAPI/Controllers/Éú²ú¹ÜÀí/Éú²úÈÎÎñµ¥/Sc_ICMOBillController.cs
@@ -109,33 +109,33 @@
        {
            try
            {
                //string sql = string.Format(@"select a.HInterID,a.HBillNo,a.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, a.HUnitID,u.HName HUnitName,b.HQty HPlanQty,a.HCusID, c.HName HCusName,a.HEmpID,e.HName HEmpName,a.HDeptID,d.HName HDeptName,a.HPlanEndDate,0 HMinQty,0 HTotalQty,0 HSpsQty,a.HSeOrderBillNo
                //                            from Sc_ICMOBillMain a
                //                            left join Sc_ICMOBillSub b on a.HInterID=b.HInterID
                //                            left join Gy_Material m on b.HMaterID=m.HItemID
                //                            left join Gy_Unit u on b.HUnitID=u.HItemID
                //                            left join Gy_Customer c on a.HCusID=c.HItemID
                //                            left join Gy_Employee e on a.HEmpID=e.HItemID
                //                            left join Gy_Department d on a.HDeptID=d.HItemID
                //                            where b.HInterID=(select HICMOInterID from Sc_PPBomBillMain where HBillNo='" + HBillNo + "')");
                string sql = string.Format(@" select a.HInterID,a.HBillNo,a.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, a.HUnitID,u.HName HUnitName,b.HQty HPlanQty,a.HCusID,
                    c.HName HCusName,a.HEmpID,e.HName HEmpName,a.HDeptID,d.HName HDeptName,a.HPlanEndDate,0 HMinQty,0 HTotalQty,0 HSpsQty,a.HSeOrderBillNo
                     ,fo.FBILLNO FBillNo,fo.F_ZZZZ_TEXT7 FLXName,fo.FRECEIVEADDRESS FInAddress,fm1.FOLDNUMBER FMaterName,fo.F_ZZZZ_TEXT FBZFS,fu.FDATAVALUE FHX,
                    fu1.FDATAVALUE FQK,fo.F_ZZZZ_WBBZ FWBBZ
                    from Sc_ICMOBillMain a
                    left join Sc_ICMOBillSub b on a.HInterID=b.HInterID
                    left join Gy_Material m on b.HMaterID=m.HItemID
                    left join Gy_Unit u on b.HUnitID=u.HItemID
                    left join Gy_Customer c on a.HCusID=c.HItemID
                    left join Gy_Employee e on a.HEmpID=e.HItemID
                    left join Gy_Department d on a.HDeptID=d.HItemID
                     left join AIS20200908101915zs..T_PRD_MOENTRY f1 on b.HERPEntryID=f1.FENTRYID
                    left join AIS20200908101915zs..T_SAL_ORDER fo on f1.FSaleOrderId =fo.FID
                    left join AIS20200908101915zs..T_SAL_ORDERENTRY fo1 on fo.FID=fo1.FID
                    left join AIS20200908101915zs..T_BD_MATERIAL fm1 on fo1.FSUBMATERIALNUMBER=fm1.FMATERIALID
                    LEFT JOIN AIS20200908101915zs..T_BAS_ASSISTANTDATAENTRY_L fu1 on fo1.F_ZZZZ_ASSISTANT1=fu1.FENTRYID
                    LEFT JOIN AIS20200908101915zs..T_BAS_ASSISTANTDATAENTRY_L fu on fo1.F_ZZZZ_ASSISTANT2=fu.FENTRYID
                     where b.HInterID=(select HICMOInterID from Sc_PPBomBillMain where HBillNo='" + HBillNo + "')");
                string sql = string.Format(@"select a.HInterID,a.HBillNo,b.HEntryID,a.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, a.HUnitID,u.HName HUnitName,b.HQty HPlanQty,a.HCusID, c.HName HCusName,a.HEmpID,e.HName HEmpName,a.HDeptID,d.HName HDeptName,a.HPlanEndDate,0 HMinQty,0 HTotalQty,0 HSpsQty,a.HSeOrderBillNo
                                            from Sc_ICMOBillMain a
                                            left join Sc_ICMOBillSub b on a.HInterID=b.HInterID
                                            left join Gy_Material m on b.HMaterID=m.HItemID
                                            left join Gy_Unit u on b.HUnitID=u.HItemID
                                            left join Gy_Customer c on a.HCusID=c.HItemID
                                            left join Gy_Employee e on a.HEmpID=e.HItemID
                                            left join Gy_Department d on a.HDeptID=d.HItemID
                                            where b.HInterID=(select HICMOInterID from Sc_PPBomBillMain where HBillNo='" + HBillNo + "')");
                //string sql = string.Format(@" select a.HInterID,a.HBillNo,b.HEntryID,a.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, a.HUnitID,u.HName HUnitName,b.HQty HPlanQty,a.HCusID,
                //    c.HName HCusName,a.HEmpID,e.HName HEmpName,a.HDeptID,d.HName HDeptName,a.HPlanEndDate,0 HMinQty,0 HTotalQty,0 HSpsQty,a.HSeOrderBillNo
                //     ,fo.FBILLNO FBillNo,fo.F_ZZZZ_TEXT7 FLXName,fo.FRECEIVEADDRESS FInAddress,fm1.FOLDNUMBER FMaterName,fo.F_ZZZZ_TEXT FBZFS,fu.FDATAVALUE FHX,
                //    fu1.FDATAVALUE FQK,fo.F_ZZZZ_WBBZ FWBBZ
                //    from Sc_ICMOBillMain a
                //    left join Sc_ICMOBillSub b on a.HInterID=b.HInterID
                //    left join Gy_Material m on b.HMaterID=m.HItemID
                //    left join Gy_Unit u on b.HUnitID=u.HItemID
                //    left join Gy_Customer c on a.HCusID=c.HItemID
                //    left join Gy_Employee e on a.HEmpID=e.HItemID
                //    left join Gy_Department d on a.HDeptID=d.HItemID
                //     left join AIS20200908101915zs..T_PRD_MOENTRY f1 on b.HERPEntryID=f1.FENTRYID
                //    left join AIS20200908101915zs..T_SAL_ORDER fo on f1.FSaleOrderId =fo.FID
                //    left join AIS20200908101915zs..T_SAL_ORDERENTRY fo1 on fo.FID=fo1.FID
                //    left join AIS20200908101915zs..T_BD_MATERIAL fm1 on fo1.FSUBMATERIALNUMBER=fm1.FMATERIALID
                //    LEFT JOIN AIS20200908101915zs..T_BAS_ASSISTANTDATAENTRY_L fu1 on fo1.F_ZZZZ_ASSISTANT1=fu1.FENTRYID
                //    LEFT JOIN AIS20200908101915zs..T_BAS_ASSISTANTDATAENTRY_L fu on fo1.F_ZZZZ_ASSISTANT2=fu.FENTRYID
                //     where b.HInterID=(select HICMOInterID from Sc_PPBomBillMain where HBillNo='" + HBillNo + "')");
                ds = oCN.RunProcReturn(sql, "Sc_ICMOBillMain");
                if (ds.Tables[0].Rows.Count != 0 || ds != null)
@@ -197,81 +197,31 @@
                string month = DateTime.Now.Month.ToString();
                string day = DateTime.Now.Day.ToString();
                string nowDate = year + month + day;
                string materid = "";
                //string materid = "";
                //long sum = 0;
                //if (msg4 == "ZZ")
                //{
                string FID = "";
                int LSH;
                string LSH2;
                string TM = "";
                long sum = 0;
                if (msg4 == "ZZ")
                foreach (Models.ClsQK_PackingBill oItemSub in ls)
                {
                    string FID = "";
                    oCN.BeginTran();
                    foreach (Models.ClsQK_PackingBill oItemSub in ls)
                    //根据生成条数生成相应数量条码
                    for (int i = 0; i < oItemSub.HTotalQty; i++)
                    {
                        //根据生成条数生成相应数量条码
                        foreach (var item in oItemSub.HTotalQty.ToString())
                        {
                            //生成唯一条码   æ¡ç å‰ç¼€ = ç»„织代码 + ç‰©æ–™ä»£ç  + å¹´ + æœˆ + æ—¥
                            string sTMNumber = OrgNum + oItemSub.HMaterNumber + nowDate;
                            Ds1 = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //获取最大流水号
                            LSH = ClsPub.isInt(Ds1.Tables[0].Rows[0][0]);//唯一码
                            LSH = LSH + 1;
                            LSH2 = LSH.ToString();
                            while (LSH2.Length<6)
                            {
                                LSH2 = "0" + LSH2;
                            }
                            TM = sTMNumber + LSH2;
                            //获取内码
                            long HInterID = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                            string str = string.Format(@"insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                                        ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
                                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
                                        ",HBarcodeQtys,HBarcodeNo,HDeptID,HWhID,HSPID,HRemark " +
                                        ",HCusID,HCusType,HEndDate,HWorkLineName,HBarCodeDate " +
                                        ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID " +
                                        ",HGiveAwayFlag " +
                                        ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo " +
                                        ") values ("
                                        + "'" + TM + "','唯一条码'," + oItemSub.HMaterID.ToString() + "," + oItemSub.HUnitID.ToString() + "," + oItemSub.HMinQty.ToString()
                                        + ",'',0,0,'" + msg3 + "',getdate(),0," + oItemSub.HMinQty.ToString()
                                        + ", " + oItemSub.HInterID.ToString() + "," + oItemSub.HInterID.ToString() + ",'" + oItemSub.HBillNo + "','3710',''"
                                        + ",1,1," + oItemSub.HDeptID.ToString() + ",0,0,''"
                                        + ", " + oItemSub.HCusID.ToString() + ",'',getdate(),'',getdate()"
                                        + ", " + msg5.ToString() + "," + OrgNum.ToString() + ",'" + oItemSub.HSeOrderBillNo.ToString() + "'," + HInterID.ToString()
                                        + ",0"
                                        + ",'" + oItemSub.HMaterName + "','','',0,'','')");
                            oCN.RunProc(str);
                            oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
                            string sql1 = string.Format(@"update Sc_ICMOBillSub set HQty=" + oItemSub.HSpsQty + " where HInterID=" + oItemSub.HInterID);
                            oCN.RunProc(sql1);
                            FID = FID + HInterID + ",";
                        }
                    }
                    oCN.Commit();
                    objJsonResult.code = FID;
                    objJsonResult.count = 1;
                    objJsonResult.Message = "整装生成成功!";
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                else
                {
                    var HInterID = DBUtility.ClsPub.CreateBillID("3783", ref DBUtility.ClsPub.sExeReturnInfo);
                    var HBillNo = DBUtility.ClsPub.CreateBillCode("3783", ref DBUtility.ClsPub.sExeReturnInfo, true);
                    oCN.BeginTran();
                    foreach (Models.ClsQK_PackingBill oItemSub in ls)
                    {
                        sum += oItemSub.HMinQty;
                        materid = oItemSub.HMaterNumber;
                        //获取内码
                        long HInterID2 = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                        //生成唯一条码   æ¡ç å‰ç¼€ = ç»„织代码 + ç‰©æ–™ä»£ç  + å¹´ + æœˆ + æ—¥
                        long HInterID = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                        string sTMNumber = OrgNum + oItemSub.HMaterNumber + nowDate;
                        Ds1 = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //获取最大流水号
                        LSH = ClsPub.isInt(Ds1.Tables[0].Rows[0][0]);//唯一码
                        //插入条码档案
                        LSH = ClsPub.isInt(Ds1.Tables[0].Rows[0][0]);//
                        LSH = LSH + 1;
                        LSH2 = LSH.ToString();
                        while (LSH2.Length < 6)
                        {
                            LSH2 = "0" + LSH2;
                        }
                        TM = sTMNumber + LSH2;
                        //获取内码
                        oCN.RunProc("insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                                    ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
                                    ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
@@ -281,76 +231,119 @@
                                    ",HGiveAwayFlag " +
                                    ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo " +
                                    ") values ("
                                    + "'" + LSH + "','唯一条码'," + oItemSub.HMaterID.ToString() + "," + oItemSub.HUnitID.ToString() + "," + oItemSub.HMinQty.ToString()
                                    + "'" + TM + "','唯一条码'," + oItemSub.HMaterID.ToString() + "," + oItemSub.HUnitID.ToString() + "," + oItemSub.HMinQty.ToString()
                                    + ",'',0,0,'" + msg3 + "',getdate(),0," + oItemSub.HMinQty.ToString()
                                    + ", " + oItemSub.HInterID.ToString() + "," + oItemSub.HInterID.ToString() + ",'" + oItemSub.HBillNo + "','3710',''"
                                    + ",1,1," + oItemSub.HDeptID.ToString() + ",0,0,''"
                                    + ", " + oItemSub.HCusID.ToString() + ",'',getdate(),'',getdate()"
                                    + ", " + msg5.ToString() + "," + OrgNum.ToString() + ",''," + HInterID2.ToString()
                                    + ", " + msg5.ToString() + "," + OrgNum.ToString() + ",'" + oItemSub.HSeOrderBillNo.ToString() + "'," + HInterID.ToString()
                                    + ",0"
                                    + ",'" + oItemSub.HMaterName + "','','',0,'','')");
                        //插入组托单子表
                        string sql = string.Format(@"insert into Sc_PackUnionBillSub(HInterID,HEntryID,HCloseMan,HCloseType,HRemark,
                                                    HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,
                                                    HRelationQty,HRelationMoney,HMaterID,HUnitID,HQty,HSourceID,HEquipID,HGroupID,HWorkerID,
                                                    HScanDate,HBarCode,HBarCode_Pack)
                                                    values(" + HInterID + ",'','',0,'自动绑定'," + oItemSub.HInterID + ",'','" + oItemSub.HBillNo + "','3710'," +
                                                    "0,0," + oItemSub.HMaterID + "," + oItemSub.HUnitID + "," + oItemSub.HPlanQty + ", 0,0,0,0," +
                                                    "getdate(),'" + LSH + "','" + HBillNo + "')");
                        //更改生产订单的数量
                        string sql1 = string.Format(@"update Sc_ICMOBillSub set HQty=" + oItemSub.HSpsQty + " where HInterID=" + oItemSub.HInterID);
                        oCN.RunProc(sql);
                        oCN.RunProc(sql1);
                        oCN.RunProc("update Sc_ICMOBillSub set HQty=" + (oItemSub.HPlanQty- oItemSub.HMinQty).ToString() + " where HEntryID=" + oItemSub.HEntryID);
                        oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
                        FID = FID + HInterID + ",";
                    }
                    //生成组托单主表
                    string sql2 = string.Format(@"Insert Sc_PackUnionBillMain(HYear,HPeriod,HBillType,HInterID,HDate,HBillNo,HBillStatus,HCheckItemNowID,HCheckItemNextID,
                                                    HRemark,HBacker,HChecker,HMaker,HMakeDate,HUpDater,HCloseMan,HCloseType,HDeleteMan,HICMOInterID,HICMOBillNo,
                                                    HBarCode_Pack,HMaterID,HUnitID,HWeight,HMWeight,HPWeight,
                                                    HProdOrgID,HDeptID,HEmpID,HSNum,HPackNum,HBarCode_Cus,HBatchNo,HBillSubType)
                                                    values('2022',1,'3783'," + HInterID + ",getdate(),'" + HBillNo + "',1,0,0," +
                                                        "'自动绑定','','', '" + msg3 + "',getdate(),'','',0,'',0,0,'" +
                                                         HBillNo + "',0,0,0,0,0," +
                                                        "0,0,0,0,0,'','','')");
                    oCN.RunProc(sql2);
                    //再次生成唯一码
                    //获取内码
                    long HInterID3 = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                    //生成唯一条码   æ¡ç å‰ç¼€ = ç»„织代码 + ç‰©æ–™ä»£ç  + å¹´ + æœˆ + æ—¥
                    string sTMNumber1 = OrgNum + materid + nowDate;
                    Ds1 = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber1 + "'", "h_p_WMS_GetMaxNo");    //获取最大流水号
                    int LSH1 = ClsPub.isInt(Ds1.Tables[0].Rows[0][0]);//唯一码
                    string sql3 = string.Format(@"insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                                ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
                                ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
                                ",HBarcodeQtys,HBarcodeNo,HDeptID,HWhID,HSPID,HRemark " +
                                ",HCusID,HCusType,HEndDate,HWorkLineName,HBarCodeDate " +
                                ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID " +
                                ",HGiveAwayFlag " +
                                ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo " +
                                ") values ("
                                + "'" + LSH1 + "','唯一条码','" + materid.ToString() + "',0," + sum.ToString()
                                + ",'',0,0,'" + msg3 + "',getdate(),0," + sum.ToString()
                                + ", 0,0,'" + HBillNo + "','3710','',"
                                + sum.ToString() + "," + HInterID.ToString() + ",0,0,0,''"
                                + ",0,'',getdate(),'',getdate()"
                                + ", " + msg5.ToString() + "," + OrgNum.ToString() + ",''," + HInterID3.ToString()
                                + ",0"
                                + ",'','','',0,'','')");
                    oCN.RunProc(sql3);
                    oCN.Commit();
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "拼装生成成功";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                objJsonResult.code = FID;
                objJsonResult.count = 1;
                objJsonResult.Message = "整装生成成功!";
                objJsonResult.data = 1;
                return objJsonResult;
                //}
                //else
                //{
                //    var HInterID = DBUtility.ClsPub.CreateBillID("3783", ref DBUtility.ClsPub.sExeReturnInfo);
                //    var HBillNo = DBUtility.ClsPub.CreateBillCode("3783", ref DBUtility.ClsPub.sExeReturnInfo, true);
                //    oCN.BeginTran();
                //    foreach (Models.ClsQK_PackingBill oItemSub in ls)
                //    {
                //        sum += oItemSub.HMinQty;
                //        materid = oItemSub.HMaterNumber;
                //        //获取内码
                //        long HInterID2 = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                //        //生成唯一条码   æ¡ç å‰ç¼€ = ç»„织代码 + ç‰©æ–™ä»£ç  + å¹´ + æœˆ + æ—¥
                //        string sTMNumber = OrgNum + oItemSub.HMaterNumber + nowDate;
                //        Ds1 = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //获取最大流水号
                //        LSH = ClsPub.isInt(Ds1.Tables[0].Rows[0][0]);//唯一码
                //        //插入条码档案
                //        oCN.RunProc("insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                //                    ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
                //                    ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
                //                    ",HBarcodeQtys,HBarcodeNo,HDeptID,HWhID,HSPID,HRemark " +
                //                    ",HCusID,HCusType,HEndDate,HWorkLineName,HBarCodeDate " +
                //                    ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID " +
                //                    ",HGiveAwayFlag " +
                //                    ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo " +
                //                    ") values ("
                //                    + "'" + LSH + "','唯一条码'," + oItemSub.HMaterID.ToString() + "," + oItemSub.HUnitID.ToString() + "," + oItemSub.HMinQty.ToString()
                //                    + ",'',0,0,'" + msg3 + "',getdate(),0," + oItemSub.HMinQty.ToString()
                //                    + ", " + oItemSub.HInterID.ToString() + "," + oItemSub.HInterID.ToString() + ",'" + oItemSub.HBillNo + "','3710',''"
                //                    + ",1,1," + oItemSub.HDeptID.ToString() + ",0,0,''"
                //                    + ", " + oItemSub.HCusID.ToString() + ",'',getdate(),'',getdate()"
                //                    + ", " + msg5.ToString() + "," + OrgNum.ToString() + ",''," + HInterID2.ToString()
                //                    + ",0"
                //                    + ",'" + oItemSub.HMaterName + "','','',0,'','')");
                //        //插入组托单子表
                //        string sql = string.Format(@"insert into Sc_PackUnionBillSub(HInterID,HEntryID,HCloseMan,HCloseType,HRemark,
                //                                    HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,
                //                                    HRelationQty,HRelationMoney,HMaterID,HUnitID,HQty,HSourceID,HEquipID,HGroupID,HWorkerID,
                //                                 HScanDate,HBarCode,HBarCode_Pack)
                //                                    values(" + HInterID + ",'','',0,'自动绑定'," + oItemSub.HInterID + ",'','" + oItemSub.HBillNo + "','3710'," +
                //                                    "0,0," + oItemSub.HMaterID + "," + oItemSub.HUnitID + "," + oItemSub.HPlanQty + ", 0,0,0,0," +
                //                                    "getdate(),'" + LSH + "','" + HBillNo + "')");
                //        //更改生产订单的数量
                //        string sql1 = string.Format(@"update Sc_ICMOBillSub set HQty=" + oItemSub.HSpsQty + " where HInterID=" + oItemSub.HInterID);
                //        oCN.RunProc(sql);
                //        oCN.RunProc(sql1);
                //    }
                //    //生成组托单主表
                //    string sql2 = string.Format(@"Insert Sc_PackUnionBillMain(HYear,HPeriod,HBillType,HInterID,HDate,HBillNo,HBillStatus,HCheckItemNowID,HCheckItemNextID,
                //                                    HRemark,HBacker,HChecker,HMaker,HMakeDate,HUpDater,HCloseMan,HCloseType,HDeleteMan,HICMOInterID,HICMOBillNo,
                //                                    HBarCode_Pack,HMaterID,HUnitID,HWeight,HMWeight,HPWeight,
                //                                    HProdOrgID,HDeptID,HEmpID,HSNum,HPackNum,HBarCode_Cus,HBatchNo,HBillSubType)
                //                                    values('2022',1,'3783'," + HInterID + ",getdate(),'" + HBillNo + "',1,0,0," +
                //                                        "'自动绑定','','', '" + msg3 + "',getdate(),'','',0,'',0,0,'" +
                //                                         HBillNo + "',0,0,0,0,0," +
                //                                        "0,0,0,0,0,'','','')");
                //    oCN.RunProc(sql2);
                //    //再次生成唯一码
                //    //获取内码
                //    long HInterID3 = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                //    //生成唯一条码   æ¡ç å‰ç¼€ = ç»„织代码 + ç‰©æ–™ä»£ç  + å¹´ + æœˆ + æ—¥
                //    string sTMNumber1 = OrgNum + materid + nowDate;
                //    Ds1 = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber1 + "'", "h_p_WMS_GetMaxNo");    //获取最大流水号
                //    int LSH1 = ClsPub.isInt(Ds1.Tables[0].Rows[0][0]);//唯一码
                //    string sql3 = string.Format(@"insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                //                ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
                //                ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
                //                ",HBarcodeQtys,HBarcodeNo,HDeptID,HWhID,HSPID,HRemark " +
                //                ",HCusID,HCusType,HEndDate,HWorkLineName,HBarCodeDate " +
                //                ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID " +
                //                ",HGiveAwayFlag " +
                //                ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo " +
                //                ") values ("
                //                + "'" + LSH1 + "','唯一条码','" + materid.ToString() + "',0," + sum.ToString()
                //                + ",'',0,0,'" + msg3 + "',getdate(),0," + sum.ToString()
                //                + ", 0,0,'" + HBillNo + "','3710','',"
                //                + sum.ToString() + "," + HInterID.ToString() + ",0,0,0,''"
                //                + ",0,'',getdate(),'',getdate()"
                //                + ", " + msg5.ToString() + "," + OrgNum.ToString() + ",''," + HInterID3.ToString()
                //                + ",0"
                //                + ",'','','',0,'','')");
                //    oCN.RunProc(sql3);
                //    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();
@@ -538,6 +531,6 @@
        }
        #endregion
    }
}
WebAPI/Models/ClsQK_PackingBill.cs
@@ -24,6 +24,7 @@
        public string HDeptName;
        public string HPlanEndDate;
        public Int64 HInterID;
        public Int64 HEntryID;
        public string HBillNo;
        public string HSeOrderBillNo;
        public string FBillNo;