王 垚
2022-07-27 4286ee5823987af404e167a7c4aeacbe7def3c36
WebAPI/Controllers/Éú²ú¹ÜÀí/Éú²úÈÎÎñµ¥/Sc_ICMOBillController.cs
@@ -109,7 +109,7 @@
        {
            try
            {
                //string sql = string.Format(@"select a.HInterID,a.HBillNo,b.HEntryID,b.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, b.HUnitID,u.HName HUnitName,b.HQty HPlanQty,
                //string sql = string.Format(@"select a.HInterID,a.HBillNo,b.HEntryID,b.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, b.HUnitID,u.HName HUnitName,b.HQty HPlanQty,b.HQty HSPlanQty,
                //                            a.HCusID, c.HName HCusName,a.HEmpID,e.HName HEmpName,b.HDeptID,d.HName HDeptName,a.HPlanEndDate,0 HMinQty,0 HTotalQty,0 HSpsQty,a.HSeOrderBillNo,a.HRemark
                //                            from Sc_ICMOBillMain a 
                //                            left join Sc_ICMOBillSub b on a.HInterID=b.HInterID
@@ -119,10 +119,10 @@
                //                            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.HMaterID,b.HEntryID, m.HNumber HMaterNumber, m.HName HMaterName, b.HUnitID,u.HName HUnitName,b.HQty HPlanQty,a.HCusID, c.HName HCusName,
                string sql = string.Format(@"select a.HInterID,a.HBillNo,b.HMaterID,b.HEntryID, m.HNumber HMaterNumber, m.HName HMaterName, b.HUnitID,u.HName HUnitName,b.HQty HPlanQty,b.HQty HSPlanQty,a.HCusID, c.HName HCusName,
                    a.HEmpID,e.HName HEmpName,b.HDeptID,d.HName HDeptName,a.HPlanEndDate,0 HMinQty,0 HTotalQty,0 HSpsQty,a.HSeOrderBillNo,a.HRemark,
                     fo.FBILLNO FBillNo,fo.F_ZZZZ_TEXT7 FLXName,fo.FRECEIVEADDRESS FInAddress,fmn.FNAME FMaterName,fo.F_ZZZZ_TEXT FBZFS,fu.FDATAVALUE FHX,
                    fu1.FDATAVALUE FQK,fo.F_ZZZZ_WBBZ FWBBZ
                     fo.FBILLNO FBillNo,fo.F_ZZZZ_TEXT7 FLXName,fo.FRECEIVEADDRESS FInAddress,fmn.FNAME FMaterName,fo1.F_ZZZZ_TEXT FBZFS,fu.FDATAVALUE FHX,
                    fu1.FDATAVALUE FQK,fo1.F_ZZZZ_WBBZ1 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
@@ -173,14 +173,17 @@
            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 msg5 = sArray[2].ToString();
            string msg2 = sArray[0].ToString();//表格数据
            string msg3 = sArray[1].ToString();//登录人
            string msg5 = sArray[2].ToString();//登录组织
            string msg6 = sArray[3].ToString();//标记
            string msg7 = sArray[4].ToString();//当前用料清单
            ListModels oListModels = new ListModels();
            DataSet ds = new DataSet();
            ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where HItemID=" + msg5, "Xt_ORGANIZATIONS");
            string OrgNum = ds.Tables[0].Rows[0]["HNumber"].ToString();//组织代码
            DataSet d = oCN.RunProcReturn("select HRemark from Sc_PPBomBillMain where HBillNo='" + msg7 + "'", "Sc_ICMOBillMain");//查找该用料清单上次生成的箱号(HRemark存放箱号)
            DataSet Ds1 = new DataSet();
            try
            {
@@ -206,6 +209,8 @@
                int LSH;
                string LSH2;
                string TM = "";
                int XH = Convert.ToInt32(d.Tables[0].Rows[0]["HRemark"].ToString() == ""? 0 : Convert.ToInt32(d.Tables[0].Rows[0]["HRemark"].ToString()));
                foreach (Models.ClsQK_PackingBill oItemSub in ls)
                {
                    //根据生成条数生成相应数量条码
@@ -222,6 +227,16 @@
                            LSH2 = "0" + LSH2;
                        }
                        TM = sTMNumber + LSH2;
                        if (msg6 == "ZZ")
                        {
                            XH = XH +1;
                        }
                        else if (msg6 == "PZ"&& ls.IndexOf(oItemSub) == 0)
                        {
                            XH = XH + 1;
                        }
                        //获取内码
                        oCN.RunProc("insert into Gy_BarCodeBill (HEntryID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                                    ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
@@ -235,7 +250,7 @@
                                    + ",'" + TM + "','唯一条码'," + oItemSub.HMaterID.ToString() + "," + oItemSub.HUnitID.ToString() + "," + oItemSub.HMinQty.ToString()
                                    + ",'',0,0,'" + msg3 + "',getdate(),0," + oItemSub.HMinQty.ToString()
                                    + ", " + oItemSub.HInterID.ToString() + "," + oItemSub.HEntryID.ToString() + ",'" + oItemSub.HBillNo + "','3710',''"
                                    + ",1,1," + oItemSub.HDeptID.ToString() + ",0,0,'"+ (int.Parse(oItemSub.HXH.ToString())+i) + "'"
                                    + ",1,1," + oItemSub.HDeptID.ToString() + ",0,0,'"+ XH + "'"
                                    + ", " + oItemSub.HCusID.ToString() + ",'',getdate(),'',getdate()"
                                    + ", " + msg5.ToString() + "," + OrgNum.ToString() + ",'" + oItemSub.HSeOrderBillNo.ToString() + "'," + HInterID.ToString()
                                    + ",0"
@@ -245,6 +260,7 @@
                        
                    }
                    oCN.RunProc("update Sc_ICMOBillSub set HQty=" + oItemSub.HSpsQty  + " where HEntryID=" + oItemSub.HEntryID);
                    oCN.RunProc("update Sc_PPBomBillMain set HRemark=" +XH+ " where HBillNo='" + msg7+"'");
                    DataSet Dsn = oCN.RunProcReturn("select top " + oItemSub.HTotalQty + " HItemID from Gy_BarCodeBill order by HItemID desc", "Gy_BarCodeBill");    //获取最大流水号
                    for (int i = 0; i < oItemSub.HTotalQty; i++)
                    {
@@ -469,6 +485,8 @@
        /// <summary>
        /// å¢™å’”装箱列表-删除
        /// </summary>
        /// <param name="HInterID">条码档案主表主ID(唯一)</param>
        /// <param name="Flag">标识</param>
        /// <returns></returns>
        [Route("Sc_ICMOBillController/DeleteQK_GetPackingBillList")]
        [HttpGet]
@@ -483,14 +501,14 @@
                    ds = oCN.RunProcReturn("select * from Gy_BarCodeBill where HItemID=" + HInterID, "Gy_BarCodeBill");
                    DataRow dr = ds.Tables[0].Rows[0];
                    string sql = string.Format(@"delete from Gy_BarCodeBill where HItemID=" + HInterID);
                    string sql1 = string.Format(@"update Sc_ICMOBillSub set HQty=HPlanQty+" + dr["HQty"] + " where HInterID=(select HSourceInterID from Gy_BarCodeBill where HItemID=" + HInterID + ")");
                    oCN.RunProc(sql);
                    string sql1 = string.Format(@"update Sc_ICMOBillSub set HQty=HQty+" + dr["HQty"] + " where HEntryID=(select HSourceEntryID from Gy_BarCodeBill where HItemID=" + HInterID + ")");
                    oCN.RunProc(sql1);
                    oCN.RunProc(sql);
                }
                else
                {
                    //通过条码id找到托条码,通过托条码找到组托单子表中的唯一码
                    string sql2 = "select HBarCode from Sc_PackUnionBillSub where HInterID=(select HBarcodeNo from Gy_BarCodeBill where HItemID=" + HInterID;
                    string sql2 = "select HBarCode from Sc_PackUnionBillSub where HInterID=(select HBarcodeNo from Gy_BarCodeBill where HItemID=" + HInterID+")";
                    //string sql2 = "select HBarCode from Sc_PackUnionBillSub where HInterID=(select HBarcodeNo from Gy_BarCodeBill where HItemID=3250)";
                    DataSet ds1 = oCN.RunProcReturn(sql2, "Sc_PackUnionBillSub");
                    DataTable dt = ds1.Tables[0];
@@ -504,9 +522,9 @@
                            DataRow dr1 = ds.Tables[0].Rows[0];
                            string sql = string.Format(@"delete from Gy_BarCodeBill where HBarCode='" + dr["HBarCode"].ToString() + "'");
                            string sql1 = string.Format(@"update Sc_ICMOBillSub set HQty=HPlanQty+" + dr1["HQty"] + " where HInterID=(select HSourceInterID from Gy_BarCodeBill where HBarCode='" + dr["HBarCode"].ToString() + "')");
                            string sql1 = string.Format(@"update Sc_ICMOBillSub set HQty=HQty+" + dr1["HQty"] + " where HEntryID=(select HSourceEntryID from Gy_BarCodeBill where HBarCode='" + dr["HBarCode"].ToString() + "')");
                             oCN.RunProc(sql1);
                            oCN.RunProc(sql);
                            oCN.RunProc(sql1);
                        }
                    }