using DBUtility; using Model; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using SQLHelper; using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Net; using System.Net.Http; using System.Text.RegularExpressions; using System.Web; using System.Web.Http; using WebAPI; using WebAPI.Code; using WebAPI.Controllers.SCGL.日计划管理; using WebAPI.Models; using static WebAPI.Controllers.基础资料.基础资料.Gy_DutyBillController; namespace WebAPI.Controllers { public class MateOutController : ApiController { public Int64 HSupID;//供应商ID public Int64 HDeptID;//部门ID public Int64 HWhID;//仓库ID public Int64 HSPID;//仓位ID public string HSupName; public string HDeptName; public string HWhName; public string HSPName; public Int64 HInterID;//本单ID public string HBillNo; public string HSourceBillNo; public string HBillType = "1204";//单据类型 public string HBillType1 = "1244"; public string sBillCode = "ICStockBill"; public string sTranType = "24"; public bool sRedBlueFlag = false; public bool SourceFlag = false; //public string sSourceType = "3720"; public WebServer webserver =new WebServer(); public DataSet ds =new DataSet(); public ClsGy_BarCodeBill_WMS_Model_View oView =new ClsGy_BarCodeBill_WMS_Model_View(); public ClsKF_PonderationBillMain_Temp model =new ClsKF_PonderationBillMain_Temp(); public ClsKf_ICStockBill_WMS oBar = new Model.ClsKf_ICStockBill_WMS(); public double sRelQty = 0; public WebS.WebService1 oWebs = new WebS.WebService1(); public WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS(); // private DataBaseServices objDataBaseServices = new DataBaseServices(); private json objJsonResult = new json(); 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 { string s = Common.GetSession(); return s; } catch (Exception e) { return ""; } } /// /// 写入临时表 扫源单的方法 /// /// /// [Route("MateOut/set_SavePonderationBillMain_Temp_Mate_Source_Fast_Json")] [HttpGet] public object set_SavePonderationBillMain_Temp_Mate_Source_Fast_Json(Int64 sInterID, string sBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string sMaker, Double sPPQty, Int64 sPlanMode,Int64 sFIFOWHID, Int64 HOWNERID) { //try //{ // // DataSet ds = new DataSet(); // // WebServer webserver = new WebServer(); // string sWhere = " Where 单据号 like '%" + HSourceBillNo.Trim() + "%'"; // ds = webserver.GetSc_PPBomBillList(sWhere); // 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 // { // //HSupID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HSupID"]); // //HSupName = Convert.ToString(ds.Tables[0].Rows[0]["HSupName"]); // HDeptID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HDeptID"]); // HDeptName = Convert.ToString(ds.Tables[0].Rows[0]["HDeptName"]); // if (webserver.set_SavePonderationBillMain_Temp_Source_Fast(sInterID, sBillNo, HBillType, HSourceBillNo, HSourceBillType, "蓝字", ref DBUtility.ClsPub.sErrInfo)) // { // objJsonResult.code = "0"; // objJsonResult.count = 1; // objJsonResult.Message = "返回记录成功!"; // objJsonResult.data = null; // return objJsonResult; // } // else // { // objJsonResult.code = "0"; // objJsonResult.count = 0; // objJsonResult.Message = "扫码失败!" + DBUtility.ClsPub.sErrInfo; // objJsonResult.data = null; // return objJsonResult; // } // } //} //catch (Exception ex) //{ // objJsonResult.code = "0"; // objJsonResult.count = 0; // objJsonResult.Message = "没有返回任何记录!"+ex.ToString(); // objJsonResult.data = null; // return objJsonResult; //} try { //WebS.WebService1 oWebs1 = new WebS.WebService1(); //WebSoBar = oWebs1.get_SourceBarCode_MateOut(sInterID, sBillNo, HBillType, HSourceBillNo, HSourceBillType, sMaker, sPPQty, sPlanMode, sFIFOWHID, HOWNERID, ref DBUtility.ClsPub.sErrInfo); //Model.ClsKf_ICStockBill_WMS WebSoBar = new Model.ClsKf_ICStockBill_WMS(); WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS(); WebS.WebService1 oWebs = new WebS.WebService1(); WebSoBar = oWebs.get_SourceBarCode_MateOut(sInterID, sBillNo, HBillType, HSourceBillNo, HSourceBillType, sMaker, sPPQty, sPlanMode, sFIFOWHID, HOWNERID, ref DBUtility.ClsPub.sErrInfo); //oBar = webserver.get_CheckTypeByBarCode_Out(sCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, ref DBUtility.ClsPub.sErrInfo); if (WebSoBar == null) { objJsonResult.code = "400"; objJsonResult.count = 0; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "200"; objJsonResult.count = 1; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = oBar; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "500"; objJsonResult.count = 0; objJsonResult.Message = e.Message.ToString(); objJsonResult.data = DBUtility.ClsPub.sErrInfo; return objJsonResult; } } [Route("MateOut/set_SavePonderationBillMain_Temp_Mate_Source_Fast_Json_Back")] [HttpGet] public object set_SavePonderationBillMain_Temp_Mate_Source_Fast_Json_Back(Int64 sInterID, string sBillNo, string HBillType, string sSourceBillNo, string sSourceType, string sRedBlue) { try { // DataSet ds = new DataSet(); // WebServer webserver = new WebServer(); WebS.WebService1 oWebs = new WebS.WebService1(); string sWhere = " Where 单据号 like '%" + sSourceBillNo.Trim() + "'"; //根据源单类型来调用不同的WEBS方法 new if (sSourceType == "3720" && HBillType =="1204") { ds = oWebs.GetSc_PPBomBillList(sWhere + " "); } if (sSourceType == "3720" && HBillType == "1244") { ds = oWebs.GetSc_PPBomBackBillList(sWhere + " "); } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录,源单类型有错误!"; objJsonResult.data = null; return objJsonResult; ; } // if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + sSourceType; objJsonResult.data = null; return objJsonResult; //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning); } else { if (oWebs.set_SavePonderationBillMain_Temp_Source_Fast(sInterID, sBillNo, HBillType, sSourceBillNo, sSourceType, "红字", ref DBUtility.ClsPub.sErrInfo)) { objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "返回记录成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "写入临时表失败!" + DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } public Model.ClsKf_ICStockBill_WMS get_SourceBarCode_MateOut(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Double HPTQty, Int64 HPlanMode, Int64 HFIFOWhID, Int64 HOWNERID, ref string sErrMsg) { //localhost/WEBS-WMS/get_SourceBarCode_MateOut?HInterID=131793&HBillNo=MATO00001643&HBillType=1204&HSourceBillNo=PPBOM202201164&HSourceBillType=3720&HMaker=Admin&HPTQty=0&HPlanMode=0&HFIFOWhID=0&HOWNERID=100439 SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); Model.ClsKf_ICStockBill_WMS oBar = new Model.ClsKf_ICStockBill_WMS(); Int64 sMulSourceFlag = 0; //多源单标志(0为非多源单模式,1为多源单模式) //获取系统参数 Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); if (oSystemParameter.ShowBill(ref sErrMsg) == false) { sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";扫描源单时获取系统参数失败! " + sErrMsg; return null; } if (oSystemParameter.omodel.Kf_MateOutBill_MulSourceBill.ToUpper() == "Y") //系统参数 生产领料单-多源单模式 { sMulSourceFlag = 1; } //将源单信息存入条码出入库临时表 DataSet ds1 = oCn.RunProcReturn("exec h_p_WMS_AddSourceBarCode_MateOut " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + sMulSourceFlag.ToString() + ",'" + HMaker + "'," + HPTQty.ToString() + "," + HPlanMode.ToString() + "," + HFIFOWhID.ToString() + "," + HOWNERID.ToString(), "h_p_WMS_AddSourceBarCode_MateOut"); if (ds1 == null || ds1.Tables[0].Rows.Count == 0) { sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";将源单信息存入条码出入库临时表失败!"; return null; } else { if (DBUtility.ClsPub.isLong(ds1.Tables[0].Rows[0][0]) == 0) { //先进先出控制 if (oSystemParameter.omodel.Kf_MateOutBill_FIFOCtl == "Y") //系统参数 生产领料单-先进先出控制 { DataSet FIFO = oCn.RunProcReturn("exec h_p_WMS_AddSourceFIFO_MateOut " + HInterID.ToString() + ",'" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + HFIFOWhID.ToString(), "h_p_WMS_AddSourceFIFO_MateOut"); if (FIFO == null || FIFO.Tables[0].Rows.Count == 0) { sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";存入先进先出临时表失败!"; return null; } else { if (DBUtility.ClsPub.isLong(FIFO.Tables[0].Rows[0][0]) == 1) { sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";" + DBUtility.ClsPub.isStrNull(FIFO.Tables[0].Rows[0]["HRemark"]); return null; } } } //oBar.HMulSourceFlag = sMulSourceFlag; oBar.HSourceBillType = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HSourceBillType"]); oBar.HSourceBillNo = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HSourceBillNo"]); oBar.HDeptID = DBUtility.ClsPub.isLong(ds1.Tables[0].Rows[0]["HDeptID"]); oBar.HDeptName = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HDeptName"]); return oBar; } else { sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";" + DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HRemark"]); return null; } } } /// /// 领料出库-扫源单的方法 /// /// /// [Route("MateOut/set_SavePonderationBillMain_Temp_SourceBill_MateOut")] [HttpGet] public object set_SavePonderationBillMain_Temp_SourceBill_MateOut( long sInterID,//单据/表头信息中的单据ID string sBillNo,//单据/表头信息的单据号 string HBillType,//单据类型固定值"1204" string sSourceBillNo,//源单号 string sSourceType,//固定值"3720" bool sRedBlue,//false蓝字,true红字 string sMaker,//制单人 double sPPQty,//配套数量 long sPlanMode,//计划模式固定值0; //14035 MTO 14036 MTS 0 全部 long sWhID,//仓库ID long sHOWNERID//0 //ref long sHDeptID //ref string sHDeptName, //ref string sHSourceBillNo, //ref string sHSourceBillType, //ref string sErrMsg ) { try { long sHDeptID = 0; string sHDeptName = ""; string sHSourceBillNo = ""; string sHSourceBillType = ""; WebS.WebService1 oWebs = new WebS.WebService1(); if (oWebs.set_SavePonderationBillMain_Temp_SourceBill_MateOut( sInterID, sBillNo, HBillType, sSourceBillNo, sSourceType, sRedBlue, sMaker, sPPQty, sPlanMode, sWhID, sHOWNERID, ref sHDeptID, ref sHDeptName, ref sHSourceBillNo, ref sHSourceBillType, ref DBUtility.ClsPub.sErrInfo)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "保存成功!" + HBillNo; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 领料出库-测试方法 /// /// [Route("MateOut/qwe")] [HttpGet] public object qwe(long sInterID) { try { return "调用成功"; } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 返回出入库条码临时表 /// /// [Route("MateOut/DisBillEntryList_Mate_Webs_Json")] [HttpGet] public object DisBillEntryList_Mate_Webs_Json(long HBillID, string HBillType, string sWhere) { try { ds = webserver.GetKf_PonderationBillMain_Temp(HBillID, HBillType, sWhere); 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; } } /// /// 根据条码得到相应信息(条码档案) 扫条码的方法 /// /// /// /// /// /// [Route("MateOut/get_InfoByBarCode_Source_Mate_Json")] [HttpGet] public object get_InfoByBarCode_Source_Mate_Json(string sBarCode, Int64 sInterID, string sBillNo, Double sQty,int sWHID,int sSPID) { try { string sErrMsg = ""; bool sBool = false; oView = webserver.get_InfoByBarCode_Source(sBarCode, sInterID, ref sBool, ref sErrMsg); model.HInterID = DBUtility.ClsPub.isLong(sInterID); model.HBillNo = DBUtility.ClsPub.isStrNull(sBillNo); model.HBillType = this.HBillType; model.HMaker = ""; // model.HMaterID = oView.HMaterID; model.HAuxPropID = oView.HAuxPropID; model.HErpClsID = oView.HErpClsID; model.HQty = oView.HQty; model.HQtyMust = oView.HinitQty; model.HBarCode = oView.HBarCode; model.HBatchNo = oView.HBatchNo; model.HMTONo = oView.HMTONo; model.HWhID = sWHID; model.HStockPlaceID = sSPID; //model.HWhID = oView.HWHID; //model.HStockPlaceID = oView.HSPID; model.HSourceInterID = oView.HSourceInterID; model.HSourceEntryID = oView.HSourceEntryID; model.HSourceBillNo = oView.HSourceBillNo; model.HSourceBillType = oView.HSourceBillType; model.HRedBlueFlag = false; model.HPieceQty = 1; model.HSTOCKORGID = 0; model.HOWNERID = 0; if (webserver.set_SavePonderationBillMain_Temp_Qty(model, sQty, ref DBUtility.ClsPub.sErrInfo)) { objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "扫码成功!"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "扫码失败!" + DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "扫码失败,此条码不存在!"+e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 生成生产领料单 /// /// [Route("MateOut/set_SaveMateOutBill_Json")] [HttpPost] public object set_SaveMateOutBill_Json([FromBody]JObject oMain) { var _value = oMain["oMain"].ToString(); string msg1 = _value.ToString(); //List lsmain = new List(); //ListModels oListModels = new ListModels(); //lsmain = oListModels.getMateOutBillMainByJson(msg1); //lsmain[0].HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); //lsmain[0].HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd")); //string sSourceBillType = lsmain[0].HBillType;//源单类型 //BLL.ClsKf_MateOutBill bll = new BLL.ClsKf_MateOutBill(); //return bll.set_SaveMateOutBill_New(lsmain[0], sSourceBillType, ref DBUtility.ClsPub.sErrInfo); try { List lsmain = new List(); ListModels oListModels = new ListModels(); lsmain = oListModels.getMateOutBillMainByJson(msg1); //lsmain[0].HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); //lsmain[0].HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd")); string sSourceBillType = lsmain[0].HBillType;//源单类型 WebAPI.WebS.ClsKf_MateOutBillMain websLsmain = new WebS.ClsKf_MateOutBillMain(); websLsmain.HInterID = lsmain[0].HInterID; websLsmain.HDate = lsmain[0].HDate; websLsmain.HBillNo = lsmain[0].HBillNo; websLsmain.HDeptID = lsmain[0].HDeptID; websLsmain.HEmpID = lsmain[0].HEmpID; websLsmain.HKeeperID = lsmain[0].HKeeperID; websLsmain.HSecManagerID = lsmain[0].HSecManagerID; websLsmain.HBillerID = lsmain[0].HBillerID; websLsmain.HRemark = lsmain[0].HRemark; websLsmain.HMaker = lsmain[0].HMaker; websLsmain.HBillType = "1204";//固定值 if (webserver.set_SaveMateOutBill_New(websLsmain, sSourceBillType, ref DBUtility.ClsPub.sErrInfo)) { objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //成功! //objJsonResult.Message = "生成领料单成功!单据号为:"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //失败! //objJsonResult.Message = "上传失败!" + DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "上传失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 生成生产退料单 /// /// [Route("MateOut/set_SaveMateOutBackBill_Json")] [HttpPost] public object set_SaveMateOutBackBill_Json([FromBody]JObject oMain) { var _value = oMain["oMain"].ToString(); string msg1 = _value.ToString(); //List lsmain = new List(); //ListModels oListModels = new ListModels(); //lsmain = oListModels.getICStockBillMainByJson(msg1); //lsmain[0].HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); //lsmain[0].HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd")); //string sSourceBillType = lsmain[0].HBillType; //BLL.ClsKf_MateOutBackBill bll = new BLL.ClsKf_MateOutBackBill(); //return bll.set_SaveMateOutBackBill_New(lsmain[0], sSourceBillType, ref DBUtility.ClsPub.sErrInfo); try { List lsmain = new List(); ListModels oListModels = new ListModels(); lsmain = oListModels.getICStockBillMainByJson(msg1); lsmain[0].HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); lsmain[0].HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd")); string sSourceBillType = lsmain[0].HBillType; WebAPI.WebS.ClsKf_ICStockBillMain websLsmain = new WebS.ClsKf_ICStockBillMain(); websLsmain.HInterID = lsmain[0].HInterID; websLsmain.HDate = lsmain[0].HDate; websLsmain.HBillNo = lsmain[0].HBillNo; websLsmain.HDeptID = lsmain[0].HDeptID; websLsmain.HEmpID = lsmain[0].HEmpID; websLsmain.HRemark = lsmain[0].HRemark; websLsmain.HMaker = lsmain[0].HMaker; websLsmain.HBillType = "1244";//固定值 if (webserver.set_SaveMateOutBackBill_New(websLsmain, sSourceBillType, ref DBUtility.ClsPub.sErrInfo)) { objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //成功! //objJsonResult.Message = "生成退料单成功!单据号为:"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //失败! //objJsonResult.Message = "上传失败!" + DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "上传失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 一键扫码 红字 /// /// /// /// 一键扫码 /// /// [Route("MateOutBill/get_CheckTypeByBarCode_Json")] [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 { 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); //oBar = webserver.get_CheckTypeByBarCode_Out(sCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, ref DBUtility.ClsPub.sErrInfo); if (WebSoBar == null) { objJsonResult.code = "400"; objJsonResult.count = 0; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "200"; objJsonResult.count = 1; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = oBar; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "500"; objJsonResult.count = 0; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = e.Message.ToString(); return objJsonResult; } } [Route("MateOutBackBill/get_CheckTypeByBarCode_All_Json")] [HttpGet] public Object get_CheckTypeByBarCode_All_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, string sExpressNumber) { oBar = webserver.get_CheckTypeByBarCode_All(sCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID,sExpressNumber, ref DBUtility.ClsPub.sErrInfo); if (oBar == null) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = DBUtility.ClsPub.sErrInfo; objJsonResult.data = oBar; return objJsonResult; } } //[Route("MateOut/get_CheckTypeByBarCode_All_Json")] //[HttpGet] //public Object get_CheckTypeByBarCode_All_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) //{ // oBar = webserver.get_CheckTypeByBarCode_All(sCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, ref DBUtility.ClsPub.sErrInfo); // if (oBar == null) // { // objJsonResult.code = "0"; // objJsonResult.count = 0; // objJsonResult.Message = DBUtility.ClsPub.sErrInfo; // objJsonResult.data = null; // return objJsonResult; // } // else // { // objJsonResult.code = "0"; // objJsonResult.count = 1; // objJsonResult.Message = DBUtility.ClsPub.sErrInfo; // objJsonResult.data = oBar; // return objJsonResult; // } //} //刷新表体 红字 [Route("MateOutBackBill/DisBillEntryListBack_Webs_Json")] [HttpGet] public object DisBillEntryListBack_Webs_Json(long HBillID, string HBillType, string sWhere) { try { ds = webserver.GetKf_PonderationBillMain_Temp(HBillID, HBillType, sWhere); 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; } } //刷新表体 红字 [Route("MateOutBill/DisBillEntryList_Webs_Json")] [HttpGet] public object DisBillEntryList_Webs_Json(long HBillID, string HBillType, string sWhere) { try { ds = webserver.GetKf_PonderationBillMain_Temp(HBillID, HBillType, sWhere); 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; } } //刷新表体 返回出入库条码临时表(领料出库简洁版) [Route("MateOutBill/DisBillEntryList_Webs_New_Json")] [HttpGet] public object DisBillEntryList_Webs_New_Json(long HBillID, string HBillType, string sWhere) { try { ds = webserver.GetKf_PonderationBillMain_Temp_New(HBillID, HBillType, sWhere); 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; } } //刷新表体 返回出入库条码临时表(领料出库简洁版) [Route("MateOutBill/DisBillEntryList_Webs_New_Json1")] [HttpGet] public object DisBillEntryList_Webs_New_Json1(long HBillID, string HBillNo, string HBillType, string sMouldManagerCtl, string sFIFOCtl) { try { ds = oWebs.GetBillEntry_TmpList(HBillID, HBillNo, HBillType,ref sMouldManagerCtl,ref sFIFOCtl, ref DBUtility.ClsPub.sErrInfo); 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 = new { list = ds.Tables[0] , list2 = ds.Tables[5] }; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } //生产退料扫码刷新表体方法 [Route("MateOutBackBill/DisBillEntryList")] [HttpGet] public object DisBillEntryList(long HBillID, string HBillType, string sWhere) { try { ds = oWebs.GetKf_PonderationBillMain_Temp(HBillID, HBillType, sWhere); 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 = new { list = ds.Tables[0] //, //list2 = ds.Tables[5] }; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } //选中表体 根据单据主ID返回收料通知单一些信息 [Route("QCStockInCheckBill/DisBillEntryList_Webs_New_Json1")] [HttpGet] public object DisBillEntryList_Webs_New_Json1(long HInterID,long HEntryID) { try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); ds = oCN.RunProcReturn("select * from h_v_QCStockInCheckBillList where HInterID = " + HInterID + " and HEntryID = " + HEntryID + "", "h_v_QCStockInCheckBillList"); 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; } } //选中表体 根据单据主ID返回工序汇报单一些信息 [Route("SCStockInCheckBill/DisBillEntryList_Webs_New_Json2")] [HttpGet] public object DisBillEntryList_Webs_New_Json2(long HInterID, long HEntryID) { try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); ds = oCN.RunProcReturn("select * from h_v_SCStockInCheckBillList where HInterID = " + HInterID + " and HEntryID = " + HEntryID + "", "h_v_SCStockInCheckBillList"); 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; } } //刷新表体 返回条码库存信息 [Route("KF_ICInventoryByMaterID/GetBillEntry_TmpList_Pack")] [HttpGet] public object GetBillEntry_TmpList_Pack(string HBarCode, long sHWHID, long sHSPID, long HOWNERID, string sWhere) { try { WebS.WebService1 oWebs = new WebS.WebService1(); ds = oWebs.Get_ICInventoryByMaterIDList(HBarCode, sHWHID, sHSPID, HOWNERID, sWhere); 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; } } //刷新表体 返回条码库存信息网页PDA版 [Route("KF_ICInventoryByMaterID/GetBillEntry_TmpList_Pack1")] [HttpGet] public object GetBillEntry_TmpList_Pack1(string HBarCode, long sHWHID, long sHSPID, long HOWNERID, string sWhere) { try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); List columnNameList = new List(); DataSet ds = oCN.RunProcReturn("exec h_p_KF_ICInventoryByMaterIDList1 '" + HBarCode + "'," + sHWHID + "," + sHSPID+","+ HOWNERID+",'"+ sWhere+"'", "h_p_KF_ICInventoryByMaterIDList"); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!"; objJsonResult.data = null; return objJsonResult; //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning); } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "获取信息成功!"; objJsonResult.data = ds.Tables[0]; objJsonResult.list = columnNameList; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } [Route("MateOutBill/Delete_Json")] [HttpGet] public object Delete_Json(long HInterID, long HMaterID, long HAuxPropID, string HMTONo, long HSourceInterID, long HSourceEntryID, string sHBillType) { string sErrMsg = string.Empty; try { if (webserver.set_DelPonderationBillMain_Temp_InterIDAndSource(HInterID, HMaterID, HAuxPropID, HMTONo, HSourceInterID, HSourceEntryID, sHBillType, 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; } } [Route("MateOutBill/DisBillEntryList_Mate_Webs_Json")] [HttpGet] public object DisBillEntryList_Mate_Webs_Json(string HBillType, string sWhere) { try { ds = webserver.GetKf_PonderationBillMain_TempList(HBillType, sWhere); 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; } } [Route("MateOutBillList/Delete_Json")] [HttpGet] public object Delete_Json(long sHInterID) { string sErrMsg = string.Empty; try { if (webserver.DeleteBillList(sHInterID, 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; } } //扫描源单 红字 [Route("MateOutBackBill/set_SavePonderationBillMain_Temp_Source_Fast_Json")] [HttpGet] public object set_SavePonderationBillMain_Temp_Source_Fast_Json(string HSourceBillType, string HSourceBillNo, Int64 sInterID, string sBillNo) { try { // DataSet ds = new DataSet(); // WebServer webserver = new WebServer(); string sWhere = " Where 单据号 like '%" + HSourceBillNo.Trim() + "%'"; if (HSourceBillType == "3720") { ds = webserver.GetSc_PPBomBillList2(sWhere + " "); } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录,源单类型有错误!"; objJsonResult.data = null; return objJsonResult; ; } 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 { HSupID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HSupID"]); HSupName = Convert.ToString(ds.Tables[0].Rows[0]["HSupName"]); HDeptID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HDeptID"]); HDeptName = Convert.ToString(ds.Tables[0].Rows[0]["HDeptName"]); if (webserver.set_SavePonderationBillMain_Temp_Source_Fast(sInterID, sBillNo,HBillType1, HSourceBillNo, HSourceBillType, "红字", ref DBUtility.ClsPub.sErrInfo)) { objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "返回记录成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "写入临时表失败!" + DBUtility.ClsPub.sErrInfo; objJsonResult.data = null; return objJsonResult; } } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } // [Route("MateOutBillList/DisBillEntryList_Mate_Webs_Json")] [HttpGet] public object DisBillEntryList_Webs_Json(string HBillType, string sWhere) { try { ds = webserver.GetKf_PonderationBillMain_TempList(HBillType, sWhere); 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; } } #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; public string OtherSearch; } #region 白坯发布汇总报表 [Route("MaterOutSumReport/MaterOutSumReport_Cloth")] [HttpGet] public object MaterOutSumReport_Cloth(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_MaterOutSumReport_Cloth", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } //反序列化传递的值 MaterOutSumReport com = JsonConvert.DeserializeObject(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.HProductName + "''='''') " + "and (规格型号=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch + " " + com.OtherSearch; //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.HProductName + "''='''') " + // "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 columnNameList = new List(); //添加列名 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 + "\"}"; 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, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_MaterOutEntryReport_Cloth", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } //反序列化传递的值 MaterOutSumReport com = JsonConvert.DeserializeObject(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.HProductName + "''='''') " + "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 columnNameList = new List(); //添加列名 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 + "\"}"; 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 #region 染厂汇总报表 #region 染厂汇总报表 [Route("ProdProcessSumReport/ProdProcessSumReport_DyeColor")] [HttpGet] public object ProdProcessSumReport_DyeColor(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_ProdProcessSumReport_DyeColor", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } //反序列化传递的值 MaterOutSumReport com = JsonConvert.DeserializeObject(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.HProductName + "''='''') " + "and (规格型号=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch + " " + com.OtherSearch; //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.HProductName + "''='''') " + // "and (规格型号=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch; ds = oCN.RunProcReturn($"exec h_p_Kf_ProdProcessSumReport_DyeColor '{sql}'", "h_p_Kf_ProdProcessSumReport_DyeColor"); //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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("ProdProcessEntryReport/ProdProcessEntryReport_DyeColor")] [HttpGet] public object ProdProcessEntryReport_DyeColor(string sWhere,string sProcessNo,string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_ProdProcessEntryReport_DyeColor", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } //反序列化传递的值 MaterOutSumReport com = JsonConvert.DeserializeObject(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.HProductName + "''='''') " + "and (产品规格=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + "and (流转卡号=''" + sProcessNo + "'' or ''"+ sProcessNo + "''= '''')" + com.RandomSearch; ds = oCN.RunProcReturn($"exec h_p_Kf_ProdProcessEntryReport_DyeColor '{sql}'", "h_p_Kf_ProdProcessEntryReport_DyeColor"); //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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("ProdProcessSumReport/ProdProcessSumReport_DyeColor_third")] [HttpGet] public object ProdProcessSumReport_DyeColor_third(string sWhere,string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_ProdProcessSumReport_DyeColor_third", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } //反序列化传递的值 MaterOutSumReport com = JsonConvert.DeserializeObject(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.HProductName + "''='''') " + "and (产品规格=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch + " " + com.OtherSearch; ; ds = oCN.RunProcReturn($"exec h_p_Kf_ProdProcessSumReport_DyeColor_third '{sql}'", "h_p_Kf_ProdProcessSumReport_DyeColor_third"); //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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("ProdProcessSumReport/Kf_DryFinalizeOutReport")] [HttpGet] public object Kf_DryFinalizeOutReport(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_DryFinalizeOutReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } ds = oCN.RunProcReturn($"select * from h_v_Kf_DryFinalizeOutReport where 1=1 "+sWhere, "h_v_Kf_DryFinalizeOutReport"); //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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("ProdProcessSumReport/Kf_SizingFinalizeOutReport")] [HttpGet] public object Kf_SizingFinalizeOutReport(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_SizingFinalizeOutReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } ds = oCN.RunProcReturn($"select * from h_v_Kf_SizingFinalizeOutReport where 1=1 " + sWhere, "h_v_Kf_SizingFinalizeOutReport"); //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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("ProdProcessSumReport/Kf_BrushingOutReport")] [HttpGet] public object Kf_BrushingOutReport(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_BrushingOutReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } ds = oCN.RunProcReturn($"select * from h_v_Kf_BrushingOutReport where 1=1 " + sWhere, "h_v_Kf_BrushingOutReport"); //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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("ProdProcessSumReport/Kf_ColorBlankLustringOutReport")] [HttpGet] public object Kf_ColorBlankLustringOutReport(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_ColorBlankLustringOutReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } ds = oCN.RunProcReturn($"select * from h_v_Kf_ColorBlankLustringOutReport where 1=1 " + sWhere, "h_v_Kf_ColorBlankLustringOutReport"); //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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("ProdProcessSumReport/Kf_PressurizedWaterOutReport")] [HttpGet] public object Kf_PressurizedWaterOutReport(string sWhere,string HBillType,string user) { try { if (!DBUtility.ClsPub.Security_Log(HBillType, 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } switch (HBillType) { case "Kf_PressurizedWaterOutReport"://毛尖 压水出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_PressurizedWaterOutReport where 1=1 " + sWhere, "h_v_Kf_PressurizedWaterOutReport"); break; case "Kf_HairtipReport"://毛尖 毛尖出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_HairtipReport where 1=1 " + sWhere, "h_v_Kf_HairtipReport"); break; case "Kf_DigitalSprayPaintingReport"://毛尖 数码喷花出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_DigitalSprayPaintingReport where 1=1 " + sWhere, "h_v_Kf_DigitalSprayPaintingReport"); break; case "Kf_ShrinkBrushReport"://后整二号 缩刷出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_ShrinkBrushReport where 1=1 " + sWhere, "h_v_Kf_ShrinkBrushReport"); break; case "Kf_FinalizeTheDesignOutReport"://后整二号 定型出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_FinalizeTheDesignOutReport where 1=1 " + sWhere, "h_v_Kf_FinalizeTheDesignOutReport"); break; case "Kf_LustringOutReport"://后整二号 烫光出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_LustringOutReport where 1=1 " + sWhere, "h_v_Kf_LustringOutReport"); break; case "Kf_ShrinkBrushOutReport"://后整一号 缩刷出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_ShrinkBrushOutReport where 1=1 " + sWhere, "h_v_Kf_ShrinkBrushOutReport"); break; case "Kf_FinalizeOutReport"://后整一号 定型出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_FinalizeOutReport where 1=1 " + sWhere, "h_v_Kf_FinalizeOutReport"); break; case "Kf_LustringReport"://后整一号 烫光出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_LustringReport where 1=1 " + sWhere, "h_v_Kf_LustringReport"); break; case "Kf_ShrinkBrushTeReport"://特整 缩刷出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_ShrinkBrushTeReport where 1=1 " + sWhere, "h_v_Kf_ShrinkBrushTeReport"); break; case "Kf_EmbossingOutReport"://特整 压花出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_EmbossingOutReport where 1=1 " + sWhere, "h_v_Kf_EmbossingOutReport"); break; case "Kf_StereoscopicFlowerOutReport"://特整 立体花型机出站 ds = oCN.RunProcReturn($"select * from h_v_Kf_StereoscopicFlowerOutReport where 1=1 " + sWhere, "h_v_Kf_StereoscopicFlowerOutReport"); break; } //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 压水未出站报表 查询 /// ///参数:string sql。 ///返回值:object。 /// [Route("Kf_PressurizedWaterNoOutReport/list")] [HttpGet] public object GetKf_PressurizedWaterNoOutReport(string sWhere, string user, string userid) { try { List columnNameList = new List(); ////查看权限 if (!DBUtility.ClsPub.Security_Log("Kf_PressurizedWaterNoOutReport_Query", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } //查询 if (sWhere == null || sWhere.Equals("")) { string sql = "exec h_p_Kf_PressurizedWaterNoOutReport '','" + userid + "'"; ds = oCN.RunProcReturn(sql, "h_p_Kf_PressurizedWaterNoOutReport"); } else { string sql = "exec h_p_Kf_PressurizedWaterNoOutReport '" + sWhere + "','" + userid + "'"; ds = oCN.RunProcReturn(sql, "h_p_Kf_PressurizedWaterNoOutReport"); } //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.data = ds.Tables[0]; objJsonResult.list = columnNameList; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 领料统计报表 /// /// 领料统计报表 /// /// [Route("MateOutController/GetKf_MateOutSumReport_QiaoYi_Json")] [HttpGet] public object GetKf_MateOutSumReport_QiaoYi_Json(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Kf_MateOutSumReport_QiaoYi", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } ds = oCN.RunProcReturn("exec h_p_Kf_MateOutSumReport_QiaoYi " + sWhere, "h_p_Kf_MateOutSumReport_QiaoYi"); if (ds == null || ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "当前所输入过滤条件,没有返回任何结果!"; objJsonResult.data = null; return objJsonResult; } else { List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString)); //获取到DataColumn列对象的列名 } objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "成功!"; objJsonResult.data = ds.Tables[0]; objJsonResult.list = columnNameList; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "查询领料统计报表信息失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #endregion #region (生产订单维度)客户订单报表 [Route("MaterOutEntryReport/sc_ICOMReportList")] [HttpGet] public object sc_ICOMReportList(string sWhere,string HBeginDate,string HEndDate, string user) { try { if (!DBUtility.ClsPub.Security_Log("sc_ICOMReportList", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql = "exec h_p_sc_ICOMReport '"+ sWhere + "','"+ HBeginDate + "','"+ HEndDate + "'"; ds = oCN.RunProcReturn(sql, "h_p_sc_ICOMReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 #region 客户订单明细报表 [Route("MaterOutEntryReport/Sc_ICOMProBarCodeReport")] [HttpGet] public object Sc_ICOMProBarCodeReport(string sWhere) { try { string sql = "select * from h_v_sc_ICOMProBarCodeReport where 1=1 " + sWhere; ds = oCN.RunProcReturn(sql, "h_v_sc_ICOMProBarCodeReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 #region 流转卡未入库报表 [Route("MaterOutEntryReport/Sc_ProcExchangeNoInReport")] [HttpGet] public object Sc_ProcExchangeNoInReport(string sWhere, string HBeginDate, string HEndDate, string user) { try { if (!DBUtility.ClsPub.Security_Log("Sc_ProcExchangeNoInReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql = "exec h_p_Sc_ProcExchangeNoInReport '" + sWhere + "','" + HBeginDate + "','" + HEndDate + "'"; ds = oCN.RunProcReturn(sql, "h_p_Sc_ProcExchangeNoInReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 #region 生产入库报表 [Route("MaterOutEntryReport/sc_ICOMRKReport")] [HttpGet] public object sc_ICOMRKReport(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("sc_ICOMRKReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql = "select * from h_v_sc_ICOMRKReport where 1=1 " + sWhere + " order by 日期 "; ds = oCN.RunProcReturn(sql, "h_v_sc_ICOMRKReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 #region 不良原因分析报表 /// /// 返回不良原因分析报表列表 ///参数:string sql。 ///返回值:object。 /// [Route("Sc_BadReasonReport/list")] [HttpGet] public object list(string sWhere, string user,string HGroupID) { try { if (!DBUtility.ClsPub.Security_Log("Sc_BadReasonReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } List columnNameList = new List(); if (sWhere == null || sWhere.Equals("")) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "请选择有效年份"; return objJsonResult; } else { ds = oCN.RunProcReturn("exec h_p_Sc_BadReasonReport '" + sWhere + "','" + HGroupID + "'", "h_p_Sc_BadReasonReport"); } //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.data = ds.Tables[0]; objJsonResult.list = columnNameList; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 生产入库报表 [Route("MaterOutEntryReport/sc_ICOMRKBanReport")] [HttpGet] public object sc_ICOMRKBanReport(string sWhere) { try { string sql = "select * from h_v_sc_ICOMRKBanReport where 1=1 " + sWhere + " order by 日期 "; ds = oCN.RunProcReturn(sql, "h_v_sc_ICOMRKBanReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 #region 生产日记报表 public class DayRkReport { public string HBeginDate { get; set; } public string HEndDate { get; set; } public string HMaterNumber { get; set; } public string HCustomerName { get; set; } public string HProductName { get; set; } public string HOtherSearch { get; set; } public string HEmpName { get; set; } public string sWheres { get; set; } } [Route("MaterOutEntryReport/SC_DayRkReport")] [HttpGet] public object SC_DayRkReport(string sWhere,int num, string user) { try { if (!DBUtility.ClsPub.Security_Log("SC_DayRkReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } DayRkReport DayRkReportList = JsonConvert.DeserializeObject(sWhere); string sql = $"exec h_p_Gy_DayRkReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" + $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}','{DayRkReportList.HOtherSearch}','{DayRkReportList.HEmpName}','{DayRkReportList.sWheres}'"; //string sql = $"exec h_p_Gy_DayRkReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" + // $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}'"; ds = oCN.RunProcReturn(sql, "h_p_Gy_DayRkReport"); DataTable dt = null; if (num == 1) { dt = ds.Tables[0]; } else if (num == 2) { dt = ds.Tables[1]; } //获取列名 List columnNameList = new List(); if (num == 1) { //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } } else if (num == 2) { //添加列名 foreach (DataColumn col in ds.Tables[1].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 #region 半成品报表 public class SemiFinishedProductsReport { public string HBeginDate { get; set; } public string HEndDate { get; set; } public string HMaterNumber { get; set; } public string HCustomerName { get; set; } public string HProductName { get; set; } public string HOtherSearch { get; set; } } [Route("MaterOutEntryReport/SemiFinishedProductsReportList")] [HttpGet] public object SemiFinishedProductsReportList(string sWhere, int num, string user) { try { if (!DBUtility.ClsPub.Security_Log("SemiFinishedProductsReportList", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } SemiFinishedProductsReport DayRkReportList = JsonConvert.DeserializeObject(sWhere); string sql = $"exec h_p_sc_SemiFinishedProductsReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" + $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}','{DayRkReportList.HOtherSearch}'"; //string sql = $"exec h_p_sc_SemiFinishedProductsReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" + // $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}'"; ds = oCN.RunProcReturn(sql, "h_p_Gy_DayRkReport"); DataTable dt = null; if (num == 1) { dt = ds.Tables[0]; } else if (num == 2) { dt = ds.Tables[1]; } //获取列名 List columnNameList = new List(); if (num == 1) { //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } } else if (num == 2) { //添加列名 foreach (DataColumn col in ds.Tables[1].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.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 #region 产线查询 [Route("MaterOutEntryReport/Gy_SourceList")] [HttpGet] public object Gy_SourceList(string HOrgid,string sWhere) { try { string sql1 = string.Format("select hitemid,hnumber,hname from Gy_Source where HUSEORGID="+ HOrgid + " "+ sWhere + " order by hnumber"); ds = oCN.RunProcReturn(sql1, "Gy_Source"); List treeModels = new List(); TreeModel first = new TreeModel(); first.id = "0"; first.title = "产线设置"; treeModels.Add(first); foreach (DataRow row in ds.Tables[0].Rows) { var strLen = row["hitemid"].ToString().Split('.'); if (strLen.Length == 1) { TreeModel tree = new TreeModel(); tree.id = row["hitemid"].ToString(); tree.title = row["hname"].ToString(); treeModels[0].children.Add(tree); } } digui(ds.Tables[0], treeModels[0].children, 2); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(treeModels); return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 递归函数 /// public void digui(DataTable dt, List tree, int num) { for (int m = 0; m < tree.Count; m++) { tree[m].children = new List(); for (int i = 0; i < dt.Rows.Count; i++)//第一次循环,得到所有根节点的子集 { var strLen = dt.Rows[i]["hnumber"].ToString().Split('.'); if (strLen.Length == num && dt.Rows[i]["hnumber"].ToString().Contains(tree[m].id + ".")) { TreeModel tbjson = new TreeModel(); tbjson.id = dt.Rows[i]["hitemid"].ToString(); tbjson.title = dt.Rows[i]["hname"].ToString(); tree[m].children.Add(tbjson); } } var strLens = tree[m].id.Split('.'); for (int i = 0; i < tree[m].children.Count; i++) { digui(dt, tree[m].children, strLens.Length + 2);//再次用子集去循环,拿出子集的子集 } } } #endregion #region 工厂日历查询 [Route("MaterOutEntryReport/Sc_ShopCalendar")] [HttpGet] public object Sc_ShopCalendar(string sWhere,string user) { try { if (!DBUtility.ClsPub.Security_Log("Gy_PlanShifts_Query", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查询权限!"; objJsonResult.data = null; return objJsonResult; } string sql1 = string.Format("select * from h_v_Gy_PlanShiftsList where 1=1 " + sWhere); ds = oCN.RunProcReturn(sql1, "h_v_Gy_PlanShiftsList"); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; 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/Sc_ShopCalendarSave")] [HttpPost] public object Sc_ShopCalendarSave([FromBody] JObject sMainSub) { try { var _value = sMainSub["sMainSub"].ToString(); string msg1 = _value.ToString(); oCN.BeginTran(); //保存主表 objJsonResult = AddBillMain(msg1); if (objJsonResult.code == "0") { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = objJsonResult.Message; objJsonResult.data = null; return objJsonResult; } oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "单据保存成功!"; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } public json AddBillMain(string msg1) { string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string hdate = sArray[0].ToString(); string hvalue = sArray[1].ToString(); string TagId = sArray[2].ToString(); string user = sArray[3].ToString(); try { if (!DBUtility.ClsPub.Security_Log("Gy_PlanShifts_Edit", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无保存权限!"; objJsonResult.data = null; return objJsonResult; } ds = oCN.RunProcReturn("select * from Gy_PlanShifts where HDate='" + hdate + "' and HSourceID="+ TagId, "Gy_PlanShifts"); string sql = ""; if (ds.Tables[0].Rows.Count > 0) { sql = $"update Gy_PlanShifts set HOverTimes='" + hvalue + "' where HDate ='" + hdate + "' and HSourceID=" + TagId; } else { sql = $"insert into Gy_PlanShifts(HDate,HSourceID,HShiftsID,HOverTimes,HClassCount," + "HRemark,HUseFlag)values" + $"('{hdate}','{TagId}',0,'{hvalue}','1'" + $",'','未检测')"; } oCN.RunProc(sql); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = null; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 工厂日历批改上班工时 [Route("Gy_PlanShifts/BulkWorkTime")] [HttpGet] public object BulkWorkTime(string HSourceNumber1, string HSourceNumber2, string HBeginDate, string HEndDate,string HWorkTime) { try { oCN.BeginTran(); string sql = $"update a set HOverTimes = {HWorkTime} from Gy_PlanShifts a left join Gy_Source b on a.HSourceID = b.HItemID where b.HNumber between '{HSourceNumber1}' and '{HSourceNumber2}' and CONVERT(varchar(120),a.HDate,23) between CONVERT(varchar(120),'{HBeginDate}',23) and CONVERT(varchar(120),'{HEndDate}',23)"; //执行更新上班工时语句 oCN.RunProc(sql); oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "批改成功!"; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 工厂日历 文件上传 [Route("Gy_PlanShifts/Gy_PlanShifts_Excel")] [HttpPost] public object Gy_PlanShifts_Excel() { try { //var WorkBookName = HttpContext.Current.Request["WorkBookName"]; //DBUtility.ClsPub.HOrgID = long.Parse(HttpContext.Current.Request["HOrgID"]); //获取文件名称 var file = HttpContext.Current.Request.Files[0]; //获取文件物理路径 string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName); //保存文件 file.SaveAs(ExcelPath); NpoiHelper np = new NpoiHelper(); DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0"); //删除文件 File.Delete(ExcelPath); //创建临时表 DataTable tb2 = new DataTable("dt2"); //添加列名 for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++) { tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString()); } //模板缺少列 但需要从数据库中查询出来显示在页面的字段 tb2.Columns.Add("HOrgID", typeof(Int32));//组织ID tb2.Columns.Add("HSourceID", typeof(Int32));//生产资源ID //添加数据 for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++) { DataRow row = tb2.NewRow(); for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++) { row[j] = ExcelDs.Tables[0].Rows[i][j].ToString(); } //如果表格第i行的第一列为空,则判断为这一行的数据为空,跳出循环并且不把数据写入 tb2 if (ExcelDs.Tables[0].Rows[i][0].ToString() == "") { continue; } else { tb2.Rows.Add(row); } } var error = ""; //查询工艺路线没有的列 if (!tb2.Columns.Contains("组织编码")) error += "没有找到【组织编码】的标题,"; if (!tb2.Columns.Contains("组织")) error += "没有找到【组织】的标题,"; if (!tb2.Columns.Contains("生产资源代码")) error += "没有找到【生产资源代码】的标题,"; if (!tb2.Columns.Contains("生产资源")) error += "没有找到【生产资源】的标题,"; if (!tb2.Columns.Contains("日期")) error += "没有找到【日期】的标题,"; if (!tb2.Columns.Contains("工时")) error += "没有找到【工时】的标题,"; if (error.Length > 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = $"Excel模板存在错误,{error}\r\n"; objJsonResult.data = null; return objJsonResult; } for (int i = 0; i <= tb2.Rows.Count - 1; i++) { string HORGNumber = ""; string HORGName = ""; string HSourceNumer = ""; string HSourceName = ""; string HDate = ""; string HOverTimes = ""; HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["组织编码"].ToString()); HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["组织"].ToString()); HSourceNumer = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["生产资源代码"].ToString()); HSourceName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["生产资源"].ToString()); HDate = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["日期"].ToString()); HOverTimes = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["工时"].ToString()); //检查物料 int index = i + 1; if (HORGNumber != "") { //查询组织 ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS"); if (ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "第" + index + "行,组织不存在!"; objJsonResult.data = null; return objJsonResult; } else { tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString(); } string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString(); //查询生产资源 ds = oCN.RunProcReturn("select * from Gy_Source where HNumber='" + HSourceNumer + "' and HUSEORGID=" + HORGid + "", "Gy_Department"); if (ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "第" + index + "行,该" + HORGName + "组织,生产资源:" + HSourceName + ",不存在!"; objJsonResult.data = null; return objJsonResult; } else { tb2.Rows[i]["HSourceID"] = ds.Tables[0].Rows[0]["HItemID"].ToString(); } //日期 if (HDate == "") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "第" + index + "行,日期为空!"; objJsonResult.data = null; return objJsonResult; }else if(!Regex.IsMatch(HDate, @"^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$")) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "第" + index + "行,日期不为“yyyy-MM-dd”格式!"; objJsonResult.data = null; return objJsonResult; } //工时 if (HOverTimes == "") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "第" + index + "行,工时为空!"; objJsonResult.data = null; return objJsonResult; } //else if (!Regex.IsMatch(HWorkTime, @"/^\d+(\.\d+)?$/")) //{ // objJsonResult.code = "0"; // objJsonResult.count = 0; // objJsonResult.Message = "第" + index + "行,工时不为非负数格式!"; // objJsonResult.data = null; // return objJsonResult; //} } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "第" + index + "行,组织代码为空"; objJsonResult.data = null; return objJsonResult; } } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = error; objJsonResult.data = tb2; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 工厂日历 导入(保存) [Route("Gy_PlanShifts/Gy_PlanShifts_btnSave")] [HttpPost] public object Gy_PlanShifts_btnSave([FromBody] JObject sMainSub) { var _value = sMainSub["sMainSub"].ToString(); string msg1 = _value.ToString(); string[] sArray = msg1.Split(new string[] { "&和" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); string user = sArray[1].ToString(); try { if (!DBUtility.ClsPub.Security_Log("Gy_PlanShifts_Edit", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无保存权限!"; objJsonResult.data = null; return objJsonResult; } List Excel = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg2); List> list = new List>(); foreach (JObject item in Excel) { Dictionary dic = new Dictionary(); foreach (var itm in item.Properties()) { dic.Add(itm.Name, itm.Value.ToString()); } list.Add(dic); } oCN.BeginTran(); int i = 1; foreach (Dictionary item in list) { string HSourceID = item["HSourceID"].ToString();//生产资源ID string HOrgID = item["HOrgID"].ToString();//组织ID string HDate = item["日期"].ToString(); string HOverTimes = item["工时"].ToString(); ds = oCN.RunProcReturn("select * from Gy_PlanShifts where HSourceID=" + HSourceID + " and convert(varchar(100),HDate,23)='" + HDate + "'", "Gy_PlanShifts"); if (ds.Tables[0].Rows.Count == 0) { string sql = "insert into Gy_PlanShifts(HDate,HSourceID,HShiftsID,HOverTimes,HClassCount,HRemark,HUseFlag) " + "values(" + "'" + HDate + "'" + "," + HSourceID + "" + ",0" + "," + HOverTimes + "" + ",1" + ",''" + ",''" + ")"; //主表 oCN.RunProc(sql); } else { oCN.RunProc("update Gy_PlanShifts set HOverTimes = " + HOverTimes + " where HSourceID=" + HSourceID + " and convert(varchar(100),HDate,23)='" + HDate + "'"); } i++; } oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "导入成功!"; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { LogService.Write(e); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 制成率明细报表 [Route("MaterOutEntryReport/Sc_ProductedRateReport")] [HttpGet] public object Sc_ProductedRateReport(string HBeginDate,string HEndDate,string sWhere,double HRate_BeyondICMOQty, string user) { try { if (!DBUtility.ClsPub.Security_Log("Sc_ProductedRateReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql = "exec h_p_Sc_ProductedRateReport '" + HBeginDate + "','" + HEndDate + "','" + sWhere + "'," + HRate_BeyondICMOQty; ds = oCN.RunProcReturn(sql, "h_p_Sc_ProductedRateReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.list = columnNameList; objJsonResult.data = ds.Tables; 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/Sc_RetentionTimeReport")] [HttpGet] public object Sc_RetentionTimeReport(string HBeginDate,string HEndDate,string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Sc_RetentionTimeReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql = "exec h_p_Sc_RetentionTimeReport '" + HBeginDate + "','" + HEndDate + "','" + sWhere + "'"; ds = oCN.RunProcReturn(sql, "h_p_Sc_RetentionTimeReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.list = columnNameList; objJsonResult.data = ds.Tables; 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/Sc_CompareOrderToSelloutReport")] [HttpGet] public object Sc_CompareOrderToSelloutReport(string HBeginDate, string HEndDate, string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Sc_CompareOrderToSelloutReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql = "exec h_p_Sc_CompareOrderToSelloutReport '" + HBeginDate + "','" + HEndDate + "','" + sWhere + "'"; ds = oCN.RunProcReturn(sql, "h_p_Sc_CompareOrderToSelloutReport"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.list = columnNameList; objJsonResult.data = ds.Tables; 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/Xs_SellOutMoneyRangeReport")] [HttpGet] public object Xs_SellOutMoneyRangeReport(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Xs_SellOutMoneyRangeReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } List columnNameList = new List(); if (sWhere == null || sWhere.Equals("")) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "请选择有效年份"; return objJsonResult; } else { ds = oCN.RunProcReturn("exec h_p_Xs_SellOutMoneyRangeReport '" + sWhere + "'", "h_p_Xs_SellOutMoneyRangeReport"); } //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.data = ds.Tables[0]; objJsonResult.list = columnNameList; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 销售订单条码出入库详情 [Route("MaterOutEntryReport/Xs_SeOrderBarCodeInAndOutStockDetailReport")] [HttpGet] public object Xs_SeOrderBarCodeInAndOutStockDetailReport(string sWhere, string user) { try { if (!DBUtility.ClsPub.Security_Log("Xs_SeOrderBarCodeInAndOutStockDetailReport", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql = "select * from h_v_Xs_SeOrderBarCodeInAndOutStockDetailReport_Query where 1=1 " + sWhere; ds = oCN.RunProcReturn(sql, "h_v_Xs_SeOrderBarCodeInAndOutStockDetailReport_Query"); DataTable dt = ds.Tables[0]; //获取列名 List columnNameList = new List(); //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.list = columnNameList; objJsonResult.data = ds.Tables; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #endregion } }