| using DBUtility; | 
| using Model; | 
| 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.Web; | 
| using System.Web.Http; | 
| using WebAPI; | 
| using WebAPI.Code; | 
| using WebAPI.Models; | 
|   | 
| namespace WebAPI.Controllers | 
| { | 
|     public class OtherInStockController : 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 = "1203";//单据类型 | 
|         public string sBillCode = "ICStockBill"; | 
|         public string sTranType = "10"; | 
|         public bool sRedBlueFlag = false; | 
|         public bool SourceFlag = false; | 
|         //public string sSourceType = "1103"; | 
|         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 WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS(); | 
|         public WebS.WebService1 oWebs = new WebS.WebService1(); | 
|         //public double sRelQty = 0; | 
|         // private DataBaseServices objDataBaseServices = new DataBaseServices(); | 
|         private JsonResult objJsonResult = new JsonResult(); | 
|         public ClsKf_ICStockBill_WMS oBar = new Model.ClsKf_ICStockBill_WMS(); | 
|         // 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 ""; | 
|             } | 
|         } | 
|   | 
|         /// <summary> | 
|         /// 一键扫码 | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("OtherInStockBill/get_InfoByBarCode_Source_Json")] | 
|         [HttpGet] | 
|         public Object get_CheckTypeByBarCode_Json(string sCode, Int64 sInterID, string sBillNo, string sMaker, Int64 WhID, Int64 SPID, Double sQty, bool sRedBlue, bool SourceFlag, string sSourceBillNo, string sSourceType, Int64 HOWNERID) | 
|         { | 
|             string sExpressNumber = ""; | 
|             WebSoBar = oWebs.get_CheckTypeByBarCode_All(sCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, sExpressNumber, ref DBUtility.ClsPub.sErrInfo); | 
|             if (WebSoBar == null) | 
|             { | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|             else | 
|             { | 
|                 objJsonResult.code = "1"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = DBUtility.ClsPub.sErrInfo; | 
|                 objJsonResult.data = oBar; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|         /// <summary> | 
|         /// 一键扫码(红字) | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("OtherInStockBill/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; | 
|             } | 
|         } | 
|         /// <summary> | 
|         /// 返回出入库条码临时表      | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("OtherInStockBill/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; | 
|                 } | 
|                 else | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 1; | 
|                     objJsonResult.Message = "获取信息成功!"; | 
|                     objJsonResult.data = ds.Tables[0]; | 
|                     return objJsonResult; | 
|                 } | 
|             } | 
|             catch (Exception e) | 
|             { | 
|   | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "没有返回任何记录!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|   | 
|          /// <summary> | 
|         /// 扫描条码 | 
|         /// </summary> | 
|         /// <param name="msg"></param> | 
|         /// <param name="msg2"></param> | 
|         /// <returns></returns> | 
|         [Route("OtherInStockBill/get_InfoByBarCode_Source_Json")] | 
|         [HttpGet] | 
|         public object get_InfoByBarCode_Source_Json(string sBarCode, Int64 sInterID, string sBillNo, Double sQty, Int64 whID, Int64 spID) | 
|         { | 
|             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 = whID; | 
|                 model.HStockPlaceID = spID; | 
|                 model.HSourceInterID = oView.HSourceInterID; | 
|                 model.HSourceEntryID = oView.HSourceEntryID; | 
|                 model.HSourceBillNo = oView.HSourceBillNo; | 
|                 model.HSourceBillType = oView.HSourceBillType; | 
|                 model.HRedBlueFlag = false; | 
|                 model.HPieceQty = 1; | 
|                 model.HSTOCKORGID = ClsPub.HORGANIZATIONSID; | 
|                 model.HOWNERID = ClsPub.HORGANIZATIONSID; | 
|                 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; | 
|             } | 
|         } | 
|         /// <summary> | 
|         /// 生成其他入库单(红字) | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("OtherInStockBill/set_SaveOtherInBackBill_Json")] | 
|         [HttpPost] | 
|         public object set_SaveOtherInBackBill_Json([FromBody]JObject oMain) | 
|         { | 
|             var _value = oMain["oMain"].ToString(); | 
|             string msg1 = _value.ToString(); | 
|             try | 
|             { | 
|                 List<Model.ClsKf_ICStockBillMain> lsmain = new List<Model.ClsKf_ICStockBillMain>(); | 
|                 ListModels oListModels = new ListModels(); | 
|                 lsmain = oListModels.getICStockBillMainByJson(msg1); | 
|                 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; | 
|                 if (webserver.set_SaveOtherInBackBill_New(lsmain[0], sSourceBillType, 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; | 
|             } | 
|         } | 
|         /// <summary> | 
|         /// 生成其他入库单 | 
|         /// </summary> | 
|         /// <returns></returns> | 
|         [Route("OtherInStockBill/set_SaveOtherInStockBill_Json")] | 
|         [HttpPost] | 
|         public object set_SaveOtherInStockBill_Json([FromBody]JObject oMain) | 
|         { | 
|             var _value = oMain["oMain"].ToString(); | 
|             string msg1 = _value.ToString(); | 
|   | 
|   | 
|             try | 
|             { | 
|                 List<Model.ClsKf_OtherInBillMain> lsmain = new List<Model.ClsKf_OtherInBillMain>(); | 
|                 ListModels oListModels = new ListModels(); | 
|                 lsmain = oListModels.getOtherInBillMainByJson(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_OtherInBillMain websLsmain = new WebS.ClsKf_OtherInBillMain(); | 
|                 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.HSTOCKORGID = lsmain[0].HSTOCKORGID; | 
|                 websLsmain.HOWNERID = lsmain[0].HSTOCKORGID; | 
|   | 
|                 WebS.ClsXt_SystemParameterMain oSystemParameterMain = new WebS.ClsXt_SystemParameterMain(); | 
|                 if (webserver.set_SaveOtherInBill_New(websLsmain, sSourceBillType, oSystemParameterMain, 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("OtherInBill/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("OtherInBill/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("MateBill/Delete_Json1")] | 
|         [HttpGet] | 
|         public object Delete_Json1(long HInterID, long HMaterID, long HAuxPropID, string HMTONo, long HSourceInterID, long HSourceEntryID, string sHBillType) | 
|         { | 
|             string sErrMsg = string.Empty; | 
|             WebS.WebService1 oWebs = new WebS.WebService1(); | 
|             try | 
|             { | 
|                 if (oWebs.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("OtherInBill/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("OtherInBillList/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("OtherInBillList/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; | 
|             } | 
|         } | 
|     } | 
|   | 
| } |