yangle
2024-11-28 f9c66dcfca26da4eeba5c87df4ca3916461e37f8
WebAPI/Controllers/ÌõÂë¹ÜÀí/WEBSController.cs
@@ -16,11 +16,13 @@
using WebAPI;
using WebAPI.Models;
using WebAPI.Service;
using WebAPI.Utility;
namespace WebAPI.Controllers
{
    public class WEBSController : ApiController
    {
        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
        public string sWhere = "";
        public WebServer webserver = new WebServer();
        public DataSet ds = new DataSet();
@@ -30,9 +32,7 @@
        public WebS.WebService1 oWebs = new WebS.WebService1();
        public WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS();
        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
        WebS.ClsXt_SystemParameterMain oSystemParameterMain = new WebS.ClsXt_SystemParameterMain();
        string ComputerName = SystemInformation.ComputerName;   //设备名称
        #region å…¬ç”¨æ–¹æ³•
@@ -126,7 +126,7 @@
                if (oSystemParameter.ShowBill(ref sErrMsg) == true)
                {
                    //判断权限
                    if (!DBUtility.ClsPub.Security_Log(ModRightName, 1, false, HUserName))
                    if (!DBUtility.ClsPub.Security_Log(ModRightName, 3, false, HUserName))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
@@ -236,6 +236,59 @@
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取最大单据ID、单据号失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region èŽ·å–æœ€å¤§å•æ®å·
        /// <summary>
        /// èŽ·å–æœ€å¤§å•æ®å·
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetMaxBillNo_Json")]
        [HttpGet]
        public object GetMaxBillNo_Json(string HBillType)
        {
            try
            {
                string sErrMsg = "";
                string HBillNo = "";
                HBillNo = DBUtility.ClsPub.CreateBillCode_Prod(HBillType, ref sErrMsg, true);
                //----------创建虚表------------------------
                DataTable dt_Main = new DataTable("Json");
                dt_Main.Columns.Add("HBillNo", typeof(string));
                //---------创建新行------------------------
                DataRow dr_main = dt_Main.NewRow(); //创建新行
                dt_Main.Rows.Add(dr_main);          //将新行加入到表中
                dr_main["HBillNo"] = DBUtility.ClsPub.isStrNull(HBillNo);
                //返回数据
                if (HBillNo == "")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "最大单据号获取失败";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取成功";
                    objJsonResult.data = dt_Main;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取最大单据号失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
@@ -454,7 +507,7 @@
                //界面上未选择仓库 æˆ– ä»“位选择列表界面输入过滤条件
                if (HWhID == 0)
                {
                    ds = oCn.RunProcReturn("select HItemID,HNumber,HName,HWHID,HWhNumber,HWhName from h_v_IF_StockPlace where HStopflag=0 and HUSEORGID=" + HStockOrgID.ToString() + " and (HNumber like '%" + StockPlace + "%' or HName like '%" + StockPlace + "%')", "h_v_IF_StockPlace");
                    ds = oCn.RunProcReturn("select top 50 HItemID,HNumber,HName,HWHID,HWhNumber,HWhName from h_v_IF_StockPlace where HStopflag=0 and HUSEORGID=" + HStockOrgID.ToString() + " and (HNumber like '%" + StockPlace + "%' or HName like '%" + StockPlace + "%')", "h_v_IF_StockPlace");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
@@ -852,10 +905,256 @@
        #endregion
        #region ç”Ÿäº§è®¾å¤‡èµ„æ–™
        /// <summary>
        /// æ‰«ç è¿”回生产设备信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetEquip_Json")]
        [HttpGet]
        public object GetEquip_Json(string HBarCode)
        {
            try
            {
                ds = oCn.RunProcReturn("select HInterID,HEquipFileNumber,HName,HSourceID from h_v_Gy_EquipFileBill where HBarCode='" + HBarCode + "'", "h_v_Gy_EquipFileBill");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录,请确认所扫生产设备条码是否存在且为可用状态!";
                    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;
            }
        }
        /// <summary>
        /// èŽ·å–ç”Ÿäº§è®¾å¤‡åˆ—è¡¨ä¿¡æ¯
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetEquipList_Json")]
        [HttpGet]
        public object GetEquipList_Json(string Equip)
        {
            try
            {
                ds = oCn.RunProcReturn("select HInterID,HEquipFileNumber,HName,HSourceID,HSourceName from h_v_Gy_EquipFileBill where HEquipFileNumber like '%" + Equip + "%' or HName like '%" + Equip + "%'", "h_v_Gy_EquipFileBill");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何生产设备记录!";
                    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 å·¥åºèµ„æ–™
        /// <summary>
        /// æ‰«ç è¿”回工序信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetProcess_Json")]
        [HttpGet]
        public object GetProcess_Json(string HBarCode, Int64 HStockOrgID)
        {
            try
            {
                Int64 HProcID = 0;
                HProcID = DBUtility.ClsPub.isLong(HBarCode);
                ds = oCn.RunProcReturn("select HItemID,HNumber,HName from Gy_Process with(nolock) where HStopflag=0 and HItemID=" + HProcID.ToString() + " and HUSEORGID = " + HStockOrgID.ToString(), "Gy_Process");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录,请确认所扫工序条码是否属于该组织,且为非禁用状态!";
                    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;
            }
        }
        /// <summary>
        /// èŽ·å–å·¥åºåˆ—è¡¨ä¿¡æ¯
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetProcessList_Json")]
        [HttpGet]
        public object GetProcessList_Json(string Process, Int64 HStockOrgID)
        {
            try
            {
                ds = oCn.RunProcReturn("select HItemID,HNumber,HName from Gy_Process with(nolock) where HStopflag=0 and HUSEORGID=" + HStockOrgID.ToString() + " and (HNumber like '%" + Process + "%' or HName like '%" + Process + "%')", "Gy_Process");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何工序记录!";
                    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
        #endregion
        #region æ‰«ç æ¨¡å—调用方法
        #region ç›´æŽ¥è°ƒæ‹¨    èŽ·å–è°ƒæ‹¨å‡ºè´§ç±»åž‹
        /// <summary>
        /// èŽ·å–è°ƒæ‹¨å‡ºè´§ç±»åž‹
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetStockMoveStyle_Json")]
        [HttpGet]
        public Object GetStockMoveStyle_Json()
        {
            try
            {
                ds = oWebs.get_StockMoveStyle();
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "查询不到出货类型信息!";
                    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 ç›´æŽ¥è°ƒæ‹¨    èŽ·å–è°ƒæ‹¨æ–¹å‘
        /// <summary>
        /// èŽ·å–è°ƒæ‹¨æ–¹å‘
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetMoveDirect_Json")]
        [HttpGet]
        public Object GetMoveDirect_Json()
        {
            try
            {
                ds = oWebs.get_MoveDirect();
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "查询不到调拨方向信息!";
                    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 æ ¹æ®å•据类型获取单据子类型
@@ -897,6 +1196,56 @@
            }
        }
        #endregion
        #region æ‰«ç æ¨¡å—    è¿”回源单列表信息
        /// <summary>
        /// æºå•列表信息,根据单据类型、源单类型、组织ID返回源单列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetSourceBillList_Json")]
        [HttpGet]
        public object GetSourceBillList_Json(string HBillType, string HSourceBillType, Int64 HStockOrgID, string HSourceBillNo, string HMater, string HCustom)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_GetSourceBillList '" + HBillType + "','" + HSourceBillType + "'," + HStockOrgID.ToString() + ",'" + HSourceBillNo + "','" + HMater + "','" + HCustom + "'", "h_p_WMS_GetSourceBillList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
@@ -1243,10 +1592,114 @@
            }
        }
        /// <summary>
        /// å·²ä¸Šä¼ æŸ¥è¯¢ç•Œé¢ï¼Œæ ¹æ®å•据类型、单据号、源单号、用户、自定义字段查询已上传单据信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetKf_ICStockBillList_Json")]
        [HttpGet]
        public object GetKf_ICStockBillList_Json(string HBillType, string HBillNo, string HSourceBillNo, string HMaker, Int64 HStockOrgID, string sWhere)
        {
            try
            {
                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";
                    objJsonResult.count = 0;
                    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
        #region å·²ä¸Šä¼ åˆ—表界面,撤销功能,删除WMS表和本地出入库单记录,并更新TEMP表中的上传字段 HRelationInterID=0
        /// <summary>
        /// å·²ä¸Šä¼ åˆ—表界面,撤销功能,删除WMS表和本地出入库单记录,并更新TEMP表中的上传字段 HRelationInterID=0
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_DeleteICStockBillAndWMS_Json")]
        [HttpGet]
        public object set_DeleteICStockBillAndWMS_Json(Int64 HInterID, string HBillNo, string HBillType, string HMaker, string MvarReportTitle)
        {
            try
            {
                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)
                {
                    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.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "撤销单据已上传记录失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// å·²ä¸Šä¼ åˆ—表界面,撤销功能,删除WMS表和本地出入库单记录,并更新TEMP表中的上传字段 HRelationInterID=0
@@ -1289,6 +1742,42 @@
        #region æ¡ç å‡ºå…¥åº“缓存列表模块  åˆ é™¤ç¼“存列表单据
        /// <summary>
        /// åˆ é™¤ç¼“存列表单据,写入日志   20240619
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_DelPonderationBillMain_Temp_New_Json")]
        [HttpGet]
        public object set_DelPonderationBillMain_Temp_New_Json(long HInterID, string HBillNo, string HBillType, string HMaker, string MvarReportTitle)
        {
            try
            {
                string WorkList = "删除缓存单据,单据号:" + HBillNo;
                string SystemName = "WMS-" + MvarReportTitle + "模块";
                oCn.BeginTran();
                oCn.RunProc("Delete from KF_PonderationBillMain_Temp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + "'", ref DBUtility.ClsPub.sExeReturnInfo);
                //写入日志
                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 = "单据号:" + HBillNo + " åˆ é™¤æˆåŠŸ";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除条码出入库缓存列表单据失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// åˆ é™¤ç¼“存列表单据
@@ -1780,6 +2269,88 @@
        #endregion
        #region å…¶ä»–入库    æ ¡éªŒæ¨¡å¼
        /// <summary>
        /// å…¶ä»–入库校验上传
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveOtherInBill_BillCheck_Json")]
        [HttpPost]
        public object set_SaveOtherInBill_BillCheck_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string sMainStr = sArray[0].ToString();             //单据数据
            string HSourceBarCodeCtl = sArray[1].ToString();    //校验-是否进行源单对应条码核对('Y'为核对)
            try
            {
                List<Model.ClsKf_OtherInBillMain> lsmain = new List<Model.ClsKf_OtherInBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getOtherInBillMainByJson(sMainStr);
                WebAPI.WebS.ClsKf_OtherInBillMain websLsmain = new WebS.ClsKf_OtherInBillMain();
                websLsmain.HInterID = lsmain[0].HInterID;
                websLsmain.HBillNo = lsmain[0].HBillNo;
                websLsmain.HBillType = "1203";
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                //原单据为扫码生成,对原扫描的条码进行核对
                if (HSourceBarCodeCtl == "Y")
                {
                    if (oWebs.set_SaveOtherInBill_CLD_BillCheck_Verify(websLsmain, 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
                {
                    if (oWebs.set_SaveOtherInBill_CLD_BillCheck(websLsmain, 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;
                    }
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "其他入库校验失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
        #region é¢†æ–™å‡ºåº“    ä¸Šä¼ ç”Ÿå•
@@ -1832,6 +2403,10 @@
                {
                    websLsmain.HMainSourceBillType = "生产备料单";
                }
                else if (lsmain[0].HMainSourceBillType == "3710")
                {
                    websLsmain.HMainSourceBillType = "生产订单";
                }
                else
                {
                    websLsmain.HMainSourceBillType = "手工录入";
@@ -1840,6 +2415,11 @@
                websLsmain.HBillerID = lsmain[0].HBillerID;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                websLsmain.HOWNERID = lsmain[0].HSTOCKORGID;
                if(sSourceType== "3710")
                {
                    sSourceType = "3720";
                }
                if (oWebs.set_SaveMateOutBill_New(websLsmain, sSourceType, ref DBUtility.ClsPub.sErrInfo))
                {
@@ -2233,8 +2813,85 @@
        #endregion
        #region ç”Ÿäº§è¡¥æ–™    ä¸Šä¼ ç”Ÿå•
        #region ç”Ÿäº§è¡¥æ–™    æ–°å¢žæ¨¡å¼
        /// <summary>
        /// ç”Ÿäº§è¡¥æ–™æ–°å¢žä¸Šä¼ 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveMateReplenishOutBill_Json")]
        [HttpPost]
        public object set_SaveMateReplenishOutBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                List<Model.ClsKf_MateReplenishOutBillMain> lsmain = new List<Model.ClsKf_MateReplenishOutBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getMateReplenishOutBillMainByJson(msg1);
                WebS.ClsKf_MateReplenishOutBillMain websLsmain = new WebS.ClsKf_MateReplenishOutBillMain();
                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;
                if (lsmain[0].HMainSourceBillType == "3720")
                {
                    websLsmain.HMainSourceBillType = "生产用料清单";
                }
                else
                {
                    websLsmain.HMainSourceBillType = "手工录入";
                }
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HBillerID = lsmain[0].HBillerID;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                websLsmain.HOWNERID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveMateReplenishOutBill_New(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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "生产补料单上传失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region ç”Ÿäº§è¡¥æ–™    æ ¡éªŒæ¨¡å¼
@@ -2292,7 +2949,6 @@
        #endregion
        #endregion
        #region å§”外补料    ä¸Šä¼ ç”Ÿå•
@@ -2353,8 +3009,114 @@
        #endregion
        #region ç›´æŽ¥è°ƒæ‹¨    ä¸Šä¼ ç”Ÿå•
        #region ç›´æŽ¥è°ƒæ‹¨    æ–°å¢žæ¨¡å¼
        /// <summary>
        /// ç›´æŽ¥è°ƒæ‹¨æ–°å¢žä¸Šä¼ 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveMoveStockBill_Json")]
        [HttpPost]
        public object set_SaveMoveStockBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                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")
                {
                    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;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //失败!
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "直接调拨单上传失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æ¢æ‰˜è°ƒæ‹¨å•
@@ -2399,7 +3161,347 @@
        #endregion
        #region åˆ†æ­¥å¼è°ƒå‡º    ä¸Šä¼ ç”Ÿå•
        #region åˆ†æ­¥å¼è°ƒå‡º    æ–°å¢žæ¨¡å¼
        /// <summary>
        /// åˆ†æ­¥å¼è°ƒå‡ºæ–°å¢žä¸Šä¼ 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveMoveStockStepOutBill_Json")]
        [HttpPost]
        public object set_SaveMoveStockStepOutBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                List<Model.ClsKf_MoveStockStepOutBillMain> lsmain = new List<Model.ClsKf_MoveStockStepOutBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getMoveStockStepOutBillMainByJson(msg1);
                WebS.ClsKf_MoveStockStepOutBillMain websLsmain = new WebS.ClsKf_MoveStockStepOutBillMain();
                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;
                if (lsmain[0].HMainSourceBillType == "1402")
                {
                    websLsmain.HMainSourceBillType = "发货通知单";
                }
                else if (lsmain[0].HMainSourceBillType == "1243")
                {
                    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_SaveMoveStockStepOutBill_New(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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "分步式调出单上传失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
        #region åˆ†æ­¥å¼è°ƒå…¥    ä¸Šä¼ ç”Ÿå•
        #region åˆ†æ­¥å¼è°ƒå…¥    æ–°å¢žæ¨¡å¼
        /// <summary>
        /// åˆ†æ­¥å¼è°ƒå…¥æ–°å¢žä¸Šä¼ 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveMoveStockStepInBill_Json")]
        [HttpPost]
        public object set_SaveMoveStockStepInBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                List<Model.ClsKf_MoveStockStepInBillMain> lsmain = new List<Model.ClsKf_MoveStockStepInBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getMoveStockStepInBillMainByJson(msg1);
                WebS.ClsKf_MoveStockStepInBillMain websLsmain = new WebS.ClsKf_MoveStockStepInBillMain();
                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;
                if (lsmain[0].HMainSourceBillType == "1250")
                {
                    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_SaveMoveStockStepInBill_New(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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "分步式调入单上传失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
        #region é‡‡è´­é€€æ–™    ä¸Šä¼ ç”Ÿå•
        #region é‡‡è´­é€€æ–™    æ–°å¢žæ¨¡å¼
        /// <summary>
        /// é‡‡è´­é€€æ–™æ–°å¢žä¸Šä¼ 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SavePOStockInBackBill_Json")]
        [HttpPost]
        public object set_SavePOStockInBackBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                List<Model.ClsKf_ICStockBillMain> lsmain = new List<Model.ClsKf_ICStockBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getICStockBillMainByJson(msg1);
                WebS.ClsKf_ICStockBillMain websLsmain = new WebS.ClsKf_ICStockBillMain();
                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;
                if (lsmain[0].HMainSourceBillType == "1102")
                {
                    websLsmain.HMainSourceBillType = "采购订单";
                }
                else if (lsmain[0].HMainSourceBillType == "1105")
                {
                    websLsmain.HMainSourceBillType = "退料通知单";
                }
                else
                {
                    websLsmain.HMainSourceBillType = "手工录入";
                }
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HBillerID = lsmain[0].HBillerID;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                websLsmain.HOWNERID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SavePOStockInBackBill_New(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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "采购退料单上传失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
        #region ç”Ÿäº§é€€æ–™    ä¸Šä¼ ç”Ÿå•
        #region ç”Ÿäº§é€€æ–™    æ–°å¢žæ¨¡å¼
        /// <summary>
        /// ç”Ÿäº§é€€æ–™æ–°å¢žä¸Šä¼ 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveMateOutBackBill_Json")]
        [HttpPost]
        public object set_SaveMateOutBackBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                List<Model.ClsKf_ICStockBillMain> lsmain = new List<Model.ClsKf_ICStockBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getICStockBillMainByJson(msg1);
                WebS.ClsKf_ICStockBillMain websLsmain = new WebS.ClsKf_ICStockBillMain();
                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;
                if (lsmain[0].HMainSourceBillType == "3720")
                {
                    websLsmain.HMainSourceBillType = "生产用料清单";
                }
                else
                {
                    websLsmain.HMainSourceBillType = "手工录入";
                }
                websLsmain.HMaker = lsmain[0].HMaker;
                websLsmain.HBillerID = lsmain[0].HBillerID;
                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                websLsmain.HOWNERID = lsmain[0].HSTOCKORGID;
                if (oWebs.set_SaveMateOutBackBill_New(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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "生产退料单上传失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
        #region ç”Ÿäº§ç»„托单    ä¸Šä¼ ç”Ÿå•
@@ -2435,6 +3537,154 @@
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "生成生产组托单失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region ä¸Šæ–™é˜²é”™å•     ä¸Šä¼ ç”Ÿå•
        /// <summary>
        /// ä¸Šæ–™é˜²é”™å•新增上传
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveMaterToSourceBill_Json")]
        [HttpPost]
        public object set_SaveMaterToSourceBill_Json([FromBody] JObject oMain)
        {
            BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew;
            DAL.ClsSc_MaterToSourceBill BillNew = new DAL.ClsSc_MaterToSourceBill();
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                string sMainStr = "[" + msg1.ToString() + "]";
                List<Model.ClsSc_MaterToSourceBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_MaterToSourceBillMain>>(sMainStr);
                //单据号是否重复
                if (BillNew.IsExistBillNo(ref ClsPub.sExeReturnInfo, mainList[0].HBillNo, BillStatus, mainList[0].HInterID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "单据号重复!不允许保存!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //判断会计期是否合理
                string s = "";
                int sYear = 0;
                int sPeriod = 0;
                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(mainList[0].HDate, ref sYear, ref sPeriod, ref s) == false)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = s;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //固定赋值=================================
                BillNew.omodel.HYear = sYear;
                BillNew.omodel.HPeriod = sPeriod;
                BillNew.omodel.HBillType = "3786";
                BillNew.omodel.HInterID = mainList[0].HInterID;
                BillNew.omodel.HBillNo = mainList[0].HBillNo;
                BillNew.omodel.HDate = mainList[0].HDate;
                BillNew.omodel.HRemark = mainList[0].HRemark;
                BillNew.omodel.HMaker = mainList[0].HMaker;
                BillNew.omodel.HSTOCKORGID = mainList[0].HSTOCKORGID;
                DBUtility.ClsPub.CurUserName = mainList[0].HMaker;
                //====================================================
                BillNew.omodel.HProcExchInterID = mainList[0].HProcExchInterID;
                BillNew.omodel.HProcExchEntryID = mainList[0].HProcExchEntryID;
                BillNew.omodel.HProcExchBillNo = mainList[0].HProcExchBillNo;
                BillNew.omodel.HICMOInterID = mainList[0].HICMOInterID;
                BillNew.omodel.HICMOEntryID = mainList[0].HICMOEntryID;
                BillNew.omodel.HICMOBillNo = mainList[0].HICMOBillNo;
                BillNew.omodel.HSourceID = mainList[0].HSourceID;
                BillNew.omodel.HSourceBarCode = mainList[0].HSourceBarCode;
                BillNew.omodel.HEquipID = mainList[0].HEquipID;
                BillNew.omodel.HWorkerID = mainList[0].HWorkerID;
                BillNew.omodel.HWorkerBarCode = mainList[0].HWorkerBarCode;
                BillNew.omodel.HGroupID = mainList[0].HGroupID;
                BillNew.omodel.HProcID = mainList[0].HProcID;
                BillNew.omodel.HProcNo = mainList[0].HProcNo;
                BillNew.omodel.HMainSourceBillType = mainList[0].HMainSourceBillType;
                if (mainList[0].HMainSourceBillType == "3772")
                {
                    BillNew.omodel.HMainSourceInterID = mainList[0].HProcExchInterID;
                    BillNew.omodel.HMainSourceEntryID = mainList[0].HProcExchEntryID;
                    BillNew.omodel.HMainSourceBillNo = mainList[0].HProcExchBillNo;
                }
                else
                {
                    BillNew.omodel.HMainSourceInterID = mainList[0].HICMOInterID;
                    BillNew.omodel.HMainSourceEntryID = mainList[0].HICMOEntryID;
                    BillNew.omodel.HMainSourceBillNo = mainList[0].HICMOBillNo;
                }
                //子表赋值
                ds = oCn.RunProcReturn("exec h_p_Sc_GetMaterToSourceBill_Temp " + BillNew.omodel.HInterID.ToString() + ",'" + BillNew.omodel.HBillType + "'", "h_p_Sc_GetMaterToSourceBill_Temp");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有扫码信息,请先扫描条码,确认无误后再提交!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    for (int i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
                    {
                        Model.ClsSc_MaterToSourceBillSub oSub = new Model.ClsSc_MaterToSourceBillSub();
                        //固定赋值========================================
                        oSub.HEntryID = i + 1;
                        oSub.HRemark = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HRemark"]);
                        oSub.HSourceInterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[i]["HSourceInterID"]);
                        oSub.HSourceEntryID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[i]["HSourceEntryID"]);
                        oSub.HSourceBillType = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HSourceBillType"]);
                        oSub.HSourceBillNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HSourceBillNo"]);
                        oSub.HRelationQty = DBUtility.ClsPub.isDoule(ds.Tables[0].Rows[i]["HRelationQty"]);
                        oSub.HRelationMoney = DBUtility.ClsPub.isDoule(ds.Tables[0].Rows[i]["HRelationMoney"]);
                        oSub.HBillNo_bak = mainList[0].HBillNo;
                        //=============================
                        oSub.HMaterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[i]["HMaterID"]);
                        oSub.HUnitID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[i]["HUnitID"]);
                        oSub.HQty = DBUtility.ClsPub.isSingle(ds.Tables[0].Rows[i]["HQty"]);
                        oSub.HPieceQty = DBUtility.ClsPub.isSingle(ds.Tables[0].Rows[i]["HPieceQty"]);
                        oSub.HScanDate = DBUtility.ClsPub.isDate(ds.Tables[0].Rows[i]["HScanDate"]);
                        oSub.HBarCode = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HBarCode"]);
                        oSub.HBarCode_Pack = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HBarCode_Pack"]);
                        BillNew.DetailColl.Add(oSub);
                    }
                }
                //保存
                bool bResult;
                bResult = BillNew.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                if (bResult)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;  //成功!
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "上料防错单上传失败!" + e.Message;
                objJsonResult.data = null;
                return objJsonResult;
            }
@@ -2667,31 +3917,55 @@
        [HttpGet]
        public object get_SourceBarCode_MateOut_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Double HPTQty, Int64 HPlanMode, Int64 HFIFOWhID, Int64 HStockOrgID)
        {
            try
            //获取系统参数
            string sErrMsg = "";
            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
            {
                WebSoBar = oWebs.get_SourceBarCode_MateOut(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HPTQty, HPlanMode, HFIFOWhID, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                if (WebSoBar == null)
                if (oSystemParameter.omodel.WMS_CloudMode.ToUpper() == "N") //系统参数是否为私有云模式,N为公有云模式,Y为私有云模式
                {
                    if(HSourceBillType == "1214")
                    {
                        //重新同步生产发料通知单
                        Kf_MateOutRequestBillController obill = new Kf_MateOutRequestBillController();
                        objJsonResult = obill.GetKf_MateOutRequestBill_Sync_Json(HSourceBillNo, HSourceBillType);
                    }
                }
                try
                {
                    WebSoBar = oWebs.get_SourceBarCode_MateOut(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HPTQty, HPlanMode, HFIFOWhID, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                    if (WebSoBar == null)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "成功";
                        objJsonResult.data = WebSoBar;
                        return objJsonResult;
                    }
                }
                catch (Exception e)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                    objJsonResult.Message = "扫描源单条码失败!" + e.ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = WebSoBar;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描源单条码失败!" + e.ToString();
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
@@ -2796,6 +4070,48 @@
            try
            {
                WebSoBar = oWebs.get_SourceBarCode_OtherOut(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HFIFOWhID, HOWNERID, ref DBUtility.ClsPub.sErrInfo);
                if (WebSoBar == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    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 ç”Ÿäº§è¡¥æ–™    æ‰«ææºå•条码
        /// <summary>
        /// ç”Ÿäº§è¡¥æ–™    æ‰«ææºå•条码
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_SourceBarCode_MateReplenishOut_Json")]
        [HttpGet]
        public object get_SourceBarCode_MateReplenishOut_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Int64 HFIFOWhID, Int64 HStockOrgID)
        {
            try
            {
                WebSoBar = oWebs.get_SourceBarCode_MateReplenishOut(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HFIFOWhID, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                if (WebSoBar == null)
                {
                    objJsonResult.code = "0";
@@ -2951,6 +4267,90 @@
        #endregion
        #region é‡‡è´­é€€æ–™    æ‰«ææºå•条码
        /// <summary>
        /// é‡‡è´­é€€æ–™    æ‰«ææºå•条码
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_SourceBarCode_POStockInBack_Json")]
        [HttpGet]
        public object get_SourceBarCode_POStockInBack_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                WebSoBar = oWebs.get_SourceBarCode_POStockInBack(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                if (WebSoBar == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    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 ç”Ÿäº§é€€æ–™    æ‰«ææºå•条码
        /// <summary>
        /// ç”Ÿäº§é€€æ–™    æ‰«ææºå•条码
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_SourceBarCode_MateOutBack_Json")]
        [HttpGet]
        public object get_SourceBarCode_MateOutBack_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                WebSoBar = oWebs.get_SourceBarCode_MateOutBack(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                if (WebSoBar == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = WebSoBar;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描源单条码失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
@@ -2973,6 +4373,246 @@
                {
                    sJXCode = POStockInBillController.JX_Json(sBarCode, HInterID, HBillType, HStockOrgID, HBillNo, HMaker);
                    SourceFlag = true;
                }
                else if(oSystemParameter.omodel.WMS_CampanyName == "森楷" && HSourceBillType == "1241")
                {
                    DataSet ds;
                    string sql = "select HBarCode,HSourceInterID,HSourceEntryID,HSourceBillNo from Gy_BarCodeBill with(nolock) where HBarCode = '" + sBarCode + "'";
                    string HDataBaseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DataBaseName");//获取金蝶数据库名称
                    string HSourceBillNo_TB = "";
                    Int64 HSourceInterID = 0;
                    ds = oCn.RunProcReturn(sql, "Gy_BarCodeBill");
                    //判断条码信息是否在条码档案中
                    if (ds == null || ds.Tables[0].Rows.Count < 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "条码档案中不存在此条码编号:" + sBarCode;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        //获取入库申请单单号/主ID
                        HSourceBillNo_TB = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HSourceBillNo"]);
                        HSourceInterID = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[0]["HSourceInterID"]);
                        //根据入库申请单单号判断单据信息是否已经同步到金蝶
                        sql = string.Format(@"select * from {0}..TFKO_t_Cust100009 with(nolock) where FBILLNO = '" + HSourceBillNo_TB + "'", HDataBaseName);
                        LogService.Write("其他入库查询入库申请单是否存在:" + sql);
                        ds = oCn.RunProcReturn(sql, "TFKO_t_Cust100009");
                        //入库申请单没有同步到金蝶则进行同步
                        if (ds == null || ds.Tables[0].Rows.Count < 1)
                        {
                            sql = "exec h_p_Kf_StockInRequestBillToErp '" + HSourceInterID + "','" + HSourceBillNo_TB + "'";
                            LogService.Write("其他入库获取源单信息:" + sql);
                            ds = oCn.RunProcReturn(sql, "h_p_Kf_StockInRequestBillToErp");
                            if (ds == null || ds.Tables[0].Rows.Count == 0)
                            {
                                oCn.RollBack();
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "webapi入库申请单同步,获取信息失败";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            else
                            {
                                JObject model = new JObject();
                                //model.Add("FBillType", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["FBillType"]) }); //单据类型
                                model.Add("FDate", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["日期"])); //单据日期
                                model.Add("FStockOrgId", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["库存组织代码"]) }); //库存组织代码 ???
                                model.Add("FBillNo", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["单据号"])); //单据号
                                model.Add("FStockDirect", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["库存方向"])); //库存方向
                                model.Add("FDEPTID", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["部门代码"]) }); //生产车间
                                model.Add("F_paez_Text", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["入库码单"])); //入库码单
                                model.Add("F_paez_Integer2", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["筒子数"])); //筒子数
                                model.Add("F_paez_Integer1", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["筒管只数"])); //筒管只数
                                model.Add("F_paez_Integer3", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["定长"])); //定长      ???
                                //model.Add("F_paez_BaseProperty4", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["筒重"])); //筒重
                                model.Add("F_paez_Base", new JObject() { ["FSTAFFNUMBER"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["工号"]) }); //工号        ???必填 FSTAFFNUMBER
                                model.Add("F_paez_Combo", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["班次代码"])); //班次    ???必填
                                //model.Add("F_paez_BaseProperty1", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["批号"])); //批号
                                model.Add("F_paez_Integer", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["箱数"])); //箱数    ???
                                model.Add("F_paez_Decimal2", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["总重"])); //总重
                                //model.Add("F_paez_BaseProperty2", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["成品编码"])); //成品编码
                                //model.Add("F_paez_BaseProperty5", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["品名"])); //品名
                                model.Add("F_paez_Base1", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["线号"]) }); //线号        ???必填
                                //model.Add("F_paez_BaseProperty", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["机台"])); //机台
                                model.Add("F_paez_Decimal", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["箱重"])); //箱重
                                //model.Add("F_WJUK_Text", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["来源"])); //来源
                                model.Add("FDEPTID1", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["部门代码"]) });//部门
                                //model.Add("F_paez_BaseProperty6", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["捻向"])); //捻向
                                //model.Add("F_paez_BaseProperty7", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["管色"])); //管色
                                model.Add("F_paez_Assistant", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["等级"]) });//等级         ???必填
                                model.Add("F_paez_Text11", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["最小箱号"])); //最小箱号
                                //model.Add("F_paez_Text3", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["文本"])); //文本
                                model.Add("F_paez_Text4", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["最大箱号"])); //最大箱号
                                //model.Add("F_paez_PrintTimes", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["打印次数"])); //打印次数
                                //model.Add("F_paez_Text5", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["线号"])); //条码打印
                                //model.Add("F_paez_BaseProperty10", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["部门代码"]) }); //生产部门
                                model.Add("F_paez_Combo1", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["是否内外贸"])); //是否内外贸
                                model.Add("F_paez_Combo2", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["产品类型"])); //产品类型
                                model.Add("F_paez_Combo3", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["满版状态"])); //满版状态
                                //model.Add("F_paez_BaseProperty11", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["规格型号"])); //规格型号
                                //model.Add("F_paez_BaseProperty12", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["网别"])); //网别
                                //model.Add("F_TFKO_Text4", Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["箱号前缀"])); //箱号前缀
                                model.Add("F_paez_WB", new JObject() { ["FNumber"] = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0]["网别"]) }); //网别1       ???
                                JArray Fentity = new JArray();
                                foreach (DataRow item in ds.Tables[0].Rows)
                                {
                                    JObject FentityModel = new JObject();
                                    FentityModel.Add("FMATERIALID", new JObject() { ["FNumber"] = item["物料代码"].ToString() }); // ç‰©æ–™ä»£ç 
                                    FentityModel.Add("FUnitID", new JObject() { ["FNumber"] = item["计量单位代码"].ToString() });  // å•位代码 ???
                                    FentityModel.Add("FQty", item["净重"].ToString()); //净重
                                    FentityModel.Add("FBASEUNITID", new JObject() { ["FNumber"] = item["基本计量单位代码"].ToString() });  // åŸºæœ¬å•位代码
                                    FentityModel.Add("FBASEQTY", item["实收数量"].ToString()); //实收数量
                                    FentityModel.Add("FSecUNITID", new JObject() { ["FNumber"] = item["库存辅计量单位代码"].ToString() });  // åº“存辅计量单位代码
                                    FentityModel.Add("FSecQTY", item["库存辅单位实收数量"].ToString()); //实收数量(库存辅单位)
                                    FentityModel.Add("FOWNERTYPEID", item["货主类型"].ToString()); //货主类型  ???数值
                                    FentityModel.Add("FOWNERID", new JObject() { ["FNumber"] = item["货主代码"].ToString() });  // è´§ä¸»ä»£ç 
                                    FentityModel.Add("FKEEPERTYPEID", item["保管者类型"].ToString()); //保管者类型  ???数值
                                    FentityModel.Add("FKEEPERID", new JObject() { ["FNumber"] = item["保管者代码"].ToString() });  // ä¿ç®¡è€…代码
                                    FentityModel.Add("FAuxPropId", new JObject() { ["FAUXPROPID__FF100003"] = new JObject() { ["FNumber"] = item["辅助属性代码"].ToString() } });  // è¾…助属性
                                    FentityModel.Add("FExtAuxUnitId", new JObject() { ["FNumber"] = item["辅计量单位代码"].ToString() });  // è¾…计量单位代码
                                    FentityModel.Add("FExtAuxUnitQty", item["箱数"].ToString()); //箱数
                                    FentityModel.Add("F_TFKO_Assistant", new JObject() { ["FNumber"] = item["网别代码"].ToString() });  // ç½‘别 ???必填
                                    FentityModel.Add("F_TFKO_Assistant1", new JObject() { ["FNumber"] = item["孔型代码"].ToString() });  // å­”åž‹
                                    FentityModel.Add("F_TFKO_Assistant2", new JObject() { ["FNumber"] = item["色泽代码"].ToString() });  // è‰²æ³½ ???必填
                                    FentityModel.Add("F_TFKO_Assistant3", new JObject() { ["FNumber"] = item["纤度代码"].ToString() });  // çº¤åº¦
                                    FentityModel.Add("F_paez_Qty", item["毛重"].ToString()); //毛重  ???不能小于等于0
                                    FentityModel.Add("F_TFKO_Text1", item["管色"].ToString()); //管色
                                    FentityModel.Add("F_TFKO_Text2", item["捻向"].ToString()); //捻向
                                    FentityModel.Add("FBoxcode", item["箱号"].ToString()); //箱号
                                    FentityModel.Add("F_PAEZ_SQSL", item["申请单数量"].ToString()); //申请单数量
                                    FentityModel.Add("F_paez_Integer4", item["筒子数"].ToString()); //筒子数
                                    FentityModel.Add("F_paez_BaseQty", item["实发数量"].ToString()); //实发数量
                                    FentityModel.Add("F_paez_Qty1", item["实收数量"].ToString()); //实收数量
                                    FentityModel.Add("F_paez_Text2", item["箱号"].ToString()); //箱号 ???不能为数字
                                    FentityModel.Add("FLOT", new JObject() { ["FNumber"] = item["批号"].ToString() });  // è¾…计量单位代码
                                    //JArray Fentity2 = new JArray();
                                    //JObject FentityModel2 = new JObject();
                                    //FentityModel2.Add("FEntity_Link_FFlowId", item["FEntity_Link_FFlowId"].ToString());
                                    //FentityModel2.Add("FEntity_Link_FFlowLineId", item["FEntity_Link_FFlowLineId"].ToString());
                                    //FentityModel2.Add("FEntity_Link_FRuleId", item["FEntity_Link_FRuleId"].ToString());
                                    //FentityModel2.Add("FEntity_Link_FSTableName", item["FEntity_Link_FSTableName"].ToString());
                                    //FentityModel2.Add("FEntity_Link_FSBillId", item["FEntity_Link_FSBillId"].ToString());
                                    //FentityModel2.Add("FEntity_Link_FSId", item["FEntity_Link_FSId"].ToString());
                                    //Fentity2.Add(FentityModel2);
                                    //FentityModel.Add("FEntity_Link", Fentity2);
                                    //FentityModel.Add("FBFLowId", new JObject() { ["FID"] = item["FBFLOWID"].ToString() });
                                    Fentity.Add(FentityModel);
                                }
                                model.Add("FEntity", Fentity); //明细信息
                                JObject jsonRoot = new JObject()
                                {
                                    ["Creator"] = "",
                                    ["NeedUpDateFields"] = new JArray(),
                                    ["NeedReturnFields"] = new JArray(),
                                    //["IsDeleteEntry"] = "true",
                                    //["SubSystemId"] = "",
                                    //["IsVerifyBaseDataField"] = "false",
                                    ["IsDeleteEntry"] = "true",
                                    ["SubSystemId"] = "",
                                    ["IsVerifyBaseDataField"] = "true",
                                    ["IsEntryBatchFill"] = "false",
                                    ["ValidateFlag"] = "true",
                                    ["NumberSearch"] = "true",
                                    ["IsAutoAdjustField"] = "false",
                                    ["InterationFlags"] = "",
                                    ["IgnoreInterationFlag"] = "",
                                    //["IsAutoSubmitAndAudit"] = true,//自动调用提交和审核功能
                                    ["Model"] = model
                                };
                                //从配置文件获取 CLOUD网址、账套信息、登录用户、登录密码
                                if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
                                {
                                    //oCn.RollBack();
                                    objJsonResult.code = "0";
                                    objJsonResult.count = 0;
                                    objJsonResult.Message = "入库申请单同步获取登录账号密码失败!";
                                    objJsonResult.data = null;
                                    return objJsonResult;
                                }
                                LogService.Write("其他入库,即将登录金蝶");
                                var loginRet = InvokeHelper.Login();
                                LogService.Write("其他入库,登录金蝶结果1:" + loginRet);
                                LogService.Write("其他入库,登录金蝶结果2:" + JObject.Parse(loginRet)["LoginResultType"].Value<int>());
                                var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                                if (isSuccess == 0)
                                {
                                    LogService.Write("其他入库,登录金蝶失败!");
                                    //oCn.RollBack();
                                    objJsonResult.code = "0";
                                    objJsonResult.count = 0;
                                    objJsonResult.Message = "登录金蝶失败!";
                                    objJsonResult.data = null;
                                    return objJsonResult;
                                }
                                else
                                {
                                    string result = InvokeHelper.Save("k18d2ab4f14034c569576ec8e0835a80c", JsonConvert.SerializeObject(jsonRoot));//保存
                                    if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
                                    {
                                        LogService.Write("入库申请单同步金蝶云失败:" + JsonConvert.SerializeObject(jsonRoot));
                                        //oCn.RollBack();
                                        objJsonResult.code = "0";
                                        objJsonResult.count = 0;
                                        objJsonResult.Message = "入库申请单同步金蝶云失败!单号:" + HSourceBillNo_TB + result + jsonRoot;
                                        objJsonResult.data = null;
                                        return objJsonResult;
                                    }
                                    //提交审核
                                    string result1 = string.Empty;
                                    string result2 = string.Empty;
                                    var fID = JObject.Parse(result)["Result"]["Id"].ToString();
                                    var fBillNo = JObject.Parse(result)["Result"]["Number"].ToString();
                                    var json = new
                                    {
                                        Ids = fID,
                                    };
                                    if (oSystemParameter.omodel.Kf_StockInRequestBill_AutoCheck == "Y") //系统参数  è‡ªåŠ¨å®¡æ ¸
                                    {
                                        result1 = InvokeHelper.Submit("k18d2ab4f14034c569576ec8e0835a80c", JsonConvert.SerializeObject(json));//提交
                                        result2 = InvokeHelper.Audit("k18d2ab4f14034c569576ec8e0835a80c", JsonConvert.SerializeObject(json));//审核
                                        if (JObject.Parse(result1)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
                                        {
                                            //oCn.RollBack();
                                            objJsonResult.code = "0";
                                            objJsonResult.count = 0;
                                            objJsonResult.Message = "入库申请单单号:" + ",提交失败" + result1;
                                            objJsonResult.data = null;
                                            return objJsonResult;
                                        }
                                        if (JObject.Parse(result2)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
                                        {
                                            //oCn.RollBack();
                                            objJsonResult.code = "0";
                                            objJsonResult.count = 0;
                                            objJsonResult.Message = "入库申请单单号:" + ",审核失败" + result2;
                                            objJsonResult.data = null;
                                            return objJsonResult;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                else
                {
@@ -3020,6 +4660,66 @@
        #endregion
        #region ç‰©æ–™æ¡ç å¤„理方法    è°ƒæ‹¨æ¨¡å—
        /// <summary>
        /// ç‰©æ–™æ¡ç æ–‡æœ¬æ¡† è°ƒæ‹¨æ‰«ç è°ƒç”¨  20240222
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/get_BarCode_MoveStock_New_Json")]
        [HttpGet]
        public Object get_BarCode_MoveStock_New_Json(string sBarCode, Int64 HInterID, string HBillType, string HBillNo, string HMaker, Int64 HWhID, Int64 HSPID, Int64 HSCWHID, Int64 HSCSPID, Double HQty, bool SourceFlag, string HSourceBillNo, string HSourceBillType, Int64 HStockInOrgID, Int64 HStockOutOrgID, string HScanStyle, string HCustom1, string HCustom2)
        {
            string sErrMsg = "";
            string sJXCode = "";
            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
            {
                if (oSystemParameter.omodel.WMS_CampanyName == "安瑞") //系统参数  å®¢æˆ·å®šåˆ¶åŒ–名称     ç©ºç™½ä¸ºé€šç”¨
                {
                    sJXCode = POStockInBillController.JX_Json(sBarCode, HInterID, HBillType, HStockOutOrgID, HBillNo, HMaker);
                    SourceFlag = true;
                }
                else
                {
                    sJXCode = sBarCode;
                }
                try
                {
                    WebSoBar = oWebs.get_BarCode_MoveStock(sJXCode, HInterID, HBillType, HBillNo, HMaker, HWhID, HSPID, HSCWHID, HSCSPID, HQty, SourceFlag, HSourceBillNo, HSourceBillType, HStockInOrgID, HStockOutOrgID, HScanStyle, ref DBUtility.ClsPub.sErrInfo, HCustom1, HCustom2);
                    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;
                }
            }
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// ç‰©æ–™æ¡ç æ–‡æœ¬æ¡† æ‰«ç è°ƒç”¨
@@ -3453,11 +5153,99 @@
            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
            {
                string sSourceBarCodeCtl = "N";   //校验-是否进行源单对应条码核对('Y'为核对)
                if (HBillType == "1205" && oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
                #region ç³»ç»Ÿå‚数获取
                //采购入库单
                if (HBillType == "1201")
                {
                    //销售出库单
                    sSourceBarCodeCtl = "Y";
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //生产入库单
                if (HBillType == "1202")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_ProductInBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //其他入库单
                if (HBillType == "1203")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //领料出库单
                else if (HBillType == "1204")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_MateOutBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //销售出库单
                else if (HBillType == "1205")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //其他出库单
                else if (HBillType == "1206")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_OtherOutBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //委外领料单
                else if (HBillType == "1211")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //生产补料单
                else if (HBillType == "1254")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //委外补料单
                else if (HBillType == "1255")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                //直接调拨单
                else if (HBillType == "1207")
                {
                    //校验-是否进行源单对应条码核对('Y'为核对)
                    if (oSystemParameter.omodel.Kf_MoveStockBillCheck_SourceBarCodeCtl == "Y")
                    {
                        sSourceBarCodeCtl = "Y";
                    }
                }
                #endregion
                if (oSystemParameter.omodel.WMS_CampanyName == "安瑞") //系统参数  å®¢æˆ·å®šåˆ¶åŒ–名称     ç©ºç™½ä¸ºé€šç”¨
                {
@@ -3533,6 +5321,71 @@
        #endregion
        #region è¿”回单据列表信息    20241114
        /// <summary>
        /// è¿”回单据列表信息    æ ¡éªŒæ¨¡å¼
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetKf_PonderationBillMain_Temp_BillCheck_New_Json")]
        [HttpGet]
        public object GetKf_PonderationBillMain_Temp_BillCheck_New_Json(long HInterID, string HBillType, string sWhere, string HSourceBarCodeCtl)
        {
            try
            {
                //原单据为扫码生成,对原扫描的条码进行核对
                if (HSourceBarCodeCtl == "Y")
                {
                    ds = oCn.RunProcReturn("exec h_p_KF_PonderationBillMain_TempList_Verify " + HInterID.ToString() + ",'" + HBillType + "','" + sWhere + "'", "h_p_KF_PonderationBillMain_TempList_Verify");
                }
                //原单据非扫码生成
                else
                {
                    ds = oCn.RunProcReturn("exec h_p_KF_PonderationBillMain_TempList_BillCheck " + HInterID.ToString() + ",'" + HBillType + "','" + sWhere + "'", "h_p_KF_PonderationBillMain_TempList_BillCheck");
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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 = new
                    {
                        Materlist = ds.Tables[0],           //返回物料明细列表信息(0)
                        BarCodeDetailslist = ds.Tables[1],  //返回当前所扫描条码明细信息(5)
                    };
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取列表信息失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è¿”回单据列表信息
        /// <summary>
@@ -3579,6 +5432,50 @@
                objJsonResult.Message = "获取列表信息失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æ ¡éªŒæ‰«ç æ¨¡å—,删除选中行条码出入库临时表记录    20241114
        /// <summary>
        /// æ‰«ç æ¨¡å—,删除选中行条码出入库临时表记录
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_DeleteBarCodeByEntryID_BillCheck_New_Json")]
        [HttpGet]
        public object set_DeleteBarCodeByEntryID_BillCheck_New_Json(long HInterID, string HBillType, long HSourceInterID, long HSourceEntryID, string HSourceBarCodeCtl)
        {
            //原单据为扫码生成,对原扫描的条码进行核对
            if (HSourceBarCodeCtl == "Y")
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "校验条码,无需删除!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            //原单据非扫码生成
            else
            {
                try
                {
                    oCn.RunProc("Delete from KF_PonderationBillMain_Temp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + "' and HSourceInterID=" + HSourceInterID.ToString() + " and HSourceEntryID=" + HSourceEntryID.ToString() + " and HQty<>0 ", ref DBUtility.ClsPub.sExeReturnInfo);
                    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;
                }
            }
        }
@@ -4550,8 +6447,963 @@
        #endregion
        #region å¤„理方法
        #region å‡ºé—¨ç¡®è®¤å•模块调用方法     20240308
        #region æ‰«æå•据号条码调用
        /// <summary>
        /// æ‰«æå•据号条码
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_SourceBarCode_OutDoorCheck_Json")]
        [HttpGet]
        public object Get_SourceBarCode_OutDoorCheck_Json(string HBarCode, Int64 HStockOrgID)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_AddSourceBarCode_OutDoorCheck '" + HBarCode + "'," + HStockOrgID.ToString(), "h_p_WMS_AddSourceBarCode_OutDoorCheck");
                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][0]) == 0)
                    {
                        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;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "扫描单据号条码失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                        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>
        /// æ–°å¢žç”Ÿæˆå‡ºé—¨ç¡®è®¤å•
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveOutDoorCheckBill_Json")]
        [HttpPost]
        public object set_SaveOutDoorCheckBill_Json([FromBody] JObject sMainSub)
        {
            var _value = sMainSub["sMainSub"].ToString();
            string msg1 = _value.ToString();
            try
            {
                List<Model.ClsXs_OutDoorCheckBillMain> lsmain = new List<Model.ClsXs_OutDoorCheckBillMain>();
                ListModels oListModels = new ListModels();
                lsmain = oListModels.getOutDoorCheckBillMainByJson(msg1);
                ClsXs_OutDoorCheckBillMain oMain = new ClsXs_OutDoorCheckBillMain();
                string sSourceType = lsmain[0].HMainSourceBillType;
                oMain.HInterID = lsmain[0].HInterID;
                oMain.HBillNo = lsmain[0].HBillNo;
                oMain.HBillType = lsmain[0].HBillType;
                oMain.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString());
                oMain.HMainSourceBillType = lsmain[0].HMainSourceBillType;
                oMain.HMainSourceInterID = lsmain[0].HMainSourceInterID;
                oMain.HMainSourceEntryID = lsmain[0].HMainSourceEntryID;
                oMain.HMainSourceBillNo = lsmain[0].HMainSourceBillNo;
                oMain.HExplanation = lsmain[0].HExplanation;
                oMain.HRemark = lsmain[0].HRemark;
                oMain.HMaker = lsmain[0].HMaker;
                oMain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
                //判断会计期是否合理
                string s = "";
                int sYear = 0;
                int sPeriod = 0;
                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(oMain.HDate, ref sYear, ref sPeriod, ref s) == false)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = s;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    oMain.HYear = sYear;
                    oMain.HPeriod = sPeriod;
                }
                oCn.BeginTran();
                //生成出门确认单(只需生成主表数据)
                //插入主表
                oCn.RunProc("Insert Into Xs_OutDoorCheckBillMain " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HBillStatus,HRemark,HMaker,HMakeDate" +
                ",HMainSourceBillType,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo" +
                ",HExplanation,HSTOCKORGID" +
                ") " +
                " values('" + oMain.HBillType + "','" + oMain.HBillType + "'," + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HDate.ToShortDateString() + "'" +
                ", " + oMain.HYear.ToString() + "," + oMain.HPeriod.ToString() + ",1,'" + oMain.HRemark + "','" + oMain.HMaker + "',getdate()" +
                ",'" + oMain.HMainSourceBillType + "'," + oMain.HMainSourceInterID.ToString() + "," + oMain.HMainSourceEntryID.ToString() + ",'" + oMain.HMainSourceBillNo + "'" +
                ",'" + oMain.HExplanation + "'," + oMain.HSTOCKORGID.ToString() +
                ") ");
                //审核单据
                oCn.RunProc("Update Xs_OutDoorCheckBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=getdate(),HBillStatus=2 where HInterID= " + oMain.HInterID.ToString());
                oCn.Commit();
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "生成并审核出门确认单成功!单据号为:" + oMain.HBillNo;
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "出门确认单上传失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
        #region ä¸Šæ–™é˜²é”™å•模块调用方法     20240528
        #region ä¸Šæ–™é˜²é”™å•扫码模块  æ‰«ææºå•条码调用方法
        /// <summary>
        /// æ‰«ææºå•条码
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/get_SourceBarCode_MaterToSource_Json")]
        [HttpGet]
        public object get_SourceBarCode_MaterToSource_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_AddSourceBarCode_MaterToSource " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "','" + HMaker + "'", "h_p_WMS_AddSourceBarCode_MaterToSource");
                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 ä¸Šæ–™é˜²é”™å•扫码模块  æµæ°´å·å›žè½¦è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// æµæ°´å·å›žè½¦è¿”回信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/get_ProcNo_MaterToSource_Json")]
        [HttpGet]
        public object get_ProcNo_MaterToSource_Json(Int64 HInterID, string HBillNo, string HBillType, string HProcExchBillNo, Int64 HProcNo, string HMaker)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_AddProcNo_MaterToSource " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HProcExchBillNo + "'," + HProcNo.ToString() + ",'" + HMaker + "'", "h_p_WMS_AddProcNo_MaterToSource");
                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 ä¸Šæ–™é˜²é”™å•扫码模块  æ‰«æç‰©æ–™æ¡ç è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// æ‰«æç‰©æ–™æ¡ç 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/get_BarCode_MaterToSource_Json")]
        [HttpGet]
        public object get_BarCode_MaterToSource_Json(Int64 HInterID, string HBillNo, string HBillType, string HBarCode, string HMaker)
        {
            try
            {
                ds = oCn.RunProcReturn("select * from Gy_BarCodeBill where HBarcode='" + HBarCode + "'", "Gy_BarCodeBill");
                if (ds.Tables[0].Rows.Count == 0) {
                    DAL.ClsGy_BarCodeBill_View dal = new DAL.ClsGy_BarCodeBill_View();
                    string sErrMsg = "";
                    oSystemParameter.ShowBill(ref sErrMsg);
                    if (oSystemParameter.omodel.WMS_CampanyName == "杭州斯莫尔")
                    {
                        if (!dal.GetInfoByNumber(HBarCode))
                        {
                            //条码解析
                            string[] str = HBarCode.Split('@');
                            if (str[0] != "CMR" && str[0] != "SRM")
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "条码解析失败,请确认条码是否正确!";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            int HOrgIDs = 0;
                            //查询组织
                            DataSet ds = oCn.RunProcReturn("select * from Xt_ORGANIZATIONS where HNumber='" + str[1] + "' ", "Xt_ORGANIZATIONS");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "条码解析失败,请确认条码组织是否正确!";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            else
                            {
                                HOrgIDs = int.Parse(ds.Tables[0].Rows[0]["HItemID"].ToString());
                            }
                            string HMaterNames = "";
                            string HMaterModels = "";
                            string HMaterIDs = "0";
                            //查询物料
                            ds = oCn.RunProcReturn("select  * from Gy_Material where HNumber='" + str[4] + "' and HUSEORGID=" + HOrgIDs, "Gy_Material");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "条码解析失败,请确认条码物料是否正确!";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            else
                            {
                                HMaterIDs = ds.Tables[0].Rows[0]["HItemID"].ToString();
                                HMaterNames = ds.Tables[0].Rows[0]["HName"].ToString();
                                HMaterModels = ds.Tables[0].Rows[0]["HModel"].ToString();
                            }
                            string HSupIDs = "0";
                            //查询供应商
                            ds = oCn.RunProcReturn("select * from Gy_Supplier where HNumber='" + str[2] + "' and HUSEORGID=" + HOrgIDs, "Gy_Supplier");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码供应商是否正确!";
                                //return null;
                            }
                            else
                            {
                                HSupIDs = ds.Tables[0].Rows[0]["HItemID"].ToString();
                            }
                            string HSourceBillNos = "0";
                            string HInnerBillNos = "";
                            //查询内部采购订单号
                            ds = oCn.RunProcReturn(@" select * from h_v_IF_POInStockList where é‡‡è´­è®¢å•号= '" + str[3] + "' ", "h_v_IF_POInStockList");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码内部采购订单号是否正确!";
                                //return null;
                                HInnerBillNos = str[3];
                            }
                            else
                            {
                                HInnerBillNos = ds.Tables[0].Rows[0]["内部采购订单号"].ToString();
                                HSourceBillNos = ds.Tables[0].Rows[0]["采购订单号"].ToString();
                            }
                            string HSourceInterIDs = "0";
                            string HSourceEntryIDs = "0";
                            string HUnitIDs = "0";
                            //查询采购订单
                            ds = oCn.RunProcReturn(@"select  a.HInterID,b.HEntryID,a.HBillNo,b.HUnitID from Cg_POOrderBillMain a
inner join Cg_POOrderBillSub b on a.HInterID = b.HInterID where HBillNo='" + HSourceBillNos + "' and b.HMaterID=" + HMaterIDs, "Cg_POOrderBillMain");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码采购订单是否正确!";
                                //return null;
                            }
                            else
                            {
                                HSourceInterIDs = ds.Tables[0].Rows[0]["HInterID"].ToString();
                                HSourceEntryIDs = ds.Tables[0].Rows[0]["HEntryID"].ToString();
                                HUnitIDs = ds.Tables[0].Rows[0]["HUnitID"].ToString();
                            }
                            double HQty = double.Parse(str[6]);
                            //日期获取方式
                            string sDate = DateTime.Now.ToString();
                            string HWei = "0";      //尾数
                            string HBarCodeType = "批次条码";
                            Int64 HMaterID = int.Parse(HMaterIDs);
                            Int64 HAuxPropID = 0;
                            Int64 HUnitID = int.Parse(HUnitIDs);
                            double HQty2 = HQty;
                            string HBatchNo2 = str[5];
                            Int64 HSupID = int.Parse(HSupIDs);
                            Int64 HGroupID = 0;
                            int HPrintQty = 0;
                            Int64 HSourceInterID = int.Parse(HSourceInterIDs);
                            Int64 HSourceEntryID = int.Parse(HSourceEntryIDs);
                            string HSourceBillNo = HSourceBillNos;
                            //HSourceBillType = "1102";
                            Int64 HBarcodeNo = 0;       //托号
                            Int64 HBarcodeQtys = 0;     //总托数
                            Int64 HDeptID = 0;
                            //Int64 HWhID = 0;
                            //Int64 HSPID = 0;
                            string HRemark = "条码解析";
                            string HMaterName = HMaterNames;
                            string HMaterModel = HMaterModels;
                            string HPinfan = "";
                            string HMTONo = "";
                            Int64 HCusID = 0;
                            string HCusType = "";
                            DateTime HEndDate = DateTime.Now;
                            string HWorkLineName = "";
                            string HSeOrderBillNo = "";
                            string HInnerBillNo = HInnerBillNos;
                            bool HGiveAwayFlag = false;
                            Int64 HEntryID = 1;
                            Int64 HInterIDs = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                            int HOrgID = HOrgIDs;
                            string HSourceBillType = "";
                            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,HEntryID " +
                                               ",HGiveAwayFlag " +
                                               ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo" +
                                               ",HProduceDate,HExpiryDate " +
                                               ") values ("
                                               + "'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HQty2.ToString()
                                               + ",'" + HBatchNo2 + "'," + HSupID.ToString() + "," + HGroupID.ToString() + ",'',getdate()," + HPrintQty.ToString() + "," + HQty2.ToString()
                                               + ", " + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HWei + "'"
                                               + ", " + HBarcodeQtys.ToString() + "," + HBarcodeNo.ToString() + "," + HDeptID.ToString() + ",0,0,'" + HRemark + "'"
                                               + ", " + HCusID.ToString() + ",'" + HCusType + "','" + HEndDate.ToShortDateString() + "','" + HWorkLineName + "','" + sDate + "'"
                                               + ", " + HOrgID.ToString() + "," + HOrgID.ToString() + ",'" + HSeOrderBillNo + "'," + HInterIDs.ToString() + "," + HEntryID.ToString() + ""
                                               + ", " + DBUtility.ClsPub.BoolToString(HGiveAwayFlag)
                                               + ",'" + HMaterName + "','" + HMaterModel + "','" + HPinfan + "'," + HAuxPropID.ToString() + ",'" + HMTONo + "','" + HInnerBillNo + "','','')");
                        }
                    }
                }
                ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_MaterToSource " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "','" + HMaker + "'", "h_p_WMS_AddBarCode_MaterToSource");
                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 ä¸Šæ–™é˜²é”™å•扫码模块  èŽ·å–æ‰«ç æ¨¡å—åˆ—è¡¨ä¿¡æ¯è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// èŽ·å–æ‰«ç æ¨¡å—åˆ—è¡¨ä¿¡æ¯
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetBillEntryTmpList_MaterToSource_Json")]
        [HttpGet]
        public object GetBillEntryTmpList_MaterToSource_Json(Int64 HInterID, string HBillNo, string HBillType)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_BillEntryTmpList_MaterToSource " + HInterID.ToString() + ",'" + HBillType + "'", "h_p_WMS_BillEntryTmpList_MaterToSource");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region ä¸Šæ–™é˜²é”™å•扫码模块    åˆ é™¤åŠŸèƒ½æŒ‰é’®è°ƒç”¨  åˆ é™¤é€‰ä¸­è¡Œç‰©æ–™æ¡ç ä¸´æ—¶è¡¨è®°å½•
        /// <summary>
        /// åˆ é™¤é€‰ä¸­è¡Œç‰©æ–™æ¡ç ä¸´æ—¶è¡¨è®°å½•
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_DelStationInBillSub_BindBarCodeTemp_Json")]
        [HttpGet]
        public object set_DelStationInBillSub_BindBarCodeTemp_Json(Int64 HInterID, string HBillType, string HBarCode)
        {
            try
            {
                oCn.RunProc("Delete from Sc_StationInBillSub_BindBarCodeTemp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + "' and HBarCode='" + HBarCode + "'", ref DBUtility.ClsPub.sExeReturnInfo);
                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
        #region ä¸Šæ–™é˜²é”™å•扫码模块   ä»Žç¼“存列表页面返回信息
        /// <summary>
        /// ä»Žç¼“存列表页面返回信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetSourceBill_Temp_MaterToSource_Json")]
        [HttpGet]
        public object GetSourceBill_Temp_MaterToSource_Json(Int64 HInterID, string HBillType)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_SourceBill_Temp_MaterToSource " + HInterID.ToString() + ",'" + HBillType + "'", "h_p_WMS_SourceBill_Temp_MaterToSource");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region ä¸Šæ–™é˜²é”™å•缓存列表模块调用方法
        #region ä¸Šæ–™é˜²é”™å•缓存列表界面,返回缓存列表信息
        /// <summary>
        /// ä¸Šæ–™é˜²é”™å•缓存列表界面,返回缓存列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetStationInBillSub_BindBarCodeTempList_Json")]
        [HttpGet]
        public object GetStationInBillSub_BindBarCodeTempList_Json(string HBillType, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_Sc_GetStationInBillSub_BindBarCodeTempList '" + HBillType + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_Sc_GetStationInBillSub_BindBarCodeTempList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region ä¸Šæ–™é˜²é”™å•缓存列表模块  åˆ é™¤ç¼“存列表单据
        /// <summary>
        /// åˆ é™¤ç¼“存列表单据
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_DeleteStationInBillSub_BindBarCodeTemp_Json")]
        [HttpGet]
        public object set_DeleteStationInBillSub_BindBarCodeTemp_Json(long HInterID, string HBillType)
        {
            try
            {
                oCn.RunProc("Delete from Sc_StationInBillSub_BindSourceTemp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + "'", ref DBUtility.ClsPub.sExeReturnInfo);
                oCn.RunProc("Delete from Sc_StationInBillSub_BindBarCodeTemp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + "'", ref DBUtility.ClsPub.sExeReturnInfo);
                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
        #endregion
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单模块调用方法     20240723
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块  æ‰«æå®¢æˆ·æ¡ç è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// æ‰«æå®¢æˆ·æ¡ç 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_CusBarCode_CusBarCodeCheck_Json")]
        [HttpGet]
        public object Get_CusBarCode_CusBarCodeCheck_Json(string HCusBarCode_Y, string HCusBarCode_N)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_CheckCusBarCode_CusBarCodeCheck '" + HCusBarCode_Y + "','" + HCusBarCode_N + "'", "h_p_WMS_CheckCusBarCode_CusBarCodeCheck");
                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 ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块  æ‰«æç‰©æ–™æ¡ç è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// æ‰«æç‰©æ–™æ¡ç 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_BarCode_CusBarCodeCheck_Json")]
        [HttpGet]
        public object Get_BarCode_CusBarCodeCheck_Json(string HBarCode, string HCusBarCode_Y, string HCusBarCode_N, Int64 HInterID, string HBillType, string HBillNo, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_CusBarCodeCheck " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "','" + HCusBarCode_Y + "','" + HCusBarCode_N + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_WMS_AddBarCode_CusBarCodeCheck");
                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 ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块  èŽ·å–æ‰«ç æ¨¡å—åˆ—è¡¨ä¿¡æ¯è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// èŽ·å–æ‰«ç æ¨¡å—åˆ—è¡¨ä¿¡æ¯
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetCusBarCodeCheckBillTmpList_Json")]
        [HttpGet]
        public object GetCusBarCodeCheckBillTmpList_Json(Int64 HInterID, string HBillNo, string HBillType)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_CusBarCodeCheckBillTmpList " + HInterID.ToString() + ",'" + HBillType + "'", "h_p_WMS_CusBarCodeCheckBillTmpList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块    åˆ é™¤åŠŸèƒ½æŒ‰é’®è°ƒç”¨  åˆ é™¤é€‰ä¸­è¡Œä¸´æ—¶è¡¨è®°å½•
        /// <summary>
        /// åˆ é™¤é€‰ä¸­è¡Œä¸´æ—¶è¡¨è®°å½•
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_DelCusBarCodeCheckBill_temp_Json")]
        [HttpGet]
        public object set_DelCusBarCodeCheckBill_temp_Json(Int64 HInterID, string HBillType, Int64 HItemID)
        {
            try
            {
                oCn.RunProc("Delete from WMS_CusBarCodeCheckBill_temp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + " and HItemID=" + HItemID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo);
                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
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单     ä¸Šä¼ ç”Ÿå•
        /// <summary>
        /// ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单新增上传
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveCusBarCodeCheckBill_Json")]
        [HttpPost]
        public object set_SaveCusBarCodeCheckBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                string sMainStr = "[" + msg1.ToString() + "]";
                List<Model.ClsWMS_CusBarCodeCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsWMS_CusBarCodeCheckBillMain>>(sMainStr);
                Model.ClsWMS_CusBarCodeCheckBillMain omodel = new Model.ClsWMS_CusBarCodeCheckBillMain();
                omodel.HInterID = mainList[0].HInterID;
                omodel.HBillNo = mainList[0].HBillNo;
                omodel.HBillType = mainList[0].HBillType;
                omodel.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString());
                omodel.HRemark = mainList[0].HRemark;
                omodel.HMaker = mainList[0].HMaker;
                omodel.HSTOCKORGID = mainList[0].HSTOCKORGID;
                omodel.HDeptID = mainList[0].HDeptID;
                //判断会计期是否合理
                string s = "";
                int sYear = 0;
                int sPeriod = 0;
                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DateTime.Today, ref sYear, ref sPeriod, ref s) == false)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = s;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    omodel.HYear = sYear;
                    omodel.HPeriod = sPeriod;
                }
                oCn.BeginTran();
                //生成三点照合扫码记录单
                //插入子表
                oCn.RunProc("EXEC h_p_WMS_CusBarCodeCheckBillSub_Insert " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
                //插入主表
                oCn.RunProc("Insert Into WMS_CusBarCodeCheckBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HDeptID,HStockOrgID" +
                ") " +
                " values('" + omodel.HBillType + "','" + omodel.HBillType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate.ToShortDateString() + "'" +
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
                ", " + omodel.HDeptID.ToString() + "," + omodel.HSTOCKORGID.ToString() +
                ") ");
                oCn.Commit();
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "生成三点照合扫码记录单成功!单据号为:" + omodel.HBillNo;
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "三点照合扫码记录单上传失败!" + e.Message;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
@@ -5264,9 +8116,1452 @@
        #endregion
        #region ä»“库收发存报表
        /// <summary>
        /// ä»“库收发存报表
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetKf_StockInOutSumQueryReport_Json")]
        [HttpGet]
        public object GetKf_StockInOutSumQueryReport_Json(string sWhere)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_Kf_StockInOutSumQueryReport " + sWhere, "h_p_Kf_StockInOutSumQueryReport");
                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列对象的列名
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "当前所输入过滤条件,没有返回任何结果!";
                    objJsonResult.data = null;
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
                else
                {
                    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
        #region åŠæ—¶åº“存查询报表
        /// <summary>
        /// åŠæ—¶åº“存查询报表
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetKF_ICinventoryQueryReport_Json")]
        [HttpGet]
        public object GetKF_ICinventoryQueryReport_Json(string sWhere)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_KF_ICinventoryQueryReport " + sWhere, "h_p_KF_ICinventoryQueryReport");
                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列对象的列名
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "当前所输入过滤条件,没有返回任何结果!";
                    objJsonResult.data = null;
                    objJsonResult.list = columnNameList;
                    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
        #region æœŸåˆåº“存报表
        /// <summary>
        /// ä»“库收发存报表
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetKf_ICInvBalList")]
        [HttpGet]
        public object GetKf_ICInvBalList(string sWhere)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCn.RunProcReturn("select * from h_v_Kf_ICInvBalList ", "h_v_Kf_ICInvBalList");
                }
                else
                {
                    string sql1 = "select * from h_v_Kf_ICInvBalList where 1 = 1 ";
                    string sql = sql1 + sWhere;
                    ds = oCn.RunProcReturn(sql, "h_v_Kf_ICInvBalList");
                }
                //添加列名
                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 = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æœŸåˆåº“存报表
        /// <summary>
        /// ä»“库收发存报表
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/UpdateKf_ICInvBal")]
        [HttpGet]
        public object UpdateKf_ICInvBal( )
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_KF_ICinventory ", "h_p_KF_ICinventory");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "校对成功!";
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 åˆ¤æ–­å•据号是否为缓存列表中的单据号,是 åˆ™æˆåŠŸå¹¶è¿”å›žæ•°æ®ï¼Œå¦ åˆ™åˆ¤æ–­å¤±è´¥ã€‚
        [Route("WEBSController/Gy_getCusBarCodeBill_judgeHBillNoIsInTempList")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_judgeHBillNoIsInTempList(Int64 HInterID, string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                //判断修改后的单据号,与原内码,是否存在对应已经上传的单据信息
                string sql = "select * from Gy_getCusBarCodeBillMain " +
                    "where HInterID = " + HInterID + " " +
                    "and HBillNo = '" + HBillNo + "' " +
                    "and HBillType = '" + HBillType + "' " +
                    "and HMaker = '" + HMaker + "' " +
                    "and HOrgID = " + HStockOrgID;
                DataSet ds = oCn.RunProcReturn(sql, "Gy_getCusBarCodeBillMain");
                if(ds!=null && ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "修改失败!原因:修改单据号与内码对应的单据已经提交!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //判断修改后的单据号,与原内码,是否存在对应已经上传的单据信息
                string sql1 = "select top(1)* from Gy_getCusBarCodeBill_Temp " +
                    "where HBillNo = '" + HBillNo + "' " +
                    "and HBillType = '" + HBillType + "' " +
                    "and HMaker = '" + HMaker + "' " +
                    "and HOrgID = " + HStockOrgID;
                DataSet ds1 = oCn.RunProcReturn(sql1, "Gy_getCusBarCodeBill_Temp");
                if (ds1 != null && ds1.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = ds1.Tables[0];
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "修改失败!原因:" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 æ‰«ææ¡ç 
        /// <summary>
        /// ç”Ÿäº§ç»„托单模块 æ‰«ææ‰˜æ¡ç 
        /// </summary>
        /// <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)
        {
            DataSet ds;
            try
            {
                //扫描前控制============================================================================================================================
                string sql_beforeRushBarCode = "exec h_p_Gy_getCusBarCodeBill_beforeRushBarCode " + HInterID + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "'," + HStockOrgID;
                ds = oCn.RunProcReturn(sql_beforeRushBarCode, "h_p_Gy_getCusBarCodeBill_beforeRushBarCode");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描失败!原因:扫描前控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                string HBack = ds.Tables[0].Rows[0]["HBack"].ToString();
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================================================================================================
                //开启事务
                oCn.BeginTran();
                string sql = "insert into Gy_getCusBarCodeBill_Temp" +
                    "(HInterID,HBillNo,HBillType,HDate,HBarCode,HQty,HOrgID,HMaker,HBarCode_Pre) " +
                    "values(" +
                    "" + HInterID + "" +
                    ",'" + HBillNo + "'" +
                    ",'" + HBillType + "'" +
                    "," + "getdate()" + "" +
                    ",'" + HBarCode + "'" +
                    "," + 0 + "" +
                    "," + HStockOrgID + "" +
                    ",'" + HMaker + "'" +
                    ",'" + HBarCode_Pre + "'" +
                    ")";
                oCn.RunProc(sql);
                //扫描后控制============================================================================================================================
                string sql_afterRushBarCode = "exec h_p_Gy_getCusBarCodeBill_afterRushBarCode " + HInterID + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "'," + HStockOrgID;
                ds = oCn.RunProcReturn(sql_afterRushBarCode, "h_p_Gy_getCusBarCodeBill_afterRushBarCode");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描失败!原因:扫描后控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                //=========================================================================================================================================
                oCn.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "成功";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描条码失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 è¿”回扫描条码列表信息
        /// <summary>
        /// è¿”回组托列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_rushedBarCodeList")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_rushedBarCodeList(long HInterID, string HBillNo, string HBillType, long HOrgID)
        {
            try
            {
                string sql = "select * from Gy_getCusBarCodeBill_Temp where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "' and HBillType = '" + HBillType + "' and HOrgID = " + HOrgID + " Order by HDate desc";
                ds = oCn.RunProcReturn(sql, "Gy_getCusBarCodeBill_Temp");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 åˆ é™¤æ‰«ç è®°å½•
        /// <summary>
        /// åˆ é™¤æ˜Žç»†è¡¨ä½“选中行记录
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_DeleteRushedBarCodeList")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_DeleteRushedBarCodeList(Int64 HInterID, string HBillNo, string HBillType, string HBarCode, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                string sql = "delete from Gy_getCusBarCodeBill_Temp " +
                    "where HInterID = " + HInterID + "" +
                    " and HBillNo = '" + HBillNo + "'" +
                    " and HBillType = '" + HBillType + "'" +
                    " and HOrgID = " + HStockOrgID + "" +
                    " and HBarCode = '" + HBarCode + "'";
                oCn.RunProc(sql);
                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 å®¢æˆ·æ¡ç æ‰«æè®°å½•单  ä¸Šä¼ 
        [Route("WEBSController/Gy_getCusBarCodeBill_submitRushedBarCodeList")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_submitRushedBarCodeList(Int64 HInterID, string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID)
        {
            DataSet ds;
            try
            {
                //上传前控制============================================================================================================================
                string sql_beforeSubmitRushedBarCodeList = "exec h_p_Gy_getCusBarCodeBill_beforeSubmitRushedBarCodeList " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID;
                ds = oCn.RunProcReturn(sql_beforeSubmitRushedBarCodeList, "h_p_Gy_getCusBarCodeBill_beforeSubmitRushedBarCodeList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "提交失败!原因:提交前控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "提交失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //======================================================================================================================================
                //开始业务
                oCn.BeginTran();
                string sql = "insert into Gy_getCusBarCodeBillMain" +
                "(HYear,HPeriod,HBillType,HInterID,HDate,HBillNo,HBillStatus,HMaker,HMakeDate,HOrgID) " +
                "values(" +
                "Year(getdate())" +
                ",Month(getdate())" +
                ",'" + HBillType + "'" +
                "," + HInterID + "" +
                "," + "getdate()" + "" +
                ",'" + HBillNo + "'" +
                "," + 1 + "" +
                ",'" + HMaker + "'" +
                "," + "getdate()" + "" +
                "," + HStockOrgID + "" +
                ")";
                oCn.RunProc(sql);
                //上传后控制============================================================================================================================
                string sql_afterSubmitRushedBarCodeList = "exec h_p_Gy_getCusBarCodeBill_afterSubmitRushedBarCodeList " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID;
                ds = oCn.RunProcReturn(sql_afterSubmitRushedBarCodeList, "h_p_Gy_getCusBarCodeBill_afterSubmitRushedBarCodeList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "提交失败!原因:提交后控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                string HBack = ds.Tables[0].Rows[0]["HBack"].ToString();
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "提交失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                //=====================================================================================================================================
                oCn.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "提交成功,已生成单据【HInterID:" + HInterID + ";单据号:" + HBillNo + "】";  //成功!
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "提交失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 è¿”回缓存列表信息
        /// <summary>
        /// è¿”回组托缓存列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_TempList")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_TempList(string HBillType, string HMaker, long HStockOrgID)
        {
            DataSet ds;
            try
            {
                string sql = "exec h_p_Gy_getCusBarCodeBill_TempList '" + HBillType + "','" + HMaker + "'," + HStockOrgID;
                ds = oCn.RunProcReturn(sql, "h_p_Gy_getCusBarCodeBill_TempList");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 åˆ é™¤ç¼“存记录
        /// <summary>
        /// åˆ é™¤æ˜Žç»†è¡¨ä½“选中行记录
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_DeleteTempListNote")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_DeleteTempListNote(Int64 HInterID, string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID)
        {
            DataSet ds;
            try
            {
                //删除前控制============================================================================================================================
                string sql_beforeDeleteTempListNote = "exec h_p_Gy_getCusBarCodeBill_beforeDeleteTempListNote " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID + ",'" + HMaker + "'";
                ds = oCn.RunProcReturn(sql_beforeDeleteTempListNote, "h_p_Gy_getCusBarCodeBill_beforeDeleteTempListNote");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:删除前控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=============================================================================================================================================
                //开启事务
                oCn.BeginTran();
                string sql = "delete from Gy_getCusBarCodeBill_Temp where " +
                    " HInterID = " + HInterID + "" +
                    " and HBillNo = '" + HBillNo + "'" +
                    " and HBillType = '" + HBillType + "'" +
                    " and HOrgID = " + HStockOrgID + "" +
                    " and HRelationInterID = " + 0 + "";
                oCn.RunProc(sql);
                //删除后控制============================================================================================================================
                string sql_afterDeleteTempListNote = "exec h_p_Gy_getCusBarCodeBill_afterDeleteTempListNote " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID + ",'" + HMaker + "'";
                ds = oCn.RunProcReturn(sql_afterDeleteTempListNote, "h_p_Gy_getCusBarCodeBill_afterDeleteTempListNote");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:删除后控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                //=============================================================================================================================================
                oCn.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "删除成功!";  //成功!
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 è¿”回已上传列表信息
        /// <summary>
        /// è¿”回组托缓存列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_List")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_List(string sWhere, string HMaker)
        {
            DataSet ds;
            try
            {
                string sql = "";
                if (sWhere == null || sWhere == "")
                {
                    sql = "select top(1000)* from h_v_Gy_getCusBarCodeBill_List order by åˆ¶å•日期 desc";
                    ds = oCn.RunProcReturn(sql, "h_v_Gy_getCusBarCodeBill_List");
                }
                else
                {
                    sql = "select top(1000)* from h_v_Gy_getCusBarCodeBill_List where 1=1 " + sWhere + " order by åˆ¶å•日期 desc";
                    ds = oCn.RunProcReturn(sql, "h_v_Gy_getCusBarCodeBill_List");
                }
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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 = "1";
                    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
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 æ’¤é”€å·²ä¸Šä¼ è®°å½•
        /// <summary>
        /// åˆ é™¤æ˜Žç»†è¡¨ä½“选中行记录
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_DeleteListNote")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_DeleteListNote(Int64 HInterID, string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID)
        {
            DataSet ds;
            try
            {
                //撤销前控制============================================================================================================================
                string sql_beforeDeleteListNote = "exec h_p_Gy_getCusBarCodeBill_beforeDeleteListNote " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID + ",'" + HMaker + "'";
                ds = oCn.RunProcReturn(sql_beforeDeleteListNote, "h_p_Gy_getCusBarCodeBill_beforeDeleteListNote");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "撤销失败!原因:撤销前控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "撤销失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=============================================================================================================================================
                //开启事务
                oCn.BeginTran();
                string sql = "delete from Gy_getCusBarCodeBillMain where " +
                    " HInterID = " + HInterID + "" +
                    " and HBillNo = '" + HBillNo + "'" +
                    " and HBillType = '" + HBillType + "'" +
                    " and HOrgID = " + HStockOrgID + "";
                oCn.RunProc(sql);
                sql = "update Gy_getCusBarCodeBill_Temp set " +
                    " HRelationInterID = 0 " +
                    " where " +
                    " HInterID = " + HInterID + "" +
                    " and HBillNo = '" + HBillNo + "'" +
                    " and HBillType = '" + HBillType + "'" +
                    " and HOrgID = " + HStockOrgID + "";
                oCn.RunProc(sql);
                //撤销后控制============================================================================================================================
                string sql_afterDeleteListNote = "exec h_p_Gy_getCusBarCodeBill_afterDeleteListNote " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID + ",'" + HMaker + "'";
                ds = oCn.RunProcReturn(sql_afterDeleteListNote, "h_p_Gy_getCusBarCodeBill_afterDeleteListNote");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "撤销失败!原因:撤销后控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "撤销失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                //=============================================================================================================================================
                oCn.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "撤销成功!";  //成功!
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "撤销失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 ç»´æŠ¤åˆ—表
        /// <summary>
        /// è¿”回组托缓存列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBillList")]
        [HttpGet]
        public object Gy_getCusBarCodeBillList(string sWhere, string user)
        {
            DataSet ds;
            try
            {
                string sql = "";
                if (sWhere == null || sWhere == "")
                {
                    sql = "select * from h_v_Gy_getCusBarCodeBillList_Query order by åˆ¶å•日期 desc";
                    ds = oCn.RunProcReturn(sql, "h_v_Gy_getCusBarCodeBillList_Query");
                }
                else
                {
                    sql = "select * from h_v_Gy_getCusBarCodeBillList_Query where 1=1 " + sWhere + " order by åˆ¶å•日期 desc";
                    ds = oCn.RunProcReturn(sql, "h_v_Gy_getCusBarCodeBillList_Query");
                }
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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 = "1";
                    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
        #region å®¢æˆ·æ¡ç æ‰«æè®°å½•单 ç»´æŠ¤åˆ—表-条码列表
        /// <summary>
        /// è¿”回组托列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_getCusBarCodeBill_rushedBarCodeList_CodeList")]
        [HttpGet]
        public object Gy_getCusBarCodeBill_rushedBarCodeList_CodeList(long HInterID, string HBillNo, string HBillType, long HOrgID)
        {
            try
            {
                string sql = "select * from Gy_getCusBarCodeBill_Temp where HBillNo = '" + HBillNo + "' and HBillType = '" + HBillType + "' and HOrgID = " + HOrgID + " Order by HDate desc";
                ds = oCn.RunProcReturn(sql, "Gy_getCusBarCodeBill_Temp");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region æ‰«ç éªŒè¯å•
        #region æ‰«ç éªŒè¯å• æ‰«ç ç‰©æ–™æ¡ç 
        [Route("WEBSController/Gy_BarCodeConfirmBill_rushBarCode")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_rushBarCode(Int64 HInterID, string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID, string HBarCode)
        {
            DataSet ds;
            try
            {
                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)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描条码失败!原因:扫码条码错误,请寻找IT人员!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描条码失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    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 æ‰«ç éªŒè¯å• è¿”回扫描条码列表信息
        [Route("WEBSController/Gy_BarCodeConfirmBill_rushedBarCodeList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_rushedBarCodeList(long HInterID, string HBillNo, string HBillType, long HOrgID)
        {
            try
            {
                string sql = "select * from h_v_Gy_BarCodeConfirmBillTempList_singleBill " +
                    "where HInterID = " + HInterID + " and å•据号 = '" + HBillNo + "' and HBillType = '" + HBillType + "' and HOrgID = " + HOrgID + " Order by æ‰«ç æ—¶é—´ desc";
                ds = oCn.RunProcReturn(sql, "h_v_Gy_BarCodeConfirmBillTempList_singleBill");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region æ‰«ç éªŒè¯å• è¿”回补扫清单列表
        [Route("WEBSController/Gy_BarCodeConfirmBill_getSuppRushList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_getSuppRushList(long HInterID, string HBillNo, string HBillType, long HOrgID)
        {
            try
            {
                string sql = "exec h_p_Gy_BarCodeConfirmBill_getSuppRushList " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HOrgID;
                ds = oCn.RunProcReturn(sql, "h_p_Gy_BarCodeConfirmBill_getSuppRushList");
                if (ds == null || ds.Tables.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region æ‰«ç éªŒè¯å• åˆ é™¤æ‰«ç è®°å½•
        /// <summary>
        /// åˆ é™¤æ˜Žç»†è¡¨ä½“选中行记录
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_BarCodeConfirmBill_DeleteRushedBarCodeList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_DeleteRushedBarCodeList(Int64 HInterID, string HBillNo, string HBillType, string HBarCode, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                string sql = "delete from Gy_BarCodeConfirmBillTempList " +
                    "where HInterID = " + HInterID + "" +
                    " and HBillNo = '" + HBillNo + "'" +
                    " and HBillType = '" + HBillType + "'" +
                    " and HStockOrgID = " + HStockOrgID + "" +
                    " and HBarCode = '" + HBarCode + "'";
                oCn.RunProc(sql);
                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 æ‰«ç éªŒè¯å• è¿”回缓存列表信息
        [Route("WEBSController/Gy_BarCodeConfirmBill_TempList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_TempList(string HBillType, string HMaker, long HStockOrgID)
        {
            DataSet ds;
            try
            {
                string sql = "exec h_p_Gy_BarCodeConfirmBill_TempList '" + HBillType + "','" + HMaker + "'," + HStockOrgID;
                ds = oCn.RunProcReturn(sql, "h_p_Gy_BarCodeConfirmBill_TempList");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region æ‰«ç éªŒè¯å• åˆ é™¤ç¼“存记录
        /// <summary>
        /// åˆ é™¤æ˜Žç»†è¡¨ä½“选中行记录
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_BarCodeConfirmBill_DeleteTempListNote")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_DeleteTempListNote(Int64 HInterID, string HBillNo, string HBillType, string HMaker, Int64 HStockOrgID)
        {
            DataSet ds;
            try
            {
                //删除前控制============================================================================================================================
                string sql_beforeDeleteTempListNote = "exec h_p_Gy_BarCodeConfirmBill_beforeDeleteTempListNote " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID + ",'" + HMaker + "'";
                ds = oCn.RunProcReturn(sql_beforeDeleteTempListNote, "h_p_Gy_BarCodeConfirmBill_beforeDeleteTempListNote");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:删除前控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=============================================================================================================================================
                //开启事务
                oCn.BeginTran();
                string sql = "delete from Gy_BarCodeConfirmBillTempList where " +
                    " HInterID = " + HInterID + "" +
                    " and HBillNo = '" + HBillNo + "'" +
                    " and HBillType = '" + HBillType + "'" +
                    " and HStockOrgID = " + HStockOrgID + "";
                oCn.RunProc(sql);
                //删除后控制============================================================================================================================
                string sql_afterDeleteTempListNote = "exec h_p_Gy_BarCodeConfirmBill_afterDeleteTempListNote " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HStockOrgID + ",'" + HMaker + "'";
                ds = oCn.RunProcReturn(sql_afterDeleteTempListNote, "h_p_Gy_BarCodeConfirmBill_afterDeleteTempListNote");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:删除后控制失败,请寻找网络管理人员";
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
                    objJsonResult.data = null;
                    oCn.RollBack();
                    return objJsonResult;
                }
                //=============================================================================================================================================
                oCn.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "删除成功!";  //成功!
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æ‰«ç éªŒè¯å• ç»´æŠ¤åˆ—表
        /// <summary>
        /// è¿”回组托缓存列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_BarCodeConfirmBillList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBillList(string sWhere, string user)
        {
            DataSet ds;
            try
            {
                string sql = "";
                if (sWhere == null || sWhere == "")
                {
                    sql = "select * from h_v_Gy_BarCodeConfirmBillList_Query order by æ—¥æœŸ desc";
                    ds = oCn.RunProcReturn(sql, "h_v_Gy_BarCodeConfirmBillList_Query");
                }
                else
                {
                    sql = "select * from h_v_Gy_BarCodeConfirmBillList_Query where 1=1 " + sWhere + " order by æ—¥æœŸ desc";
                    ds = oCn.RunProcReturn(sql, "h_v_Gy_BarCodeConfirmBillList_Query");
                }
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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 = "1";
                    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
        #region æ‰«ç éªŒè¯å• ç»´æŠ¤åˆ—表-条码列表-扫码列表
        /// <summary>
        /// è¿”回组托列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_BarCodeConfirmBill_rushedBarCodeList_CodeList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_rushedBarCodeList_CodeList(long HSourceInterID, string HSourceEntryID, string HSourceBillType, long HOrgID)
        {
            try
            {
                string sql = "select * from Gy_BarCodeConfirmBillTempList where HSourceInterID = " + HSourceInterID + " and HSourceEntryID = " + HSourceEntryID + " and HSourceBillType = '" + HSourceBillType + "' and HStockOrgID = " + HOrgID + " Order by HMakeDate desc";
                ds = oCn.RunProcReturn(sql, "Gy_BarCodeConfirmBillTempList");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
        #region æ‰«ç éªŒè¯å• ç»´æŠ¤åˆ—表-条码列表-未扫码列表
        /// <summary>
        /// è¿”回组托列表信息
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Gy_BarCodeConfirmBill_rushedBarCodeList_waitCodeList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_rushedBarCodeList_waitCodeList(long HSourceInterID, string HSourceEntryID, string HSourceBillType, long HOrgID)
        {
            try
            {
                string sql = "exec h_p_Gy_BarCodeConfirmBill_waitRushBarCodeList " + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillType + "'," + HOrgID;
                ds = oCn.RunProcReturn(sql, "h_p_Gy_BarCodeConfirmBill_waitRushBarCodeList");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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
    }
}