using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; using System.Web.Http; using WebAPI.Models; namespace WebAPI.Controllers { /** * 找货单单 */ public class LookingForBillController : ApiController { private json objJsonResult = new json(); public DataSet ds = new DataSet(); public WebServer webserver = new WebServer(); /// /// 根据包装单 返回此包装单内的相关信息 /// /// [Route("LookingFor/getPackUnionBillList")] [HttpGet] public object getPackUnionBillList(string HBarCode_Pack) { try { ds = getPackUnionBillList_s(HBarCode_Pack); if (ds == null || Pub_Class.ClsPub.isLong(ds.Tables[0].Rows[0][0]) == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString(); objJsonResult.data = ds.Tables[0]; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "扫码成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 根据实物条码验证状态 /// /// [Route("LookingFor/getPackUnionBillListDetailed")] [HttpGet] public object getPackUnionBillListDetailed(string HBarCode) { try { ds = getPackUnionBillListDetailed_s(HBarCode); if (ds == null || Pub_Class.ClsPub.isLong(ds.Tables[0].Rows[0][0]) == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString(); objJsonResult.data = ds.Tables[0]; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString(); objJsonResult.data = ds.Tables[0]; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 下架找货单根据销售订单 返回此销售订单内的相关信息 /// /// [Route("LookingFor/getSellOrderList")] [HttpGet] public object getSellOrderList(string HSourceBillNo) { try { ds = getSellOrderList_s(HSourceBillNo); if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "返回记录成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 上架归还单根据实物条码 返回相关信息 /// /// [Route("LookingFor/getBarCodeDetails")] [HttpGet] public object getBarCodeDetails(string HBarCode) { try { string sWhere = " Where HBarCode = '" + HBarCode.Trim() + "'"; ds = getBarCodeDetails_s(sWhere); if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "返回记录成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 生成下架找货单 /// /// [Route("LookingFor/set_SaveLookingForBill_Json")] [HttpPost] public object set_SaveLookingForBill_Json([FromBody]JObject oMain) { string oMainData = oMain["oMain"].ToString(); oMainData = oMainData.Substring(8,oMainData.Length-9); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); try { List lsmain = new List(); ListModels oListModels = new ListModels(); List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(oMainData); oCN.BeginTran(); var mainSql = "Insert Into LookingForBillMain " + "(HInterID,HBillNo,HSourceInterID,HSourceBillNo,HCreateBy)" + " values" + "(" + list[0].HInterID + ",'" + list[0].HBillNo + "'," + list[0].HSourceInterID + ",'" + list[0].HSourceBillNo + "','" + list[0].HMaker + "')"; oCN.RunProc(mainSql); for (int i = 0; i < list.Count; i++) { var subSql = "Insert Into LookingForBillSub " + "(HWHID,HWHName,HSPID,HSPName,HBillType,HMTONo,HQty,HMaterID,HMaterName,HMaterNumber,HMaterModel,HBarCode,HGroupID,HGroup,HSourceID,HSource,HIsStatus,HStatus,HCreateBy,HMainItemID)" + " values" + "(" + list[i].HWHID + ",'" + list[i].HWHName + "'," + list[i].HSPID + ",'" + list[i].HSPName + "','1253','" + list[i].HMTONo + "',"+ list[i].HQty + "," + list[i].HMaterID + ",'"+ list[i].HMaterName + "','"+ list[i].HMaterNumber + "','"+ list[i].HMaterModel + "','" + list[i].HBarCode + "'," + list[i].HGroupID + ",'"+ list[i].HGroup + "',"+ list[i].HSourceID + ",'" + list[i].HSource + "',' ',' ','"+ list[i].HMaker + "',(select HItemID from LookingForBillMain where HBillNo = '"+ list[i].HBillNo + "'))"; oCN.RunProc(subSql); var barCodeSql = "update Gy_BarCodeBill set HStatus='裁切中-" + list[i].HSource + "' where HBarCode = '"+ list[i].HBarCode + "'"; oCN.RunProc(barCodeSql); } oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "生成找货单成功!单据号为:" + list[0].HBillNo; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "上传失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 生成上架归还单 /// /// [Route("LookingFor/set_SaveLookingForReturnBill_Json")] [HttpPost] public object set_SaveLookingForReturnBill_Json([FromBody] JObject oMain) { string oMainData = oMain["oMain"].ToString(); oMainData = oMainData.Substring(8, oMainData.Length - 9); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); try { List lsmain = new List(); ListModels oListModels = new ListModels(); List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(oMainData); oCN.BeginTran(); var mainSql = "Insert Into LookingForBillMain " + "(HInterID,HBillNo,HSourceInterID,HSourceBillNo,HCreateBy)" + " values" + "(" + list[0].HInterID + ",'" + list[0].HBillNo + "'," + list[0].HSourceInterID + ",'" + list[0].HSourceBillNo + "','" + list[0].HMaker + "')"; oCN.RunProc(mainSql); for (int i = 0; i < list.Count; i++) { var subSql = "Insert Into LookingForBillSub " + "(HWHID,HWHName,HSPID,HSPName,HBillType,HMTONo,HQty,HMaterID,HMaterName,HMaterNumber,HMaterModel,HBarCode,HGroupID,HGroup,HSourceID,HSource,HIsStatus,HStatus,HCreateBy,HMainItemID)" + " values" + "(" + list[i].HWHID + ",'" + list[i].HWHName + "'," + list[i].HSPID + ",'" + list[i].HSPName + "','1252','" + list[i].HMTONo + "'," + list[i].HQty + "," + list[i].HMaterID + ",'" + list[i].HMaterName + "','" + list[i].HMaterNumber + "','" + list[i].HMaterModel + "','" + list[i].HBarCode + "'," + list[i].HGroupID + ",'" + list[i].HGroup + "'," + list[i].HSourceID + ",'" + list[i].HSource + "',' ',' ','" + list[i].HMaker + "',(select HItemID from LookingForBillMain where HBillNo = '" + list[i].HBillNo + "'))"; oCN.RunProc(subSql); var barCodeSql = "update Gy_BarCodeBill set HStatus='在库' where HBarCode = '" + list[i].HBarCode + "'"; oCN.RunProc(barCodeSql); } oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "生成归还单成功!单据号为:" + list[0].HBillNo; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "上传失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 根据仓位二维码带出仓库仓位相关信息 /// /// [Route("LookingFor/getSpName_Json")] [HttpGet] public object getSpName_Json(string HBarCode) { try { string[] sArray = HBarCode.Remove(0, 3).Split(';'); long HSpID = DBUtility.ClsPub.isLong(sArray[1]); long HWHID = DBUtility.ClsPub.isLong(sArray[0]); string sWhere = " Where HWHID = " + HWHID + " and HItemID = "+ HSpID + ""; ds = getSpName_Json_s(sWhere); if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "返回记录成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } #region sql语句 public static DataSet getPackUnionBillList_s(string HBarCode_Pack) { return new SQLHelper.ClsCN().RunProcReturn("EXEC h_p_Kf_getPackUnionBillList " + "'"+HBarCode_Pack+"'", "h_p_Kf_getPackUnionBillList"); } public static DataSet getPackUnionBillListDetailed_s(string HBarCode) { return new SQLHelper.ClsCN().RunProcReturn("EXEC h_p_Kf_getPackUnionBillListDetailed " + "'" + HBarCode + "'", "h_p_Kf_getPackUnionBillListDetailed"); } public static DataSet getSellOrderList_s(string HSourceBillNo) { string sWhere = " Where HSourceBillNo = '" + HSourceBillNo.Trim() + "'"; new SQLHelper.ClsCN().RunProcReturn("exec h_p_IFCLD_ERPSourceBillToLocal_SEOrderToICMO '" + HSourceBillNo + "'", "h_p_IFCLD_ERPSourceBillToLocal_SEOrderToICMO"); return new SQLHelper.ClsCN().RunProcReturn("select * from h_v_getSellOrderList_s " + sWhere, "h_v_getSellOrderList_s"); } public static DataSet getBarCodeDetails_s(string sWhere) { return new SQLHelper.ClsCN().RunProcReturn("select * from h_v_getBarCodeDetails_s " + sWhere, "h_v_getBarCodeDetails_s"); } public static DataSet getSpName_Json_s(string sWhere) { return new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_StockPlace " + sWhere, "h_v_IF_StockPlace"); } #endregion } }