YL
2022-02-15 6660b22e25881f36fa20f27ffd5826f649b1dcb4
WebAPI/Controllers/WebAPIController.cs
@@ -1,6 +1,8 @@
using DAL;
using DBUtility;
using Model;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using SQLHelper;
using System;
@@ -12,6 +14,7 @@
using System.Web.Http;
using WebAPI;
using WebAPI.Models;
using WebAPI.Service;
namespace WebAPI.Controllers
{
@@ -22,7 +25,8 @@
        public DataSet ds = new DataSet();
        private json objjson = new json();
        private json objJsonResult = new json();
      //  private POInStockBillServices oclscg_poinstockbillmain = new POInStockBillServices();
        //public static string sUrl = "http://183.129.128.86:9090/WEBS-WMSTest/WebService1.asmx";
        //  private POInStockBillServices oclscg_poinstockbillmain = new POInStockBillServices();
        /// <summary>
        /// 送货单表头信息
        /// </summary>
@@ -79,10 +83,11 @@
        /// </summary>
        /// <param name="UserName">用户名</param>
        /// <param name="PassWord">密码</param>
        /// <param name="PassWord">组织</param>
        /// <returns></returns>
        [Route("Web/GetUser")]
        [HttpGet]
        public object GetUser(string UserName, string PassWord)
        public object GetUser(string UserName, string PassWord, string HOrgName)
        {
            try
            {
@@ -98,21 +103,31 @@
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "登录成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
                string sql = string.Format(@" select a.* from Gy_UserByOrgRelation a
                                              where a.HUserID = '{0}' and a.HOrgID = '{1}'", UserName, HOrgName);
                DataSet _ds = oCnLoc.RunProcReturn(sql, "h_p_Xt_UserRelationOrg_Check");
                //if (_ds == null || _ds.Tables[0].Rows.Count == 0)
                //{
                //    objjson.code = "0";
                //    objjson.count = 0;
                //    objjson.Message = "用户" + UserName + "没有该组织权限";
                //    objjson.data = null;
                //    return objjson;
                //}
                objjson.code = "0";
                objjson.count = 1;
                objjson.Message = "登录成功!";
                objjson.data = ds.Tables[0];
                return objjson;
            }
            catch (Exception)
            catch (Exception e)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "登录异常!";
                objjson.Message = "登录异常!"+e.Message;
                objjson.data = null;
                return objjson; ;
            }
@@ -169,6 +184,45 @@
                objjson.data = null;
                return objjson; ;
            }
        }
        //撤销缓存列表记录
        [Route("Web/Rescind_Json")]
        [HttpGet]
        public object Rescind_Json(long sHInterID, string sBillNo, string sBillType)
        {
            string sErrMsg = string.Empty;
            try
            {
                if (webserver.RescindBillList(sHInterID, sBillNo, sBillType, ref sErrMsg))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "删除成功!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!";
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
@@ -329,6 +383,33 @@
        }
        //删除表记录
        [Route("Web/Delete_Table")]
        [HttpGet]
        public object Delete_Table(string sqlStr)
        {
            try
            {
                //SQLHelper oCn;
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                oCN.RunProc(sqlStr);
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "删除成功!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!异常";
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #region 基础资料
        /// <summary>
        /// 获取仓库列表
@@ -342,11 +423,58 @@
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (Warehouse != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + Warehouse + "%' or HName like '%" + Warehouse + "%' ) ";
                sWhere = sWhere + " and ( HNumber like '%" + Warehouse + "%' or HName like '%" + Warehouse + "%'  or HUSEORGID like '%" + Warehouse + "%' ) ";
            }
            try
            {
                ds = webserver.GetWarehouseList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取仓库列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetWarehouseList_Json_New")]
        [HttpGet]
        public object GetWarehouseList_Json_New(string Warehouse, Int64 HOrgID)
        {
            sWhere = " Where HStopFlag=0  and HEndFlag=1 and HUSEORGID =" + HOrgID + "";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (Warehouse != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + Warehouse + "%' or HName like '%" + Warehouse + "%'  or HUSEORGID like '%" + Warehouse + "%' ) ";
            }
            try
            {
                WebS.WebService1 oWeb = new WebS.WebService1();
                ds = oWeb.GetWarehouseList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
@@ -412,6 +540,72 @@
            try
            {
                ds = webserver.GetStockPlaceList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取仓位列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetStockPlaceList_Json_NEW")]
        [HttpGet]
        public object GetStockPlaceList_Json_NEW(string StockPlace, Int64 HWhID,Int64 HOrgID)
        {
            WebS.WebService1 oWeb = new WebS.WebService1();
            sWhere = " Where HStopFlag=0  and HEndFlag=1 and HUSEORGID = " + HOrgID + "";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (HWhID == 0)
            {
                if (StockPlace != "")
                {
                    sWhere = " Where HStopFlag=0  and ( HNumber like '%" + StockPlace + "%' or HName like '%" + StockPlace + "%' ) ";
                }
                else
                {
                    sWhere = " Where HStopFlag=0 ";
                }
            }
            else
            {
                if (StockPlace != "")
                {
                    sWhere = " Where HStopFlag=0 and HWHID=" + HWhID.ToString() + " and HWHID=" + HWhID.ToString() + " and ( HNumber like '%" + StockPlace + "%' or HName like '%" + StockPlace + "%' ) ";
                }
                else
                {
                    sWhere = " Where HStopFlag=0 and HWHID=" + HWhID.ToString();
                }
            }
            try
            {
                //ds = webserver.GetStockPlaceList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                ds = oWeb.GetStockPlaceList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
@@ -677,6 +871,152 @@
                return objjson;
            }
        }
        /// <summary>
        /// 获取组织列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetOrganizationList_Json")]
        [HttpGet]
        public object GetOrganizationList_Json()
        {
            WebS.WebService1 oWebs1 = new WebS.WebService1();
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            ////sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            //if (Organization != "")
            //{
            //    sWhere = sWhere + " and ( HNumber like '%" + Organization + "%' or HName like '%" + Organization + "%' ) ";
            //}
            try
            {
                ds = oWebs1.get_ORGANIZATIONSList();
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取物料列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetMaterialList_Json")]
        [HttpGet]
        public object GetMaterialList_Json(string sWhere)
        {
            try
            {
                ds = webserver.GetMaterialList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取单位列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetUnitList_Json")]
        [HttpGet]
        public object GetUnitList_Json(string Unit)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (Unit != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + Unit + "%' or HName like '%" + Unit + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_Unit where HStopflag=0 Order by HItemID ", "Gy_Unit");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_Unit where HStopflag=0 and HEndFlag=1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_Unit");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取客户列表
        /// </summary>
@@ -721,7 +1061,1948 @@
                return objjson;
            }
        }
        /// <summary>
        /// 获取工序列表
        /// <summary>
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("Web/GetProcList_Json")]
        [HttpGet]
        public object GetProcList_Json(string sWhere)
        {
            DataSet ds;
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (sWhere != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + sWhere + "%' or HName like '%" + sWhere + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                ds = oCN.RunProcReturn("Select HItemID,HNumber 工序代码,HName 工序 from Gy_Process where HStopflag=0 " + sWhere + " Order by HItemID ", "Gy_Process");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败";
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception e)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + e.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取当前数据库名
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetDataBases")]
        [HttpGet]
        public object GetDataBases()
        {
            try
            {
                ClsCN oCn = new ClsCN();
                DataSet oDs = new DataSet();
                //==========
                oDs = oCn.RunProcReturn("Select Name From Master..SysDataBases Where DbId=(Select Dbid From Master..SysProcesses Where Spid = @@spid)", "SysDataBases");
                objjson.code = "1";
                objjson.count = 1;
                objjson.Message = "获取成功!";
                objjson.data = oDs.Tables[0];
                return objjson; ;
            }
            catch (Exception e)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败!异常" + e.ToString();
                objjson.data = null;
                return objjson; ;
            }
        }
        #region 产线中心列表查询
        [Route("Web/Gy_LineCenter_Json")]
        [HttpGet]
        public object Gy_LineCenter_Json(string BadReason)
        {
            if (BadReason != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + BadReason + "%' or HName like '%" + BadReason + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_LineCenter where HStopflag=0 Order by HItemID ", "Gy_LineCenter");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_LineCenter where HStopflag=0 and HEndFlag=1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_LineCenter");
                    sWhere = "";
                }
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        #endregion
        #region 不良原因设置列表/保存/编辑/删除方法
        /// <summary>
        /// 获取不良原因列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetBadReasonList_Json")]
        [HttpGet]
        public object GetBadReasonList_Json(string BadReason)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (BadReason != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + BadReason + "%' or HName like '%" + BadReason + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_BadReason where HStopflag=0 Order by HItemID ", "Gy_BadReason");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_BadReason where HStopflag=0 and HEndFlag=1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_BadReason");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 保存不良原因
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        [Route("SaveGy_BadReasonList")]
        [HttpPost]
        public object SaveGy_BadReasonList([FromBody] JObject msg)
        {
            DataSet ds;
            var _value = msg["msg"].ToString();
            string msg1 = _value.ToString();
            //string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            //string msg2 = sArray[0].ToString();
            //string msg3 = sArray[1].ToString();
            Int64 HItemID = 0;
            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
            //获取最大ID值赋值
            DataSet Maxds = oCN.RunProcReturn("select MAX(HItemID) HItemID from Gy_BadReason ", "Gy_BadReason");
            if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
            {
                //HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
                var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
                maxid += 1;
                HItemID = maxid;
            }
            ListModels oListModels = new ListModels();
            try
            {
                WebAPI.DLL.ClsGy_BadReason_Ctl oBill = new WebAPI.DLL.ClsGy_BadReason_Ctl();
                List<Model.ClsGy_BadReason_Model> lsmain = new List<Model.ClsGy_BadReason_Model>();
                msg1 = msg1.Replace("\\", "");
                msg1 = msg1.Replace("\n", "");  //\n
                lsmain = oListModels.getObjectByJson_Gy_BadReason(msg1);
                foreach (Model.ClsGy_BadReason_Model oItem in lsmain)
                {
                    if (oItem.HNumber.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!代码不能为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    if (oItem.HName.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!名称不能为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    if (!DBUtility.ClsPub.AllowNumber(oItem.HNumber.Trim()))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!代码中不能出现连续‘.’并且首位末位不能为‘.’!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    //查询数据中是否存在重复代码
                    ds = oCN.RunProcReturn("select * from  Gy_BadReason where HStopflag=0 and HNumber='" + oItem.HNumber.Trim() + "'", "Gy_BadReason");
                    if (oItem.HNumber.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!代码为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    //新增时判断
                    if (oItem.HItemID == 0)
                    {
                        if (ds == null || ds.Tables[0].Rows.Count == 0)
                        {
                        }
                        else
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "保存失败!代码重复!";
                            objJsonResult.data = 1;
                            return objJsonResult;
                        }
                        //检查父级是否存在
                        string sParent;
                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
                        if (sParent.Trim() == "")
                        {
                            oBill.oModel.HParentID = 0;
                        }
                        else
                        {
                            if (oBill.HavParentCode(sParent.Trim(), HItemID))
                            {
                                oBill.oModel.HParentID = oBill.oModel.HItemID;
                            }
                            else
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
                                objJsonResult.data = 1;
                                return objJsonResult;
                            }
                        }
                    }
                    else//编辑时判断
                    {
                        //检查父级是否存在
                        string sParent;
                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
                        if (sParent.Trim() == "")
                        {
                            oBill.oModel.HParentID = 0;
                        }
                        else
                        {
                            if (oBill.HavParentCode(sParent.Trim(), oItem.HItemID))
                            {
                                oBill.oModel.HParentID = oBill.oModel.HItemID;
                            }
                            else
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
                                objJsonResult.data = 1;
                                return objJsonResult;
                            }
                        }
                    }
                    //得到短代码
                    string sShortNumber;
                    sShortNumber = DBUtility.ClsPub.GetShortNumber(oItem.HNumber.Trim());
                    if (sShortNumber.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!短代码为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    oItem.HShortNumber = sShortNumber;//短代码
                    oItem.HEndFlag = true;//末级标志
                    oItem.HLevel = DBUtility.ClsPub.GetLevel(oItem.HNumber.Trim()); //等级
                    oBill.oModel = oItem;
                }
                //保存
                //保存完毕后处理
                bool bResult;
                if (oBill.oModel.HItemID == 0)
                {
                    // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                    bResult = oBill.AddNew();
                }
                else
                {
                    bResult = oBill.ModifyByID(oBill.oModel.HItemID);
                }
                if (bResult)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存成功!";
                    //WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "保存失败!" + e.ToString();
                objJsonResult.data = 1;
                return objJsonResult;
            }
        }
        /// <summary>
        /// 不良原因获取信息
        /// </summary>
        /// <returns></returns>
        [Route("GetGy_BadReasonDetail")]
        [HttpGet]
        public ApiResult<DataSet> GetGy_BadReasonDetail(string HID)
        {
            var model = LuBaoSevice.GetGy_BadReasonBillDetail(HID);
            return model;
        }
        /// <summary>
        /// 不良原因删除功能
        /// </summary>
        /// <returns></returns>
        [Route("DeltetGy_BadReason")]
        [HttpGet]
        public object DeltetGy_BadReason(string HItemID)
        {
            DataSet ds;
            //string ModRightNameCheck = "Sc_ProcessReport_check";
            try
            {
                //删除权限
                //if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "审核失败!无权限!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (string.IsNullOrWhiteSpace(HItemID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HItemID为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.BeginTran();//开始事务
                ds = oCN.RunProcReturn("select * from Gy_BadReason where HItemID=" + HItemID, "Gy_BadReason");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有数据,无法删除!";
                    objJsonResult.data = null;
                    return objJsonResult; ;
                }
                //var HStopflag = Convert.ToBoolean(ds.Tables[0].Rows[0]["HStopflag"]);
                //if (HStopflag)
                //{
                //    oCN.RollBack();//回滚事务
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "数据已删除无法再次删除!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                oCN.RunProc("delete Gy_BadReason where HItemID=" + HItemID);
                oCN.Commit();//提交事务
                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
        /// <summary>
        /// 报废原因
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetScrapReasonList_Json")]
        [HttpGet]
        public object GetScrapReasonList_Json(string BadReason)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (BadReason != "" && BadReason != null)
            {
                sWhere = sWhere + " and ( HNumber like '%" + BadReason + "%' or HName like '%" + BadReason + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_ScrapReason where HStopflag=0 Order by HItemID ", "Gy_ScrapReason");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_ScrapReason where HStopflag=0 and HEndFlag=1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_ScrapReason");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取工序计划单列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetPlanList_Json")]
        [HttpGet]
        public object GetPlanList_Json(string Billno)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (Billno != "")
            {
                sWhere = sWhere + " and ( 单据号 like '%" + Billno + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select hmainid,hsubid,单据号,HMaterID,物料代码,物料名称,HCenterID,工作中心,规格型号,计划数量 from h_v_Sc_ProcessPlanList", "h_v_Sc_ProcessPlanList");
                }
                else
                {
                    string sql1 = "select hmainid,hsubid,单据号,HMaterID,物料代码,物料名称,HCenterID,工作中心,规格型号,计划数量 from h_v_Sc_ProcessPlanList where 1=1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessPlanList");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取登录页组织列
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetOrganizations")]
        [HttpGet]
        public object GetOrganizations()
        {
            try
            {
                ClsCN oCn = new ClsCN();
                DataSet oDs = new DataSet();
                //==========
                oDs = oCn.RunProcReturn("select HItemID ID,Hname Name,HStopflag Stopflag from Xt_ORGANIZATIONS", "Xt_ORGANIZATIONS");
                objjson.code = "1";
                objjson.count = 1;
                objjson.Message = "获取成功!";
                objjson.data = oDs.Tables[0];
                return objjson; ;
            }
            catch (Exception e)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败!异常" + e.ToString();
                objjson.data = null;
                return objjson; ;
            }
        }
        #endregion
        /// <summary>
        /// 获取职务列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetDutyList_Json")]
        [HttpGet]
        public object GetDutyList_Json(string Duty)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (Duty != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + Duty + "%' or HName like '%" + Duty + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_Duty where HStopflag=0 Order by HItemID ", "Gy_Duty");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_Duty where HStopflag=0 and HEndFlag=1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_Duty");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取宿舍列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetDormList_Json")]
        [HttpGet]
        public object GetDormList_Json(string Dorm)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (Dorm != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + Dorm + "%' or HName like '%" + Dorm + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_Dorm where HStopflag=0 Order by HItemID ", "Gy_Dorm");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_Dorm where HStopflag=0  ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_Dorm");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取工种列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetWorkTypeList_Json")]
        [HttpGet]
        public object GetWorkTypeList_Json(string WorkType)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (WorkType != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + WorkType + "%' or HName like '%" + WorkType + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_WorkType where HStopflag=0 Order by HItemID ", "Gy_WorkType");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_WorkType where HStopflag=0  ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_WorkType");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取核算方式组列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetClassTimePrjGroupList_Json")]
        [HttpGet]
        public object GetClassTimePrjGroupList_Json(string ClassTimePrjGroup)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (ClassTimePrjGroup != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + ClassTimePrjGroup + "%' or HName like '%" + ClassTimePrjGroup + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_ClassTimePrjGroup where HStopflag=0 Order by HItemID ", "Gy_ClassTimePrjGroup");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_ClassTimePrjGroup where HStopflag=0  ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_ClassTimePrjGroup");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取岗位列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetGy_PostList_Json")]
        [HttpGet]
        public object GetGy_PostList_Json(string ParamPost)
        {
            //sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
            if (ParamPost != "")
            {
                sWhere = sWhere + " and ( HNumber like '%" + ParamPost + "%' or HName like '%" + ParamPost + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_Post where HStopflag=0 Order by HItemID ", "Gy_Post");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_Post where HStopflag=0  ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_Post");
                }
                //ds = webserver.GetUnitList(sWhere, ref DBUtility.ClsPub.sErrInfo);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取点检项目列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetCheckItemList_Json")]
        [HttpGet]
        public object GetCheckItemList_Json(string CheckItem)
        {
            DataSet ds;
            try
            {
                sWhere = " Where HStopFlag=0  and HEndFlag=1";
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
                if (CheckItem != "" && CheckItem != null)
                {
                    sWhere = sWhere + " and ( HNumber like '%" + CheckItem + "%' or HName like '%" + CheckItem + "%' ) ";
                    ds = oCN.RunProcReturn("Select HItemID,HNumber,HName  from Gy_DotCheck " + sWhere + " Order by HItemID ", "Gy_DotCheck");
                }
                else
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber,HName  from Gy_DotCheck " + sWhere + " Order by HItemID ", "Gy_DotCheck");
                }
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取生产任务单列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetSc_ICMOBillListView")]
        [HttpGet]
        public object GetSc_ICMOBillListView(string ICMOBill, int OrganizationID)
        {
            if (ICMOBill != "")
            {
                sWhere = " where 1=1 and 单据号 like '%" + ICMOBill + "%' ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_IF_ICMOBillList where 1=1 and isnull(审核人,'')<>'' and isnull(关闭人,'')='' and isnull(行关闭人,'')=''  order by 单据号 desc,hsubid ", "h_v_IF_ICMOBillList");
                }
                else
                {
                    string sql = "select * from h_v_IF_ICMOBillList " + sWhere + " and isnull(审核人,'')<>'' and isnull(关闭人,'')='' and isnull(行关闭人,'')=''  order by 单据号 desc,hsubid ";
                    ds = oCN.RunProcReturn(sql, "h_v_IF_ICMOBillList");
                }
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取生产任务单列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetSc_ICMOBillListView2")]
        [HttpGet]
        public object GetSc_ICMOBillListView2(int page, int limit, string ICMOBill, int OrganizationID)
        {
            try
            {
                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                string sWhere = "";
                if (ICMOBill == null || ICMOBill.Equals(""))
                {
                    sWhere = " where 1=1";
                }
                else
                {
                    sWhere = " where 1=1 and 单据号 like '%" + ICMOBill + "%'";
                }
                DataSet ds0 = oCn.RunProcReturn("select count(*) CountNum from h_v_Sc_ICMOBillList " + sWhere + "", "h_v_Sc_ICMOBillList");
                count = int.Parse(ds0.Tables[0].Rows[0]["CountNum"].ToString());
                //string sql = string.Format(@"select top " + pageSize + " hmainid,日期,单据号,箱号条形码,净重,毛重,皮重,生产组织,部门,操作员,客户标签号,物料代码,物料名称,计量单位代码,计量单位名称,数量,制单人,制单日期 from(select row_number() over (order by hmainid desc) as RowNumber,hmainid,日期,单据号,箱号条形码,净重,毛重,皮重,生产组织,部门,操作员,客户标签号,物料代码,物料名称,计量单位代码,计量单位名称,数量,制单人,制单日期 from h_v_PackUnionBillList " + sWhere + ")   as A where RowNumber >" + pageSize + " *(" + pageNum + "-1)");
                string sql = string.Format(@"select * from h_v_Sc_ICMOBillList " + sWhere + " and isnull(审核人,'')<>''  order by hmainid   offset ((" + pageNum + "-1)*" + pageSize + ") rows fetch next " + pageSize + " rows only");
                ds = new SQLHelper.ClsCN().RunProcReturn(sql, "h_v_Sc_ICMOBillList");
                string aa = ds.Tables[0].Columns[0].ToString();
                if (ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = count;
                    objJsonResult.Message = "返回记录成功!";
                    objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[0], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "暂无记录!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception ex)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "没有返回任何记录!" + ex.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
            //if (ICMOBill != "")
            //{
            //    sWhere = " where 1=1 and 单据号 like '%" + ICMOBill + "%' ";
            //}
            //try
            //{
            //    SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
            //    if (sWhere == null || sWhere.Equals(""))
            //    {
            //        ds = oCN.RunProcReturn("select * from h_v_Sc_ICMOBillList where 1=1 and isnull(审核人,'')<>'' order by 单据号 desc,hsubid ", "h_v_Sc_ICMOBillList");
            //    }
            //    else
            //    {
            //        string sql = "select * from h_v_Sc_ICMOBillList " + sWhere + " and isnull(审核人,'')<>'' order by 单据号 desc,hsubid ";
            //        ds = oCN.RunProcReturn(sql, "h_v_Sc_ICMOBillList");
            //    }
            //    if (ds == null || ds.Tables[0].Rows.Count <= 0)
            //    {
            //        objjson.code = "0";
            //        objjson.count = 0;
            //        objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
            //        objjson.data = null;
            //        return objjson;
            //    }
            //    else
            //    {
            //        objjson.code = "0";
            //        objjson.count = 1;
            //        objjson.Message = "获取成功!";
            //        objjson.data = ds.Tables[0];
            //        return objjson;
            //    }
            //}
            //catch (Exception ex)
            //{
            //    objjson.code = "0";
            //    objjson.count = 0;
            //    objjson.Message = "获取失败" + ex.ToString();
            //    objjson.data = null;
            //    return objjson;
            //}
        }
        /// <summary>
        /// 获取工序流转卡列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetSc_ProcessExchangeBillListView")]
        [HttpGet]
        public object GetSc_ProcessExchangeBillListView(string ICMOBill, int OrganizationID)
        {
            if (ICMOBill != "")
            {
                sWhere = " where 1=1 and 单据号 like '%" + ICMOBill + "%' ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillList where 1=1 order by 单据号 desc,hsubid ", "h_v_Sc_ProcessExchangeBillList");
                }
                else
                {
                    string sql = "select * from h_v_Sc_ProcessExchangeBillList " + sWhere + " order by 单据号 desc,hsubid ";
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessExchangeBillList");
                }
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取检验项目列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetGy_QCCheckItem")]
        [HttpGet]
        public object GetGy_QCCheckItem(string CheckItem, int OrganizationID)
        {
            if (CheckItem != "")
            {
                sWhere = " and ( HNumber like '%" + CheckItem + "%' or HName like '%" + CheckItem + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber 代码,HName 名称 ,HQCCheckClassID 检验项目类别 from Gy_QCCheckItem where HStopflag=0 Order by HItemID  ", "Gy_QCCheckItem");
                }
                else
                {
                    string sql = "Select HItemID,HNumber 代码,HName 名称 ,HQCCheckClassID 检验项目类别 from Gy_QCCheckItem where HStopflag=0 " + sWhere + "Order by HItemID ";
                    ds = oCN.RunProcReturn(sql, "Gy_QCCheckItem");
                }
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取检验方案列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetGy_QCCheckProject")]
        [HttpGet]
        public object GetGy_QCCheckProject(string CheckProject, int OrganizationID)
        {
            if (CheckProject != "")
            {
                sWhere = " and ( HBillNo like '%" + CheckProject + "%' or HName like '%" + CheckProject + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = "Select HinterID HItemID,HBillNo 检验方案代码,HName 方案名称 from Gy_QCCheckProjectMain where 1 = 1 " + sWhere + "Order by HinterID ";
                ds = oCN.RunProcReturn(sql, "Gy_QCCheckProjectMain");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "1";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 根据检验方案主内码获取检验项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetCheckItemByCheckProjectID")]
        [HttpGet]
        public object GetCheckItemByCheckProjectID(int CheckProjectID)
        {
            if (CheckProjectID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "检验方案未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = "select c.HItemID HQCCheckItemID,c.HName 检验项目,b.HQCStd,b.HQCUnit HUnit from Gy_QCCheckProjectMain a left join Gy_QCCheckProjectSub b on a.HInterID = b.HInterID left join Gy_QCCheckItem c on b.HQCCheckItemID = c.HItemID where a.HInterID = " + CheckProjectID;
                ds = oCN.RunProcReturn(sql, "Gy_QCCheckProjectMain");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "1";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 根据器具主内码获取器具保养检验项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetMaintainItemtemByMouldProjectID")]
        [HttpGet]
        public object GetMaintainItemtemByMouldProjectID(int MouldProjectID)
        {
            if (MouldProjectID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "产品器具未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                List<object> list = new List<object>();
                DataSet ds2;
                DataSet ds1;
                string sql1 = string.Format(@"select t.HMaintainItemID ,m.HNumber HMaintainItemNumber,t.HMaintainItem,t.HMaintainPart,t.HClaim,t.HManagerID,e.HNumber HManagerNumber,e.HName HManagerName,a.HRemark
                                                from Sc_MouldMaintainRuleBillMain a left join Sc_MouldMaintainRuleBillSub_Item t on a.HInterID=t.HInterID
                                                left join Gy_Maintain m on m.HItemID=t.HMaintainItemID
                                                left join Gy_Employee e on e.HItemID=t.HManagerID
                                                where a.HInterID=(select HMouldMaintainRuleInterID from Gy_MouldFileMain where HInterID=" + MouldProjectID + ") ");
                string sql2 = string.Format(@"select b.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, m.HModel HMaterSpec,b.HUnitID,u.HNumber HUnitNumber,u.HName HUnitName,b.HQty,b.HQtyMust,b.HRemark from Sc_MouldMaintainRuleBillMain a
                                    left join Sc_MouldMaintainRuleBillSub b on a.HInterID=b.HInterID
                                                left join h_v_IF_Material m on b.HMaterID=m.HItemID
                                    left join h_v_IF_Unit u on b.HUnitID=u.HItemID
                                                where a.HInterID=(select HMouldMaintainRuleInterID from Gy_MouldFileMain  where HInterID=" + MouldProjectID + ") ");
                ds1 = oCN.RunProcReturn(sql1, "Sc_MouldMaintainRuleBillMain");//保养
                ds2 = oCN.RunProcReturn(sql2, "Sc_MouldMaintainRuleBillMain");//配件
                list.Add(ds1.Tables[0]);
                list.Add(ds2.Tables[0]);
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "获取信息成功!";
                objJsonResult.list = list;
                return objJsonResult;
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 根据器具主内码获取器具保养检验项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetMouldMaintainItemtemByMaintainRuleID")]
        [HttpGet]
        public object GetMouldMaintainItemtemByMaintainRuleID(int MouldMaintainRuleID)
        {
            if (MouldMaintainRuleID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "器具保养规程未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                List<object> list = new List<object>();
                DataSet ds2;
                DataSet ds1;
                string sql1 = string.Format(@"select t.HMaintainItemID ,m.HNumber HMaintainItemNumber,t.HMaintainItem,t.HMaintainPart,t.HClaim,t.HManagerID,e.HNumber HManagerNumber,e.HName HManagerName,a.HRemark
                                                from Sc_MouldMaintainRuleBillMain a left join Sc_MouldMaintainRuleBillSub_Item t on a.HInterID=t.HInterID
                                                left join Gy_Maintain m on m.HItemID=t.HMaintainItemID
                                                left join Gy_Employee e on e.HItemID=t.HManagerID
                                                where a.HInterID=" + MouldMaintainRuleID);
                string sql2 = string.Format(@"select b.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName, m.HModel HMaterSpec,b.HUnitID,u.HNumber HUnitNumber,u.HName HUnitName,b.HQty,b.HQtyMust,b.HRemark from Sc_MouldMaintainRuleBillMain a
                                    left join Sc_MouldMaintainRuleBillSub b on a.HInterID=b.HInterID
                                                left join h_v_IF_Material m on b.HMaterID=m.HItemID
                                    left join h_v_IF_Unit u on b.HUnitID=u.HItemID
                                                where a.HInterID=" + MouldMaintainRuleID);
                ds1 = oCN.RunProcReturn(sql1, "Sc_MouldMaintainRuleBillMain");//保养
                ds2 = oCN.RunProcReturn(sql2, "Sc_MouldMaintainRuleBillMain");//配件
                list.Add(ds1.Tables[0]);
                list.Add(ds2.Tables[0]);
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "获取信息成功!";
                objJsonResult.list = list;
                return objJsonResult;
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 器具点检规程单列表
        /// </summary>
        /// <returns></returns>
        [Route("Sc_MouldDotCheckRuleInter/GetMouldDotCheckRuleInterList")]
        [HttpGet]
        public object GetMouldDotCheckRuleInterList(string sWhere)
        {
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = string.Format(@"select * from h_v_Sc_MouldDotCheckRuleBillList ");
                ds = oCN.RunProcReturn(sql+sWhere, "h_v_Sc_MouldDotCheckRuleBillList");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "1";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
         /// <summary>
        /// 根据设备显示设备保养规程项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetMaintainItemtemByEquipProjectID")]
        [HttpGet]
        public object GetMaintainItemtemByEquipProjectID(int EquipProjectID)
        {
            if (EquipProjectID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "产品器具未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                List<object> list = new List<object>();
                DataSet ds2;
                DataSet ds1;
                string sql1 = string.Format(@"select t.HMaintainItemID HMaintainItemID,m.HNumber HMaintainItemNumber,t.HMaintainItem HMaintainItem,t.HMaintainPart HMaintainPart,t.HClaim HClaim,t.HManagerID HManagerID,e.HNumber HManagerNumber,e.HName HManagerName,a.HRemark
                                                from Sb_EquipMaintainRuleBillMain a left join Sb_EquipMaintainRuleBillSub_Item t on a.HInterID=t.HInterID
                                                left join Gy_Maintain m on m.HItemID=t.HMaintainItemID
                                                left join Gy_Employee e on e.HItemID=t.HManagerID
                                                where a.HInterID=(select HEquipMaintainRuleInterID from Gy_EquipFileBillMain where HInterID=" + EquipProjectID + ") ");
                string sql2 = string.Format(@"select b.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName,b.HUnitID,u.HNumber HUnitNumber,u.HName HUnitName,b.HQty,b.HRemark from Sb_EquipMaintainRuleBillMain a
                                    left join Sb_EquipMaintainRuleBillSub b on a.HInterID=b.HInterID
                                                left join h_v_IF_Material m on b.HMaterID=m.HItemID
                                    left join h_v_IF_Unit u on b.HUnitID=u.HItemID
                                                where a.HInterID=(select HEquipMaintainRuleInterID from Gy_EquipFileBillMain  where HInterID=" + EquipProjectID + ") ");
                ds1 = oCN.RunProcReturn(sql1, "Sb_EquipMaintainRuleBillMain");//保养
                ds2 = oCN.RunProcReturn(sql2, "Sc_MouldMaintainRuleBillMain");//配件
                list.Add(ds1.Tables[0]);
                list.Add(ds2.Tables[0]);
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "获取信息成功!";
                objJsonResult.list = list;
                return objJsonResult;
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 根据设备保养规程显示设备保养规程项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetMaintainItemtemByMaintainRuleID")]
        [HttpGet]
        public object GetMaintainItemtemByMaintainRuleID(int EquipProjectID)
        {
            if (EquipProjectID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "设备保养规程未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                List<object> list = new List<object>();
                DataSet ds2;
                DataSet ds1;
                string sql1 = string.Format(@"select t.HMaintainItemID HMaintainItemID,m.HNumber HMaintainItemNumber,t.HMaintainItem HMaintainItem,t.HMaintainPart HMaintainPart,t.HClaim HClaim,t.HManagerID HManagerID,e.HNumber HManagerNumber,e.HName HManagerName,a.HRemark
                                                from Sb_EquipMaintainRuleBillMain a left join Sb_EquipMaintainRuleBillSub_Item t on a.HInterID=t.HInterID
                                                left join Gy_Maintain m on m.HItemID=t.HMaintainItemID
                                                left join Gy_Employee e on e.HItemID=t.HManagerID
                                                where a.HInterID=" + EquipProjectID );
                string sql2 = string.Format(@"select b.HMaterID,m.HNumber HMaterNumber,m.HName HMaterName,b.HUnitID,u.HNumber HUnitNumber,u.HName HUnitName,b.HQty,b.HRemark from Sb_EquipMaintainRuleBillMain a
                                    left join Sb_EquipMaintainRuleBillSub b on a.HInterID=b.HInterID
                                                left join h_v_IF_Material m on b.HMaterID=m.HItemID
                                    left join h_v_IF_Unit u on b.HUnitID=u.HItemID
                                                where a.HInterID=" + EquipProjectID);
                ds1 = oCN.RunProcReturn(sql1, "Sb_EquipMaintainRuleBillMain");//保养
                ds2 = oCN.RunProcReturn(sql2, "Sc_MouldMaintainRuleBillMain");//配件
                list.Add(ds1.Tables[0]);
                list.Add(ds2.Tables[0]);
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "获取信息成功!";
                objJsonResult.list = list;
                return objJsonResult;
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 根据设备显示设备点检程项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetDotCheckRuleItemByEquipProjectID")]
        [HttpGet]
        public object GetDotCheckRuleItemByEquipProjectID(int EquipProjectID)
        {
            if (EquipProjectID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "产品器具未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = string.Format(@"select b.HDotCheckItemID HDotCheckItemID,c.HNumber HDotCheckCode,b.HDotCheckItem,b.HDotCheckPart,b.HClaim,
                                    b.HManagerID,e.HNumber HManagerCode,e.HName HManagerName,b.HRemark from Sb_EquipDotCheckRuleBillMain  a
                           left join Sb_EquipDotCheckRuleBillSub b on a.HInterID=b.HInterID
                                    left join Gy_QCCheckItem c on c.HItemID=b.HDotCheckItemID
                                     left join Gy_Employee e on e.HItemID=b.HManagerID
                                    where a.HInterID=(select HEquipDotCheckRuleInterID from Gy_EquipFileBillMain where HInterID=" + EquipProjectID + ") ");
                ds = oCN.RunProcReturn(sql, "Sb_EquipDotCheckRuleBillMain");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "1";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 根据设备点检规程显示设备点检程项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetDotCheckRuleItemByDotCheckRuleID")]
        [HttpGet]
        public object GetDotCheckRuleItemByDotCheckRuleID(int HDotCheckRuleInterID)
        {
            if (HDotCheckRuleInterID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "设备点检规程未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = string.Format(@"select b.HDotCheckItemID HDotCheckItemID,c.HNumber HDotCheckCode,b.HDotCheckItem,b.HDotCheckPart,b.HClaim,
                                    b.HManagerID,e.HNumber HManagerCode,e.HName HManagerName,b.HRemark from Sb_EquipDotCheckRuleBillMain  a
                           left join Sb_EquipDotCheckRuleBillSub b on a.HInterID=b.HInterID
                                    left join Gy_QCCheckItem c on c.HItemID=b.HDotCheckItemID
                                     left join Gy_Employee e on e.HItemID=b.HManagerID
                                    where a.HInterID=" + HDotCheckRuleInterID);
                ds = oCN.RunProcReturn(sql, "Sb_EquipDotCheckRuleBillMain");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "1";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取维修项目列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetRepairList_Json")]
        [HttpGet]
        public object GetRepairList_Json(string Repair)
        {
            if (Repair != "")
            {
                sWhere = " and ( HNumber like '%" + Repair + "%' or HName like '%" + Repair + "%' ) ";
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("Select HItemID,HNumber ,HName  from Gy_Repair where HStopflag=0 Order by HItemID ", "Gy_Repair");
                }
                else
                {
                    string sql1 = "Select HItemID,HNumber ,HName  from Gy_Repair where HStopflag=0  ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "Gy_Repair");
                }
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 获取扫码详情列表
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetWMSBarCodeDetailsList")]
        [HttpGet]
        public object GetWMSBarCodeDetailsList(int HInterID, string HBillType)
        {
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                ds = oCN.RunProcReturn("Select * from h_v_KF_PonderationBillMain_Temp_Sum where HInterID=" + HInterID + " and HBillType='" + HBillType + "' Order by HItemID ", "h_v_KF_PonderationBillMain_Temp_Sum");
                //ds = oCN.RunProcReturn("Select top 10 * from h_v_KF_PonderationBillMain_Temp_Sum Order by HInterID ", "h_v_KF_PonderationBillMain_Temp_Sum");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "0";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// 根据ID删除缓存表中扫码记录
        /// </summary>
        /// <param name="sHitemID">缓存表ID</param>
        /// <returns>object</returns>
        [Route("Web/DelCacheList")]
        [HttpGet]
        public object DelCacheList(long sHitemID)
        {
            try
            {
                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
                oCn.RunProc("Delete from KF_PonderationBillMain_Temp where HitemID = " + sHitemID);
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "删除成功!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!";
                objJsonResult.data = e.ToString();
                return objJsonResult;
            }
        }
        #region [查询菜单列表]
        [Route("Web/MenuList")]
        [HttpGet]
        public object MenuList()
        {
            try
            {
                List<Menu> mu = new List<Menu>();
                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
                ds = oCn.RunProcReturn("Select * from Gy_Menu Order by HItemID ", "Gy_Menu");
                //List<Menu> mu1 = ds.Tables[0].AsEnumerable().Select(t => new Menu()).ToList();
                //List<Menu> users = ModelConvertHelper<Menu>.ConvertToModel(ds.Tables[0]);
                //var dd = ToHierarchy.ToHierarchyList(users);
                //string json = JsonConvert.SerializeObject(dd);
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)   //这里是循环所有
                {
                    if (ds.Tables[0].Rows[i]["HPartentID"].ToString() == "0" || ds.Tables[0].Rows[i]["HitemID"].ToString() == ds.Tables[0].Rows[i]["HPartentID"].ToString())  //判断是否最外层根节点
                    {
                        Menu tbj = new Menu();
                        tbj.HitemID = ds.Tables[0].Rows[i]["HitemID"].ToString();
                        tbj.HNumber = ds.Tables[0].Rows[i]["HNumber"].ToString();
                        tbj.HName = ds.Tables[0].Rows[i]["HName"].ToString();
                        tbj.HPartentID = ds.Tables[0].Rows[i]["HPartentID"].ToString();
                        tbj.HLevel = int.Parse(ds.Tables[0].Rows[i]["HLevel"].ToString());
                        tbj.Hurl = ds.Tables[0].Rows[i]["Hurl"].ToString();
                        mu.Add(tbj);
                    }
                }
                ToHierarchy.digui(ds.Tables[0], mu);
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "查询成功!";
                objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(mu);
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "查询失败!";
                objJsonResult.data = e.ToString();
                return objJsonResult;
            }
        }
        #endregion
        ///// <summary>
        ///// 产品入库缓存列表刷新信息
        ///// </summary>
        ///// <returns></returns>
        //[Route("Web/chanpinruk")]
        //[HttpGet]
        //public object chanpinruk(string HBillType, string sHMaker, Int64 HOrgID)
        //{
        //    try
        //    {
        //        ds = webserver.GetKf_PonderationBillMain_TempList_New(HBillType, sHMaker, HOrgID);
        //        if (ds == null || ds.Tables[0].Rows.Count <= 0)
        //        {
        //            objJsonResult.code = "0";
        //            objJsonResult.count = 0;
        //            objJsonResult.Message = "没有返回任何记录!";
        //            objJsonResult.data = null;
        //            return objJsonResult;
        //            //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning);
        //        }
        //        else
        //        {
        //            objJsonResult.code = "0";
        //            objJsonResult.count = 1;
        //            objJsonResult.Message = "获取信息成功!";
        //            objJsonResult.data = ds.Tables[0];
        //            return objJsonResult;
        //        }
        //    }
        //    catch (Exception e)
        //    {
        //        objJsonResult.code = "0";
        //        objJsonResult.count = 0;
        //        objJsonResult.Message = "没有返回任何记录!" + e.ToString();
        //        objJsonResult.data = null;
        //        return objJsonResult;
        //    }
        //}
        /// <summary>
        /// 产品入库缓存列表刷新信息
        /// </summary>
        /// <returns></returns>
        [Route("Web/chanpinruk")]
        [HttpGet]
        public object chanpinruk(string HBillType, string sHMaker, Int64 HOrgID)
        {
            WebS.WebService1 oWebs = new WebS.WebService1();
            try
            {
                ds = oWebs.GetKf_PonderationBillMain_TempList_New (HBillType, sHMaker, HOrgID);
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning);
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取信息成功!";
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "没有返回任何记录!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
    }
}