1
yangle
2023-05-22 680b605296b299a426438579b8a271882521dc8a
WebAPI/Controllers/MateOutController.cs
@@ -49,7 +49,8 @@
        public WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS();
       // private DataBaseServices objDataBaseServices = new DataBaseServices();
        private json objJsonResult = new json();
       // private string msgModel = "{{\"count\":{0},\"code\":{0},\"message\":\"{1}\",\"result\":{2}}}";
        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
        // private string msgModel = "{{\"count\":{0},\"code\":{0},\"message\":\"{1}\",\"result\":{2}}}";
        public static string GetSession(string sMsg)
        {
            try
@@ -652,9 +653,23 @@
        [HttpGet]
        public Object get_CheckTypeByBarCode_Json(string sCode, Int64 sInterID, string HBillType, string sBillNo, string sMaker, Int64 WhID, Int64 SPID, Double sQty, bool sRedBlue, bool SourceFlag, string sSourceBillNo, string sSourceType, Int64 HOWNERID)
        {
            try
            {
                var sJXCode = POStockInBillController.JX_Json(sCode, sInterID, HBillType, HOWNERID, sBillNo,sMaker);
                string sErrMsg = "";
                string sJXCode = "";
                if (oSystemParameter.omodel.WMS_CampanyName == "安瑞") //系统参数  客户定制化名称     空白为通用
                {
                    sJXCode = POStockInBillController.JX_Json(sCode, sInterID, HBillType, HOWNERID, sBillNo, sMaker);
                    SourceFlag = true;
                }
                else
                {
                    sJXCode = sCode;
                }
                //var sJXCode = POStockInBillController.JX_Json(sCode, sInterID, HBillType, HOWNERID, sBillNo,sMaker);
                string sExpressNumber = "";
                WebSoBar = oWebs.get_CheckTypeByBarCode_All(sJXCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, sExpressNumber, ref DBUtility.ClsPub.sErrInfo);
@@ -866,8 +881,8 @@
                    objJsonResult.data = new
                    {
                        list = ds.Tables[0]
                        //,
                        //list2 = ds.Tables[5]
                        ,
                        list2 = ds.Tables[5]
                    };
                    return objJsonResult;
                }
@@ -1048,6 +1063,7 @@
        {
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                List<object> columnNameList = new List<object>();
                DataSet ds = oCN.RunProcReturn("exec h_p_KF_ICInventoryByMaterIDList1 '" + HBarCode + "'," + sHWHID + "," + sHSPID+","+ HOWNERID+",'"+ sWhere+"'", "h_p_KF_ICInventoryByMaterIDList");
@@ -1301,6 +1317,148 @@
                return objJsonResult;
            }
        }
        #region 白坯发布汇总报表
        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
        //private json objJsonResult = new json();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        //DataSet ds;
        public class MaterOutSumReport
        {
            public DateTime HBeginDate;
            public DateTime HEndDate;
            public string HMaterNumber;
            public string HBillNo;
            public string HProductName;
            public string HProductModel;
            public string RandomSearch;
        }
        #region 白坯发布汇总报表
        [Route("MaterOutSumReport/MaterOutSumReport_Cloth")]
        [HttpGet]
        public object MaterOutSumReport_Cloth(string sWhere)
        {
            try
            {
                //反序列化传递的值
                MaterOutSumReport com = JsonConvert.DeserializeObject<MaterOutSumReport>(sWhere.ToString());
                string sql = "" +
                    "( (日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                    "and (产品代码=''" + com.HMaterNumber + "'' or ''" + com.HMaterNumber + "''='''') " +
                    "and (单据号=''" + com.HBillNo + "'' or ''"+ com.HBillNo + "''='''') " +
                    "and (产品名称=''" + com.HProductName + "'' or ''" + com.HBillNo + "''='''') " +
                    "and (规格型号=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch;
                ds = oCN.RunProcReturn($"exec h_p_Kf_MaterOutSumReport_Cloth_New '{sql}'" , "h_p_Kf_MaterOutSumReport_Cloth_New");
                //获取列名
                List<object> columnNameList = new List<object>();
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    int headLen = col.ColumnName.ToString().Length;        //列名的长度
                    int colLen = 0;
                    if (ds.Tables[1].Rows[0][col.ColumnName] != null)
                    {
                        string colLenStr=ds.Tables[1].Rows[0][col.ColumnName].ToString();
                        if(colLenStr != "")
                        {
                            colLen = int.Parse(colLenStr);   //列中最长数据的长度
                        }
                    }
                    colLen = (headLen >= colLen) ? headLen : colLen;
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\",\"width\":\"" + colLen + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.list = columnNameList;
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region  白坯发布明细报表
        [Route("MaterOutEntryReport/MaterOutEntryReport_Cloth")]
        [HttpGet]
        public object MaterOutEntryReport_Cloth(string sWhere)
        {
            try
            {
                //反序列化传递的值
                MaterOutSumReport com = JsonConvert.DeserializeObject<MaterOutSumReport>(sWhere.ToString());
                string sql = "" +
                    "( (日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                    "and (产品代码=''" + com.HMaterNumber + "'' or ''" + com.HMaterNumber + "''='''') " +
                    "and (任务单=''" + com.HBillNo + "'' or ''" + com.HBillNo + "''='''') " +
                    "and (产品名称=''" + com.HProductName + "'' or ''" + com.HBillNo + "''='''') " +
                    "and (规格型号=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch;
                ds = oCN.RunProcReturn($"exec h_p_Kf_MaterOutEntryReport_Cloth_New '{sql}'", "h_p_Kf_MaterOutEntryReport_Cloth_New");
                DataTable dt = ds.Tables[0];
                //获取列名
                List<object> columnNameList = new List<object>();
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    int headLen = col.ColumnName.ToString().Length;        //列名的长度
                    int colLen = 0;
                    if (ds.Tables[1].Rows[0][col.ColumnName] != null)
                    {
                        string colLenStr = ds.Tables[1].Rows[0][col.ColumnName].ToString();
                        if (colLenStr != "")
                        {
                            colLen = int.Parse(colLenStr);   //列中最长数据的长度
                        }
                    }
                    colLen = (headLen >= colLen) ? headLen : colLen;
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name +"\",\"width\":\"" + colLen + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.list = columnNameList;
                objJsonResult.data = dt;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
    }
}