yxj
2025-11-07 aefdf847ad509b52fe46ed58158e75ca66545d09
WebAPI/Controllers/ÌõÂë¹ÜÀí/WEBSController.cs
@@ -72,7 +72,7 @@
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else if (DBUtility.ClsPub.isLong(ds2.Tables[0].Rows[0]["HBack"])==1)
                    else if (DBUtility.ClsPub.isLong(ds2.Tables[0].Rows[0]["HBack"]) == 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
@@ -111,6 +111,8 @@
        #endregion
        #region ç”¨æˆ·æ¨¡å—权限判断
        #region ç”¨æˆ·æ¨¡å—权限判断    åˆ¤æ–­é‡‘蝶账号是否正确
        /// <summary>
        /// è¿›å…¥æ¨¡å—时进行用户权限判断
@@ -184,6 +186,48 @@
                return objJsonResult;
            }
        }
        #endregion
        #region ç”¨æˆ·æ¨¡å—权限判断
        /// <summary>
        /// è¿›å…¥æ¨¡å—时进行用户权限判断
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/CheckModRight_ERP_Json")]
        [HttpGet]
        public object CheckModRight_ERP_Json(string ModRightName, string HUserName)
        {
            try
            {
                //判断权限
                if (!DBUtility.ClsPub.Security_Log(ModRightName, 3, false, HUserName))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "您没有对应模块权限,请与管理员联系!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                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;
            }
        }
        #endregion
        #endregion
@@ -470,7 +514,7 @@
                    sHWhID = DBUtility.ClsPub.isLong(sArray[0]);
                }
                if(HWhID==0)
                if (HWhID == 0)
                {
                    ds = oCn.RunProcReturn("select HItemID,HNumber,HName,HWHID,HWhNumber,HWhName from h_v_IF_StockPlace where HStopflag=0 and HItemID=" + sHSPID.ToString() + " and HWHID=" + sHWhID.ToString() + " and HUSEORGID = " + HStockOrgID.ToString(), "h_v_IF_StockPlace");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
@@ -1028,13 +1072,13 @@
        /// <returns></returns>
        [Route("WEBSController/GetEquipList_Json")]
        [HttpGet]
        public object GetEquipList_Json(string Equip,int HCenterID)
        public object GetEquipList_Json(string Equip, int HCenterID)
        {
            try
            {
                if (HCenterID !=0)
                if (HCenterID != 0)
                {
                    ds = oCn.RunProcReturn("select HInterID,HEquipFileNumber,HName,HSourceID,HSourceName,HCenterID from h_v_Gy_EquipFileBill where HCenterID='"+HCenterID+"' and ( HEquipFileNumber like '%" + Equip + "%' or HName like '%" + Equip + "%')", "h_v_Gy_EquipFileBill");
                    ds = oCn.RunProcReturn("select HInterID,HEquipFileNumber,HName,HSourceID,HSourceName,HCenterID from h_v_Gy_EquipFileBill where HCenterID='" + HCenterID + "' and ( HEquipFileNumber like '%" + Equip + "%' or HName like '%" + Equip + "%')", "h_v_Gy_EquipFileBill");
                }
                else
                {
@@ -1366,6 +1410,50 @@
        #endregion
        #region æ‰«ç æ¨¡å—    æ‰«ææºå• è¿›è¡ŒæŽ§åˆ¶åˆ¤æ–­
        /// <summary>
        /// æºå•列表信息,根据单据类型、源单类型、组织ID返回源单列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetSourceBillList_Control")]
        [HttpGet]
        public object GetSourceBillList_Control(string HBillType, string HSourceBillType, Int64 HStockOrgID, string HSourceBillNo, string HMater, string HCustom)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_GetSourceBillList_Control '" + HBillType + "','" + HSourceBillType + "'," + HStockOrgID.ToString() + ",'" + HSourceBillNo + "','" + HMater + "','" + HCustom + "'", "h_p_WMS_GetSourceBillList_Control");
                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 = "成功";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取源单单据信息失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æ‰«ç æ¨¡å—    è¿”回源单列表信息
        /// <summary>
@@ -1605,7 +1693,7 @@
                try
                {
                    if(sFIFOCtl == "Y")
                    if (sFIFOCtl == "Y")
                    {
                        //更新先进先出临时表状态
                        oCn.RunProc("EXEC h_p_WMS_UPDateICInventory_FIFO_Tmp " + HInterID.ToString() + ",'" + HBillType + "'");
@@ -2028,7 +2116,7 @@
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_Kf_ICStockBillQueryList_New '" + HBillType + "','" + HBillNo + "','" + HSourceBillNo + "','" + HMaker + "'," + HStockOrgID.ToString() + ",'" + sWhere+"'", "h_p_Kf_ICStockBillQueryList_New");
                ds = oCn.RunProcReturn("exec h_p_Kf_ICStockBillQueryList_New '" + HBillType + "','" + HBillNo + "','" + HSourceBillNo + "','" + HMaker + "'," + HStockOrgID.ToString() + ",'" + sWhere + "'", "h_p_Kf_ICStockBillQueryList_New");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -2078,50 +2166,73 @@
        [HttpGet]
        public object set_DeleteICStockBillAndWMS_Json(Int64 HInterID, string HBillNo, string HBillType, string HMaker, string MvarReportTitle)
        {
            try
            //获取系统参数
            string sErrMsg = "";
            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
            {
                string WorkList = "撤销已上传单据,单据号:" + HBillNo;
                string SystemName = "WMS-" + MvarReportTitle + "模块";
                oCn.BeginTran();
                ds = oCn.RunProcReturn("exec h_p_WMS_ICStockBillAndWMS_Delete " + HInterID + ",'" + HBillNo + "','" + HBillType + "'", "h_p_WMS_ICStockBillAndWMS_Delete");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                //撤销前判断金蝶云中单据是否存在
                if (!GetBillQuery_WMS(HInterID, HBillNo, HBillType, HMaker, oSystemParameter.omodel.WMS_CloudMode, oSystemParameter.omodel.WMS_WMSStockCtl_ERPMode, 2, ref sErrMsg))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = sErrMsg;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                try
                {
                    oCn.BeginTran();
                    ds = oCn.RunProcReturn("exec h_p_WMS_ICStockBillAndWMS_Delete " + HInterID + ",'" + HBillNo + "','" + HBillType + "'", "h_p_WMS_ICStockBillAndWMS_Delete");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        oCn.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "撤销单据已上传记录失败,撤销单据判断错误!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                    {
                        oCn.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;  //失败!
                        objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        string WorkList = "撤销已上传单据,单据号:" + HBillNo;
                        string SystemName = "WMS-" + MvarReportTitle + "模块";
                        //写入日志
                        oCn.RunProc("Insert into  System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
                            "(getdate(),'" + HMaker + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','','撤销')"
                            );
                        oCn.Commit();
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;  //成功!
                        objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                catch (Exception e)
                {
                    oCn.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "撤销单据已上传记录失败,撤销单据判断错误!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    oCn.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;  //失败!
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    //写入日志
                    oCn.RunProc("Insert into  System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
                        "(getdate(),'" + HMaker + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','','撤销')"
                        );
                    oCn.Commit();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;  //成功!
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.Message = "撤销单据已上传记录失败!" + e.ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            else
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "撤销单据已上传记录失败!" + e.ToString();
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
@@ -2261,10 +2372,18 @@
                    sFIFOCtl = "Y";
                }
                //删除前判断金蝶云中单据是否存在
                if (!GetBillQuery_WMS(HInterID, HBillNo, HBillType, HMaker, oSystemParameter.omodel.WMS_CloudMode, sERPMode, 1, ref sErrMsg))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = sErrMsg;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                try
                {
                    string WorkList = "删除缓存单据,单据号:" + HBillNo;
                    string SystemName = "WMS-" + MvarReportTitle + "模块";
                    oCn.BeginTran();
                    ds = oCn.RunProcReturn("exec h_p_WMS_PonderationBillMain_Temp_Delete " + HInterID + ",'" + HBillNo + "','" + HBillType + "','" + sFIFOCtl + "','" + sERPMode + "'", "h_p_WMS_PonderationBillMain_Temp_Delete");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
@@ -2287,6 +2406,8 @@
                    }
                    else
                    {
                        string WorkList = "删除缓存单据,单据号:" + HBillNo;
                        string SystemName = "WMS-" + MvarReportTitle + "模块";
                        //写入日志
                        oCn.RunProc("Insert into  System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
                            "(getdate(),'" + HMaker + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','','删除')"
@@ -2356,6 +2477,210 @@
            }
        }
        #endregion
        #region é‡‘蝶云单据查询
        public bool GetBillQuery_WMS(Int64 HInterID, string HBillNo, string HBillType, string HMaker, string sCloudMode, string sERPMode, Int64 sHType, ref string sErrMsg)
        {
            //sCloudMode:系统参数  æ˜¯å¦ä¸ºç§æœ‰äº‘模式(N为公有云模式,Y为私有云模式);
            //sERPMode:系统参数  åº“存控制-WMS库存控制ERP模式   (WISE、CLOUD、MES);
            //sHType:值 1 å¯¹åº”缓存列表删除;值 2 å¯¹åº”已上传撤销;
            //公有云模式
            if (sCloudMode == "N")
            {
                string sFormId = "";    //业务对象表单Id
                //生产汇报单
                if (HBillType == "3711")
                {
                    sFormId = "PRD_MORPT";
                }
                //采购入库单、委外入库单
                else if (HBillType == "1201" || HBillType == "1210")
                {
                    sFormId = "STK_InStock";
                }
                //生产入库单
                else if (HBillType == "1202")
                {
                    sFormId = "PRD_INSTOCK";
                }
                //其他入库单
                else if (HBillType == "1203")
                {
                    sFormId = "STK_MISCELLANEOUS";
                }
                //领料出库单
                else if (HBillType == "1204")
                {
                    sFormId = "PRD_PickMtrl";
                }
                //销售出库单
                else if (HBillType == "1205")
                {
                    sFormId = "SAL_OUTSTOCK";
                }
                //其他出库单
                else if (HBillType == "1206")
                {
                    sFormId = "STK_MisDelivery";
                }
                //委外出库单
                else if (HBillType == "1211")
                {
                    sFormId = "SUB_PickMtrl";
                }
                //生产补料单
                else if (HBillType == "1254")
                {
                    sFormId = "PRD_FeedMtrl";
                }
                //委外补料单
                else if (HBillType == "1255")
                {
                    sFormId = "SUB_FEEDMTRL";
                }
                //直接调拨单
                else if (HBillType == "1207")
                {
                    sFormId = "STK_TransferDirect";
                }
                //分步式调出单
                else if (HBillType == "1250")
                {
                    sFormId = "STK_TRANSFEROUT";
                }
                //分步式调入单
                else if (HBillType == "1251")
                {
                    sFormId = "STK_TRANSFERIN";
                }
                //采购退料单(采购入库单红字)
                else if (HBillType == "1239")
                {
                    sFormId = "PUR_MRB";
                }
                //生产退库单(产品入库单红字)
                else if (HBillType == "1245")
                {
                    sFormId = "PRD_RetStock";
                }
                //其他入库单(红字)
                else if (HBillType == "1248")
                {
                    sFormId = "";
                }
                //委外退库单(委外入库单红字)
                else if (HBillType == "1246")
                {
                    sFormId = "";
                }
                //生产退料单(生产领料单红字)
                else if (HBillType == "1244")
                {
                    sFormId = "PRD_ReturnMtrl";
                }
                //销售退货单(销售出库单红字)
                else if (HBillType == "1247")
                {
                    sFormId = "SAL_RETURNSTOCK";
                }
                //其他出库单(红字)
                else if (HBillType == "1249")
                {
                    sFormId = "";
                }
                //委外退料单(委外出库单红字)
                else if (HBillType == "1238")
                {
                    sFormId = "SUB_RETURNMTRL";
                }
                //登录金蝶
                var loginRet = InvokeHelper.Login();
                var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                //判断是否登录成功
                if (isSuccess < 0)
                {
                    sErrMsg = "默认金蝶云账号登录失败!";
                    return false;
                }
                else
                {
                    //单据查询
                    var sJson = new
                    {
                        FormId = sFormId,
                        FieldKeys = "FBillNo",
                        FilterString = $@"FBillNo='{HBillNo}'",
                        OrderString = "",
                        TopRowCount = 0,
                        StartRow = 0,
                        Limit = 0
                    };;
                    var _result = InvokeHelper.Query(sFormId, JsonConvert.SerializeObject(sJson));
                    var _saveObj = JArray.Parse(_result);
                    //判断返回的数组中有无数据,无数据代表没查询到对应单据
                    if (_saveObj.Count == 0)
                    {
                        return true;
                    }
                    else
                    {
                        //sHType = 1对应缓存列表删除
                        if (sHType == 1)
                        {
                            //判断返回的数组数据中是否存在"false",存在代表递入的业务对象表单Id不正确
                            if (_saveObj[0][0].ToString().Contains("false") == true)
                            {
                                return true;
                            }
                            else
                            {
                                sErrMsg = "数据存在异常,不允许删除!单据号:" + HBillNo + " åœ¨é‡‘蝶云中已生成单据,请先在金蝶云里删除该单据,并在缓存列表的已上传界面撤销该单据,再对该单据进行编辑或删除操作!";
                                return false;
                            }
                        }
                        //sHType = 2对应已上传撤销
                        else
                        {
                            //判断返回的数组数据中是否存在"false",存在代表递入的业务对象表单Id不正确
                            if (_saveObj[0][0].ToString().Contains("false") == true)
                            {
                                sErrMsg = "此模块暂不支持撤销功能!";
                                return false;
                            }
                            else
                            {
                                sErrMsg = "撤销单据失败,单据号:" + HBillNo + ",金蝶云里未删除,不允许撤销!";
                                return false;
                            }
                        }
                    }
                }
            }
            //私有云模式
            else
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'," + sHType.ToString(), "h_p_WMS_BillQuery");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    sErrMsg = "单据查询发生错误!";
                    return false;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    sErrMsg = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    return false;
                }
                else
                {
                    return true;
                }
            }
        }
        #endregion
        #endregion
@@ -2549,6 +2874,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1202";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveProductInBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -2690,6 +3016,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1201";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SavePOStockInBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -2849,7 +3176,7 @@
                websLsmain.HRedBlueFlag = lsmain[0].HRedBlueFlag;
                websLsmain.HStockStyle = lsmain[0].HStockStyle;
                websLsmain.HBillSubType = lsmain[0].HBillSubType;
                if(lsmain[0].HMainSourceBillType== "1241")
                if (lsmain[0].HMainSourceBillType == "1241")
                {
                    websLsmain.HMainSourceBillType = "入库申请单";
                }
@@ -2915,6 +3242,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1203";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveOtherInBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -3011,7 +3339,7 @@
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                websLsmain.HOWNERID = lsmain[0].HSTOCKORGID;
                if(sSourceType== "3710")
                if (sSourceType == "3710")
                {
                    sSourceType = "3720";
                }
@@ -3069,6 +3397,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1204";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveMateOutBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -3309,6 +3638,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1205";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveSellOutBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -3393,7 +3723,7 @@
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                websLsmain.HOWNERID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveEntrustOutBill_New(websLsmain, sSourceType, ref DBUtility.ClsPub.sErrInfo))
                {
@@ -3448,6 +3778,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1211";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveEntrustOutBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -3586,6 +3917,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1206";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveOtherOutBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -3723,6 +4055,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1254";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveMateReplenishOutBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -3782,6 +4115,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1255";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveEntrustReplenishOutBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -3827,96 +4161,116 @@
        [HttpPost]
        public object set_SaveMoveStockBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            //获取系统参数
            string sErrMsg = "";
            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
            {
                List<Model.ClsKf_MoveStockBillMain> lsmain = new List<Model.ClsKf_MoveStockBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getMoveStockBillMainByJson(msg1);
                WebS.ClsKf_MoveStockBillMain websLsmain = new WebS.ClsKf_MoveStockBillMain();
                string sSourceType = lsmain[0].HMainSourceBillType;
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = lsmain[0].HBillType;
                websLsmain.HDate = lsmain[0].HDate;
                websLsmain.HDeptID = lsmain[0].HDeptID;
                websLsmain.HWHID = lsmain[0].HWHID;
                websLsmain.HSCWHID = lsmain[0].HSCWHID;
                websLsmain.HSupID = lsmain[0].HSupID;
                websLsmain.HKeeperID = lsmain[0].HKeeperID;
                websLsmain.HSecManagerID = lsmain[0].HSecManagerID;
                websLsmain.HEmpID = lsmain[0].HEmpID;
                websLsmain.HManagerID = lsmain[0].HManagerID;
                websLsmain.HRemark = lsmain[0].HRemark;
                websLsmain.HExplanation = lsmain[0].HExplanation;
                websLsmain.HInnerBillNo = lsmain[0].HInnerBillNo;
                websLsmain.HRedBlueFlag = lsmain[0].HRedBlueFlag;
                websLsmain.HBillSubType = lsmain[0].HBillSubType;
                websLsmain.HStockStyle = lsmain[0].HStockStyle;
                websLsmain.HTransferDirect = lsmain[0].HTransferDirect;
                websLsmain.HShipType = lsmain[0].HShipType;
                if (lsmain[0].HMainSourceBillType == "1402")
                var _value = oMain["oMain"].ToString();
                string msg1 = _value.ToString();
                try
                {
                    websLsmain.HMainSourceBillType = "发货通知单";
                }
                else if (lsmain[0].HMainSourceBillType == "1243")
                {
                    websLsmain.HMainSourceBillType = "调拨申请单";
                }
                else if (lsmain[0].HMainSourceBillType == "3720")
                {
                    websLsmain.HMainSourceBillType = "生产用料清单";
                }
                else if (lsmain[0].HMainSourceBillType == "1604")
                {
                    websLsmain.HMainSourceBillType = "委外用料清单";
                }
                else if (lsmain[0].HMainSourceBillType == "1214")
                {
                    websLsmain.HMainSourceBillType = "生产发料通知单";
                }
                else if (lsmain[0].HMainSourceBillType == "3721")
                {
                    websLsmain.HMainSourceBillType = "生产备料单";
                }
                else if (lsmain[0].HMainSourceBillType == "1242")
                {
                    websLsmain.HMainSourceBillType = "出库申请单";
                }
                else
                {
                    websLsmain.HMainSourceBillType = "手工录入";
                }
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HBillerID = lsmain[0].HBillerID;
                websLsmain.HStockInOrgID = lsmain[0].HStockInOrgID;
                websLsmain.HStockOutOrgID = lsmain[0].HStockOutOrgID;
                websLsmain.HSTOCKORGID = lsmain[0].HStockOutOrgID;
                websLsmain.HOWNERID = lsmain[0].HStockOutOrgID;
                    List<Model.ClsKf_MoveStockBillMain> lsmain = new List<Model.ClsKf_MoveStockBillMain>();
                    ListModels oListModels = new ListModels();
                    lsmain = oListModels.getMoveStockBillMainByJson(msg1);
                    WebS.ClsKf_MoveStockBillMain websLsmain = new WebS.ClsKf_MoveStockBillMain();
                    string sSourceType = lsmain[0].HMainSourceBillType;
                    websLsmain.HInterID = lsmain[0].HInterID;
                    websLsmain.HBillNo = lsmain[0].HBillNo;
                    websLsmain.HBillType = lsmain[0].HBillType;
                    websLsmain.HDate = lsmain[0].HDate;
                    websLsmain.HDeptID = lsmain[0].HDeptID;
                    websLsmain.HWHID = lsmain[0].HWHID;
                    websLsmain.HSCWHID = lsmain[0].HSCWHID;
                    if (oSystemParameter.omodel.WMS_CampanyName == "小卫") //系统参数  å®¢æˆ·å®šåˆ¶åŒ–名称     ç©ºç™½ä¸ºé€šç”¨
                    {
                        websLsmain.HSupID = lsmain[0].HCusID;
                    }
                    else
                    {
                        websLsmain.HSupID = lsmain[0].HSupID;
                    }
                    websLsmain.HKeeperID = lsmain[0].HKeeperID;
                    websLsmain.HSecManagerID = lsmain[0].HSecManagerID;
                    websLsmain.HEmpID = lsmain[0].HEmpID;
                    websLsmain.HManagerID = lsmain[0].HManagerID;
                    websLsmain.HRemark = lsmain[0].HRemark;
                    websLsmain.HExplanation = lsmain[0].HExplanation;
                    websLsmain.HInnerBillNo = lsmain[0].HInnerBillNo;
                    websLsmain.HRedBlueFlag = lsmain[0].HRedBlueFlag;
                    websLsmain.HBillSubType = lsmain[0].HBillSubType;
                    websLsmain.HStockStyle = lsmain[0].HStockStyle;
                    websLsmain.HTransferDirect = lsmain[0].HTransferDirect;
                    websLsmain.HShipType = lsmain[0].HShipType;
                    if (lsmain[0].HMainSourceBillType == "1402")
                    {
                        websLsmain.HMainSourceBillType = "发货通知单";
                    }
                    else if (lsmain[0].HMainSourceBillType == "1243")
                    {
                        websLsmain.HMainSourceBillType = "调拨申请单";
                    }
                    else if (lsmain[0].HMainSourceBillType == "3720")
                    {
                        websLsmain.HMainSourceBillType = "生产用料清单";
                    }
                    else if (lsmain[0].HMainSourceBillType == "1604")
                    {
                        websLsmain.HMainSourceBillType = "委外用料清单";
                    }
                    else if (lsmain[0].HMainSourceBillType == "1214")
                    {
                        websLsmain.HMainSourceBillType = "生产发料通知单";
                    }
                    else if (lsmain[0].HMainSourceBillType == "3721")
                    {
                        websLsmain.HMainSourceBillType = "生产备料单";
                    }
                    else if (lsmain[0].HMainSourceBillType == "1242")
                    {
                        websLsmain.HMainSourceBillType = "出库申请单";
                    }
                    else
                    {
                        websLsmain.HMainSourceBillType = "手工录入";
                    }
                    websLsmain.HMaker = lsmain[0].HMaker;
                    websLsmain.HBillerID = lsmain[0].HBillerID;
                    websLsmain.HStockInOrgID = lsmain[0].HStockInOrgID;
                    websLsmain.HStockOutOrgID = lsmain[0].HStockOutOrgID;
                    websLsmain.HSTOCKORGID = lsmain[0].HStockOutOrgID;
                    websLsmain.HOWNERID = lsmain[0].HStockOutOrgID;
                if (oWebs.set_SaveMoveStockBill(websLsmain, sSourceType, ref DBUtility.ClsPub.sErrInfo))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //成功!
                    objJsonResult.data = null;
                    return objJsonResult;
                    if (oWebs.set_SaveMoveStockBill(websLsmain, sSourceType, ref DBUtility.ClsPub.sErrInfo))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //成功!
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //失败!
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else
                catch (Exception e)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //失败!
                    objJsonResult.Message = "直接调拨单上传失败!" + e.ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "直接调拨单上传失败!" + e.ToString();
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
@@ -4069,6 +4423,7 @@
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1207";
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveMoveStockBill_BillCheck(websLsmain, ref DBUtility.ClsPub.sErrInfo))
@@ -4363,6 +4718,10 @@
                {
                    websLsmain.HMainSourceBillType = "退料通知单";
                }
                else if (lsmain[0].HMainSourceBillType == "1201")
                {
                    websLsmain.HMainSourceBillType = "采购入库单";
                }
                else
                {
                    websLsmain.HMainSourceBillType = "手工录入";
@@ -4444,6 +4803,10 @@
                if (lsmain[0].HMainSourceBillType == "3720")
                {
                    websLsmain.HMainSourceBillType = "生产用料清单";
                }
                else if (lsmain[0].HMainSourceBillType == "1204")
                {
                    websLsmain.HMainSourceBillType = "生产领料单";
                }
                else
                {
@@ -4990,7 +5353,7 @@
                lsmain = oListModels.getObjectByJson_Kf_TrolleyPositionBillMain(msg2);
                foreach (Model.ClsKf_TrolleyPositionBillMain oItem in lsmain)
                {
                {
                    DBUtility.ClsPub.CurUserName = oItem.HMaker;
                    oItem.HBillType = "10004";
                    oItem.HBillSubType = "10004";
@@ -5032,7 +5395,7 @@
                bool bResult;
                if (OperationType == "1")
                {
                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                }
                else
                {
@@ -5301,7 +5664,7 @@
            {
                if (oSystemParameter.omodel.WMS_CloudMode.ToUpper() == "N") //系统参数是否为私有云模式,N为公有云模式,Y为私有云模式
                {
                    if(HSourceBillType == "1214")
                    if (HSourceBillType == "1214")
                    {
                        //重新同步生产发料通知单
                        Kf_MateOutRequestBillController obill = new Kf_MateOutRequestBillController();
@@ -5878,7 +6241,7 @@
                    sJXCode = POStockInBillController.JX_Json(sBarCode, HInterID, HBillType, HStockOrgID, HBillNo, HMaker);
                    SourceFlag = true;
                }
                else if(oSystemParameter.omodel.WMS_CampanyName == "森楷" && HSourceBillType == "1241")
                else if (oSystemParameter.omodel.WMS_CampanyName == "森楷" && HSourceBillType == "1241")
                {
                    //自动包装线同步金蝶生产入库申请单
                    sJXCode = Kf_OtherInBill_SK(sBarCode, HCustom1);
@@ -5933,7 +6296,7 @@
                objJsonResult.data = null;
                return objJsonResult;
            }
         }
        }
        #endregion
@@ -6013,7 +6376,7 @@
            {
                if (oSystemParameter.omodel.WMS_CampanyName == "安瑞") //系统参数  å®¢æˆ·å®šåˆ¶åŒ–名称     ç©ºç™½ä¸ºé€šç”¨
                {
                     sJXCode = POStockInBillController.JX_Json(sBarCode, HInterID, HBillType, HStockOutOrgID, HBillNo, HMaker);
                    sJXCode = POStockInBillController.JX_Json(sBarCode, HInterID, HBillType, HStockOutOrgID, HBillNo, HMaker);
                    SourceFlag = true;
                }
                else
@@ -6733,8 +7096,8 @@
                    objJsonResult.Message = "校验模式,扫描条码失败!" + e.ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                    }
                }
            }
            else
            {
                objJsonResult.code = "0";
@@ -6919,7 +7282,7 @@
        {
            //获取系统参数
            string sErrMsg = "";
            if (oSystemParameter.ShowBillByOrgID(HStockOrgID,ref sErrMsg) == true)
            if (oSystemParameter.ShowBillByOrgID(HStockOrgID, ref sErrMsg) == true)
            {
                string sSourceBarCodeCtl = "N";   //校验-是否进行源单对应条码核对('Y'为核对)
                if (HBillType == "1205" && oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl.ToUpper() == "Y")
@@ -7562,15 +7925,64 @@
                }
            }
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æ ¡éªŒæ¨¡å—    è¿”回源单列表信息
        /// <summary>
        /// æºå•列表信息,根据单据类型、组织ID返回源单列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetCheckBillList_Json")]
        [HttpGet]
        public object GetCheckBillList_Json(string HBillType, Int64 HStockOrgID, string HBillNo, string HMater, string HCustom)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_GetCheckBillList '" + HBillType  + "'," + HStockOrgID.ToString() + ",'" + HBillNo + "','" + HMater + "','" + HCustom + "'", "h_p_WMS_GetCheckBillList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                    objJsonResult.Message = "没有返回任何源单信息!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    List<object> columnNameList = new List<object>();
                    //添加列名
                    foreach (DataColumn col in ds.Tables[0].Columns)
                    {
                        Type dataType = col.DataType;
                        string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                        columnNameList.Add(JsonConvert.DeserializeObject(ColmString));  //获取到DataColumn列对象的列名
                    }
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取源单单据信息成功!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取源单单据信息失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
@@ -7590,13 +8002,20 @@
        {
            try
            {
                WebS.ClsGy_BarCodeBill_WMS_Model WebSoBarModel = new WebS.ClsGy_BarCodeBill_WMS_Model();
                WebSoBarModel = oWebs.get_PackBarCode_PackUnionBill(HInterID, HBillNo, HBillType, HBarCode_Pack, HMaker, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                if (WebSoBarModel == null)
                ds = oCn.RunProcReturn("exec h_p_WMS_AddPackBarCode_PackUnionBill " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode_Pack + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_WMS_AddPackBarCode_PackUnionBill");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                    objJsonResult.Message = "扫描托条码发生错误!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
@@ -7604,8 +8023,8 @@
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = WebSoBarModel;
                    objJsonResult.Message = "成功!";
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
            }
@@ -7634,6 +8053,56 @@
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_AddPackBarCode_PackUnionBill_New " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBillSubType + "','" + HBarCode_Pack + "'", "h_p_WMS_AddPackBarCode_PackUnionBill_New");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描托条码发生错误!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                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;
            }
        }
        #endregion
        #region ç”Ÿäº§ç»„托单模块 æ‰«æå®¢æˆ·ç®±ï¼ˆæ‰˜ï¼‰æ¡ç  -凯贝装箱单     20251103
        /// <summary>
        /// ç”Ÿäº§ç»„托单模块 æ‰«æç®±ï¼ˆæ‰˜ï¼‰æ¡ç 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_PackBarCode_PackUnionBill_New_Json_Cus")]
        [HttpGet]
        public object Get_PackBarCode_PackUnionBill_New_Json_Cus(Int64 HInterID, string HBillNo, string HBillType, string HBillSubType, string HBarCode_Pack, string HSourceBillNo)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_AddPackBarCode_PackUnionBill_New_Cus " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBillSubType + "','" + HBarCode_Pack + "','" + HSourceBillNo + "'", "h_p_WMS_AddPackBarCode_PackUnionBill_New_Cus");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -7726,7 +8195,7 @@
            string sErrMsg = "";
            if (oSystemParameter.ShowBillByOrgID(HStockOrgID, ref sErrMsg) == true)
            {
                string sMaterialCtl = "Y";          //组托时托条码对应物料与需要组托的条码对应物料要一致(Y为需一致)
                string sMaterialCtl = "Y";          //组托物料是否一致控制(Y为控制)
                string sSourceBillTypeCtl = "Y";    //未入库条码进行组托时,进行同源单类型控制(Y为控制)
                string sSourceBillNoCtl = "Y";      //未入库条码进行组托时,进行同源单控制(Y为控制)
                sMaterialCtl = oSystemParameter.omodel.Sc_PackUnionBill_MaterialCtl.ToUpper();
@@ -7736,6 +8205,76 @@
                try
                {
                    ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_PackUnionBill_New '" + HBarCode + "'," + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBillSubType + "','" + HBarCode_Pack + "','" + HMaterNumber_Pack + "','" + sMaterialCtl + "','" + sSourceBillTypeCtl + "','" + sSourceBillNoCtl + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_WMS_AddBarCode_PackUnionBill_New");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "扫描条码发生错误!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        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;
                }
            }
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region ç”Ÿäº§ç»„托单模块 æ‰«æå®¢æˆ·æ‰˜æ¡ç å¯¹åº”条码  -凯贝装箱单     20251103
        /// <summary>
        /// ç”Ÿäº§ç»„托单模块 æ‰«ææ‰˜æ¡ç å¯¹åº”条码
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_BarCode_PackUnionBill_New_Json_Cus")]
        [HttpGet]
        public object Get_BarCode_PackUnionBill_New_Json_Cus(string HBarCode, Int64 HInterID, string HBillNo, string HBillType, string HBillSubType, string HBarCode_Pack, string HMaterNumber_Pack, string HMaker, Int64 HStockOrgID)
        {
            //获取系统参数
            string sErrMsg = "";
            if (oSystemParameter.ShowBillByOrgID(HStockOrgID, ref sErrMsg) == true)
            {
                string sMaterialCtl = "Y";          //组托物料是否一致控制(Y为控制)
                string sSourceBillTypeCtl = "Y";    //未入库条码进行组托时,进行同源单类型控制(Y为控制)
                string sSourceBillNoCtl = "Y";      //未入库条码进行组托时,进行同源单控制(Y为控制)
                sMaterialCtl = oSystemParameter.omodel.Sc_PackUnionBill_MaterialCtl.ToUpper();
                sSourceBillTypeCtl = oSystemParameter.omodel.Sc_PackUnionBill_SourceBillTypeCtl.ToUpper();
                sSourceBillNoCtl = oSystemParameter.omodel.Sc_PackUnionBill_SourceBillNoCtl.ToUpper();
                try
                {
                    ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_PackUnionBill_New_Cus '" + HBarCode + "'," + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBillSubType + "','" + HBarCode_Pack + "','" + HMaterNumber_Pack + "','" + sMaterialCtl + "','" + sSourceBillTypeCtl + "','" + sSourceBillNoCtl + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_WMS_AddBarCode_PackUnionBill_New_Cus");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
@@ -8186,7 +8725,7 @@
                string HIPAddress = "";                         //IP
                string HModCaption = "WMS-拆箱(拆托)模块";    //模块名
                ds = oCn.RunProcReturn("exec h_p_Sc_PackUnionBill_Delete_New " + HInterID.ToString() + ",'" + HBillNo + "','" + HBarCode_Pack + "','" + HMaker + "','" + ComputerName + "','" + HIPAddress + "','" + HModCaption + "'", "h_p_Sc_PackUnionBill_Delete_New");
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "成功";
@@ -8757,7 +9296,8 @@
            try
            {
                ds = oCn.RunProcReturn("select * from Gy_BarCodeBill where HBarcode='" + HBarCode + "'", "Gy_BarCodeBill");
                if (ds.Tables[0].Rows.Count == 0) {
                if (ds.Tables[0].Rows.Count == 0)
                {
                    DAL.ClsGy_BarCodeBill_View dal = new DAL.ClsGy_BarCodeBill_View();
                    string sErrMsg = "";
                    oSystemParameter.ShowBill(ref sErrMsg);
@@ -9552,7 +10092,7 @@
                try
                {
                    ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_WorkShop " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "'," + HQty.ToString() + ",'" + HSourceBillType + "'," + HWhID.ToString() + "," + HSPID.ToString() + ",'" + HCarBarCode + "'," + HStockOrgID.ToString() + ",'" + HMaker + "'," + DBUtility.ClsPub.BoolToString(SourceFlag) + ",'" + sBatchNoCtl + "','" + sMustQtyCtl + "'", "h_p_WMS_AddBarCode_WorkShop");
                    ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_WorkShop_TestByLLJ " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "'," + HQty.ToString() + ",'" + HSourceBillType + "'," + HWhID.ToString() + "," + HSPID.ToString() + ",'" + HCarBarCode + "'," + HStockOrgID.ToString() + ",'" + HMaker + "'," + DBUtility.ClsPub.BoolToString(SourceFlag) + ",'" + sBatchNoCtl + "','" + sMustQtyCtl + "'", "h_p_WMS_AddBarCode_WorkShop");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
@@ -9588,14 +10128,14 @@
                }
            }
            else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
@@ -9659,7 +10199,7 @@
        public object MaterialLowerBill_MaterInv(long HInterID, string HBillNo, string HBillType, Int64 HStockOrgID)
        {
            try
            {
            {
                ds = oCn.RunProcReturn("exec h_p_Kf_MaterialInventory " + HInterID + "," + HBillType + "," + HStockOrgID, "h_p_Kf_MaterialInventory");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
@@ -9706,7 +10246,7 @@
        {
            try
            {
                ds = oCn.RunProcReturn("select * from h_v_Gy_MouldIsUsed where å°è½¦æ¡ç ='" + HCarBarCode + "'" , "h_v_Gy_MouldIsUsed");
                ds = oCn.RunProcReturn("select * from h_v_Gy_MouldIsUsed where å°è½¦æ¡ç ='" + HCarBarCode + "'", "h_v_Gy_MouldIsUsed");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -9800,12 +10340,12 @@
        /// <returns></returns>
        [Route("WEBSController/GetGy_BarCodeBill_QiaoYi_PDA_Json")]
        [HttpGet]
        public object GetGy_BarCodeBill_QiaoYi_PDA_Json(string sBarCode, string sBarCodeOutDate, string sCustomerName, string sSellOutBillNo)
        public object GetGy_BarCodeBill_QiaoYi_PDA_Json(string sBarCode)
        {
            try
            {
                //ds = oCn.RunProcReturn("exec h_p_Gy_BarCodeBillList_QiaoYi '" + sBarCode+ "'", "h_p_Gy_BarCodeBillList_QiaoYi");
                ds = oCn.RunProcReturn("exec h_p_Gy_BarCodeBillList_QiaoYi2 '" + sBarCode + "','" + sBarCodeOutDate + "','" + sCustomerName + "','" + sSellOutBillNo + "'", "h_p_Gy_BarCodeBillList_QiaoYi2");
                ds = oCn.RunProcReturn("exec h_p_Gy_BarCodeBillList_QiaoYi '" + sBarCode + "'", "h_p_Gy_BarCodeBillList_QiaoYi");
                //ds = oCn.RunProcReturn("exec h_p_Gy_BarCodeBillList_QiaoYi2 '" + sBarCode + "','" + sBarCodeOutDate + "','" + sCustomerName + "','" + sSellOutBillNo + "'", "h_p_Gy_BarCodeBillList_QiaoYi2");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -10005,14 +10545,14 @@
            try
            {
                ds = oCn.RunProcReturn("exec h_p_MES_ProcessExchangeBillList_APP_HaiCheng " +
                    "@HBillNo = N'" + HBillNo + "', " +
                    "@HNumber = N'" + HNumber + "', " +
                    "@HName = N'" + HName + "', "  +
                    "@HBillNo = N'" + HBillNo + "', " +
                    "@HNumber = N'" + HNumber + "', " +
                    "@HName = N'" + HName + "', " +
                    "@HICMOBillNo = N'" + HICMOBillNo + "'," +
                    "@HProcID = N'" + HProcID + "', " +
                    "@HDeptID = N'" + HDeptID + "'"
                    , "h_p_MES_ProcessExchangeBillList_PDA_QiaoYi");
                if((bool)ds.Tables[1].Rows[0]["returntype"] == false)
                if ((bool)ds.Tables[1].Rows[0]["returntype"] == false)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -10027,7 +10567,8 @@
                    objJsonResult.Message = "当前所输入过滤条件,没有返回任何结果!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }else
                }
                else
                {
                    List<object> columnNameList = new List<object>();
                    //添加列名
@@ -10067,7 +10608,7 @@
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_MES_ProcessExchangeSubBillList_PDA_QiaoYi '" + HInterID+ "'", "h_p_MES_ProcessExchangeSubBillList_PDA_QiaoYi");
                ds = oCn.RunProcReturn("exec h_p_MES_ProcessExchangeSubBillList_PDA_QiaoYi '" + HInterID + "'", "h_p_MES_ProcessExchangeSubBillList_PDA_QiaoYi");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -10189,7 +10730,7 @@
                        string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                        columnNameList.Add(JsonConvert.DeserializeObject(ColmString));  //获取到DataColumn列对象的列名
                    }
                   if (HDATA=="HSPE")
                    if (HDATA == "HSPE")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
@@ -10198,7 +10739,7 @@
                        objJsonResult.list = columnNameList;
                        return objJsonResult;
                    }
                   else if (HDATA == "HICM")
                    else if (HDATA == "HICM")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
@@ -10207,7 +10748,7 @@
                        objJsonResult.list = columnNameList;
                        return objJsonResult;
                    }
                   else
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
@@ -10704,13 +11245,13 @@
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
                return objJsonResult;
            }
            catch (Exception e)
            {
@@ -10730,7 +11271,7 @@
        /// <returns></returns>
        [Route("WEBSController/UpdateKf_ICInvBal")]
        [HttpGet]
        public object UpdateKf_ICInvBal( )
        public object UpdateKf_ICInvBal()
        {
            try
            {
@@ -10766,7 +11307,7 @@
            try
            {
                ds = oCn.RunProcReturn("exec h_p_Kf_SellOutBarTraceReport '" + HBeginDate.ToShortDateString() + "','" + HEndDate.ToShortDateString() + "','" + HBarCode + "'," + HStockOrgID.ToString() + ",'" + HWhere + "'", "h_p_Kf_SellOutBarTraceReport");
                List<object> columnNameList = new List<object>();
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
@@ -10944,7 +11485,7 @@
                    "and HMaker = '" + HMaker + "' " +
                    "and HOrgID = " + HStockOrgID;
                DataSet ds = oCn.RunProcReturn(sql, "Gy_getCusBarCodeBillMain");
                if(ds!=null && ds.Tables[0].Rows.Count > 0)
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -10995,7 +11536,7 @@
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_rushBarCode")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_rushBarCode(Int64 HInterID, string HBillNo, string HBillType, string HBarCode, string HMaker, Int64 HStockOrgID,string HBarCode_Pre)
        public object Gy_getCusBarCodeBill_rushBarCode(Int64 HInterID, string HBillNo, string HBillType, string HBarCode, string HMaker, Int64 HStockOrgID, string HBarCode_Pre)
        {
            DataSet ds;
            try
@@ -11182,7 +11723,7 @@
        [HttpGet]
        public object Gy_getCusBarCodeBill_submitRushedBarCodeList(Int64 HInterID, string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID)
        {
            DataSet ds;
            try
            {
@@ -11361,7 +11902,7 @@
                    return objJsonResult;
                }
                //=============================================================================================================================================
                //开启事务
                oCn.BeginTran();
@@ -11711,7 +12252,7 @@
            {
                string sql = "exec h_p_Gy_BarCodeConfirmBill_rushBarCode " + HInterID + ",'" + HBillNo + "','" + HBillType + "','" + HMaker + "'," + HStockOrgID + ",'" + HBarCode + "'";
                ds = oCn.RunProcReturn(sql, "h_p_Gy_BarCodeConfirmBill_rushBarCode");
                if(ds==null || ds.Tables[0].Rows.Count == 0)
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -12188,7 +12729,7 @@
        #region æ£®æ¥·å…¶ä»–入库扫码
        public string Kf_OtherInBill_SK(string sBarCode,string HCustom1)
        public string Kf_OtherInBill_SK(string sBarCode, string HCustom1)
        {
            string HReturnResult;
            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
@@ -12241,7 +12782,8 @@
                                //生产返修申请
                                model.Add("FBillTypeID", new JObject() { ["FNumber"] = "SCRKSQ004" }); //单据类型
                            }
                            else {
                            else
                            {
                                //标准生产入库申请单
                                model.Add("FBillTypeID", new JObject() { ["FNumber"] = "SCRUSQD" }); //单据类型
                            }
@@ -12411,7 +12953,7 @@
                                            return "发生异常,入库申请单单号:" + ",审核失败" + result2;
                                        }
                                    }
                                }
                                }
                            }
                        }
@@ -12429,7 +12971,7 @@
                        //获取入库申请单单据号
                        string HBillNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["FBILLNO"]);
                        //包装线生成的生产入库申请单参与自动审核
                        if (HBillNo.Substring(0,2) == "RK" )
                        if (HBillNo.Substring(0, 2) == "RK")
                        {
                            //获取入库申请单单据状态
                            string HBillStatus = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["FDOCUMENTSTATUS"]);
@@ -12496,7 +13038,7 @@
                            //执行更新语句
                            oCn.RunProc(sql);
                        }
                    }
                }
@@ -12510,5 +13052,215 @@
            return HReturnResult;
        }
        #endregion
        #region ç»‘定小车仓库仓位
        /// <summary>
        /// ç»‘定小车仓库仓位
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/BindCarAndWH")]
        [HttpGet]
        public object BindCarAndWH( string HMaker, Int64 HWhID, Int64 HSPID, string HCarBarCode, Int64 HStockOrgID)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_bindingCarintoWh "  + HWhID.ToString() + "," + HSPID.ToString() + ",'" + HCarBarCode + "','" + HMaker+ "'," + HStockOrgID.ToString(), "h_p_bindingCarintoWh");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描物料条码,写入临时表失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                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;
            }
        }
        #endregion
        //转移模块
        [Route("WEBSController/CheckHW")]
        [HttpGet]
        public object CheckHW(int  HWhID,int HSPID,int HWhID2,int HSPID2,string HBarCode,string HCarBarCode1,string HCarBarCode2,string UserID)
        {
            try
            {
                if (HCarBarCode1 == null) HCarBarCode1 = "";
                if (HCarBarCode2 == null) HCarBarCode2 = "";
                string sql = $"exec Transfer_Operation {HWhID},{HSPID},{HWhID2},{HSPID2},'{HBarCode}','{HCarBarCode1}','{HCarBarCode2}','{UserID}'";
                ds = oCn.RunProcReturn(sql, "Transfer_Operation");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描物料条码,写入临时表失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                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;
            }
        }
       #region æƒ åº· ç”Ÿäº§é¢†æ–™å•校验 æ‰«ææºå• èŽ·å–ç”Ÿäº§é¢†æ–™å•å’Œä¸‹æ¸¸é¢†æ–™å•æœªå®¡æ ¸ å•据
        [Route("WEBSController/get_BillBarCode_BillCheck_Json_MateOut_HuiKang")]
        [HttpGet]
        public Object get_BillBarCode_BillCheck_Json_MateOut_HuiKang(string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                WebSoBar = null;
                // 1. æŸ¥è¯¢é‡‘蝶云中 æ‰€æœ‰ç¬¦åˆçš„生产领料单和下游领料单
                ds = oCn.RunProcReturn($@"
                    select HBillNo, HChecker,HMaker from h_v_Kf_MateOutBillList_K3 where HBillNo like '%{HBillNo}%'
                ", "h_v_Kf_MateOutBillList_K3");
                List<string> HBillNoList = new List<string>();
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    if (string.IsNullOrWhiteSpace(row["HChecker"].ToString())){
                        // 2. åˆ¤æ–­å•据审核状态,查找未被审核的单据
                        WebSoBar = oWebs.get_BillBarCode_BillCheck(row["HBillNo"].ToString(), HBillType, row["HMaker"].ToString(), HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                        if (WebSoBar != null)
                        {
                            // 3. èŽ·å–åˆ°ç¬¦åˆæ¡ä»¶çš„è¿”å›žå€¼ï¼Œç«‹å³è¿”å›ž
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "成功";
                            objJsonResult.data = WebSoBar;
                            return objJsonResult;
                        }
                    }
                }
                // 3. æ‰€æœ‰å•据都被审核,或者没有符合要求的单据,返回错误信息
                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 = "成功";
                    objJsonResult.data = WebSoBar;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描单据条码失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å‡¯è´ è£…箱单保存后  è‡ªåŠ¨ç”Ÿæˆäº§é‡æ±‡æŠ¥å•
        [Route("WEBSController/Sc_ICMOBillWorkQtyStatus_Tmp_Save")]
        [HttpGet]
        public object Sc_ICMOBillWorkQtyStatus_Tmp_Save(string HInterID)
        {
            try
            {
                string sql = $"exec [h_p_Sc_ICMOBillWorkQtyStatus_Save] {HInterID}";
                ds = oCn.RunProcReturn(sql, "[h_p_Sc_ICMOBillWorkQtyStatus_Save]");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "自动生成产量汇报单失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                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;
            }
        }
        #endregion
    }
}