| | |
| | | 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(); |
| | | private JsonResult objJsonResult = new JsonResult(); |
| | | public JsonResult objJsonResult = new JsonResult(); |
| | | private json objjson = new json(); |
| | | |
| | | /// <summary> |
| | |
| | | /// <param name="SCWhID"></param> |
| | | /// <param name="SCSPID"></param> |
| | | /// <returns></returns> |
| | | //[Route("MoveStockBill/get_InfoByBarCode_Source_Json")] |
| | | //[HttpGet] |
| | | //public object get_InfoByBarCode_Source_Json(string sCode, Int64 sInterID, string sBillNo, Double sQty, Int64 HWHID, Int64 HSPID, Int64 SCWhID, Int64 SCSPID) |
| | | //{ |
| | | // try |
| | | // { |
| | | // WebS.ClsKF_PonderationBillMain_Temp model = new WebS.ClsKF_PonderationBillMain_Temp(); |
| | | // string sErrMsg = ""; |
| | | // bool sBool = false; |
| | | // double sRelQty = 0; |
| | | // oView = webserver.get_InfoByBarCode_Source(sCode, sInterID, ref sBool, ref DBUtility.ClsPub.sErrInfo); |
| | | // if (oView == null) |
| | | // { |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "单据号:" + sBillNo + ",单据ID:" + sInterID + ";" + DBUtility.ClsPub.sErrInfo; |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | // } |
| | | // if (oView.HBarCodeType == "唯一条码" && sQty > 0 && oView.HQty < sQty) |
| | | // { |
| | | // sRelQty = oView.HQty; |
| | | // } |
| | | // else if (sQty > 0) |
| | | // { |
| | | // sRelQty = sQty; |
| | | // } |
| | | // else |
| | | // { |
| | | // sRelQty = oView.HQty; |
| | | // } |
| | | |
| | | // model.HInterID = DBUtility.ClsPub.isLong(sInterID); |
| | | // model.HBillNo = DBUtility.ClsPub.isStrNull(sBillNo); |
| | | // model.HBillType = this.HBillType; |
| | | // model.HMaker = DBUtility.ClsPub.CurUserName; |
| | | // // |
| | | // 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 = DBUtility.ClsPub.isLong(HWHID); |
| | | // model.HStockPlaceID = DBUtility.ClsPub.isLong(HSPID); |
| | | // model.HSCWHID = SCWhID; |
| | | // model.HOutStockPlaceID = SCSPID; |
| | | // //model.HVDAPack = txtHVDAPack2.Text.Trim(); |
| | | // //model.HVDAMaterNum = txtHVDAMaterID.Text.Trim(); |
| | | // //model.HVDAQty = DBUtility.ClsPub.ObjToDouble(txtHVDAQty.Text.Trim()); |
| | | // // |
| | | // model.HSourceInterID = oView.HSourceInterID; |
| | | // model.HSourceEntryID = oView.HSourceEntryID; |
| | | // model.HSourceBillNo = oView.HSourceBillNo; |
| | | // model.HSourceBillType = oView.HSourceBillType; |
| | | // model.HRedBlueFlag = false; |
| | | // model.HPieceQty = 1; |
| | | // //model.HSTOCKORGID = DBUtility.ClsPub.HORGANIZATIONSID; |
| | | // //model.HOWNERID = DBUtility.ClsPub.HORGANIZATIONSID; |
| | | |
| | | // WebS.WebService1 oWebs = new WebS.WebService1(); |
| | | // //if (webserver.set_SavePonderationBillMain_Temp_Qty(model, sQty, ref DBUtility.ClsPub.sErrInfo)) |
| | | // bool flag = oWebs.Get_CheckQtyByBarCode_GetWhAndSP(model.HInterID, model.HBillType, model.HBarCode, ref SCWhID, ref SCSPID, sRelQty, ref sRelQty); |
| | | // if (flag) |
| | | // { |
| | | // sQty = sRelQty; |
| | | // } |
| | | // else if(sRelQty == 0) |
| | | // { |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "无库存!"; |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | // } |
| | | // else |
| | | // { |
| | | // sQty = sRelQty; |
| | | // } |
| | | |
| | | // if (oWebs.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) |
| | | // { |
| | | |
| | | // throw; |
| | | // } |
| | | //} |
| | | |
| | | /// <summary> |
| | | /// 调拨单/扫条码 |
| | | /// </summary> |
| | | /// <param name="sCode"></param> |
| | | /// <param name="sInterID"></param> |
| | | /// <param name="sBillNo"></param> |
| | | /// <param name="sQty"></param> |
| | | /// <param name="HWHID"></param> |
| | | /// <param name="HSPID"></param> |
| | | /// <param name="SCWhID"></param> |
| | | /// <param name="SCSPID"></param> |
| | | /// <returns></returns> |
| | | [Route("MoveStockBill/get_InfoByBarCode_Source_Json")] |
| | | [HttpGet] |
| | | public object get_InfoByBarCode_Source_Json(string sCode, Int64 sInterID, string sBillNo, Double sQty, Int64 HWHID, Int64 HSPID, Int64 SCWhID, Int64 SCSPID) |
| | | { |
| | | try |
| | | { |
| | | DAL.ClsGy_BarCodeBill_View dal = new DAL.ClsGy_BarCodeBill_View(); |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | dal.GetInfoByNumber_View(sCode); |
| | | if (dal.omodel_View.HBarCodeType != "托盘条码") |
| | | { |
| | | return get_InfoByBarCode_Source_Json_s(sCode, sInterID, sBillNo, sQty, HWHID, HSPID, SCWhID, SCSPID); |
| | | } |
| | | else |
| | | { |
| | | //如果是雅琪诺则托盘条码分解并模拟扫码 |
| | | |
| | | //分解托条码得到明细条码信息写入出入库条码临时表 |
| | | DataSet dsTBarCode; |
| | | string sBarCode_MX; |
| | | dsTBarCode = oCn.RunProcReturn("select b.HBarCode HBarCodeMX from Sc_PackUnionBillMain a " + |
| | | " inner join Sc_PackUnionBillSub b on a.HInterID = b.HInterID " + |
| | | " Where a.HBarCode_Pack = '" + sCode + "'", "Sc_PackUnionBillMain"); |
| | | if (dsTBarCode == null || dsTBarCode.Tables[0].Rows.Count == 0) |
| | | { |
| | | //sErrMsg = "没有找到托盘条码!"; |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "扫码失败!没有找到托盘条码!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | for (int i = 0; i < dsTBarCode.Tables[0].Rows.Count; i++) |
| | | { |
| | | sBarCode_MX = DBUtility.ClsPub.isStrNull(dsTBarCode.Tables[0].Rows[i]["HBarCodeMX"]); |
| | | objJsonResult= (JsonResult)get_InfoByBarCode_Source_Json_s(sBarCode_MX, sInterID, sBillNo, sQty, HWHID, HSPID, SCWhID, SCSPID); |
| | | if(objJsonResult.code == "0") |
| | | { |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "扫码失败!" + DBUtility.ClsPub.isStrNull(e); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | public object get_InfoByBarCode_Source_Json_s(string sCode, Int64 sInterID, string sBillNo, Double sQty, Int64 HWHID, Int64 HSPID, Int64 SCWhID, Int64 SCSPID) |
| | | { |
| | | try |
| | | { |
| | |
| | | string sErrMsg = ""; |
| | | bool sBool = false; |
| | | double sRelQty = 0; |
| | | double sRelQty2 = 0; |
| | | oView = webserver.get_InfoByBarCode_Source(sCode, sInterID, ref sBool, ref DBUtility.ClsPub.sErrInfo); |
| | | if (oView == null) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:" + sBillNo + ",单据ID:" + sInterID + ";" + DBUtility.ClsPub.sErrInfo; |
| | | objJsonResult.Message = "1-单据号:" + sBillNo + ",单据ID:" + sInterID + ";" + DBUtility.ClsPub.sErrInfo; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (oView.HBarCodeType == "唯一条码" && sQty > 0 && oView.HQty < sQty) |
| | | { |
| | | sRelQty = oView.HQty; |
| | | sRelQty2 = oView.HQty; |
| | | } |
| | | else if (sQty > 0) |
| | | { |
| | | sRelQty = sQty; |
| | | sRelQty2 = sQty; |
| | | } |
| | | else |
| | | { |
| | | sRelQty = oView.HQty; |
| | | sRelQty2 = oView.HQty; |
| | | } |
| | | |
| | | model.HInterID = DBUtility.ClsPub.isLong(sInterID); |
| | |
| | | model.HBarCode = oView.HBarCode; |
| | | model.HBatchNo = oView.HBatchNo; |
| | | model.HMTONo = oView.HMTONo; |
| | | |
| | | //model.HWhID = oView.HWHID; |
| | | //model.HStockPlaceID = oView.HSPID; |
| | | |
| | | model.HWhID = DBUtility.ClsPub.isLong(HWHID); |
| | | model.HStockPlaceID = DBUtility.ClsPub.isLong(HSPID); |
| | |
| | | |
| | | WebS.WebService1 oWebs = new WebS.WebService1(); |
| | | //if (webserver.set_SavePonderationBillMain_Temp_Qty(model, sQty, ref DBUtility.ClsPub.sErrInfo)) |
| | | bool flag = oWebs.Get_CheckQtyByBarCode_GetWhAndSP(model.HInterID, model.HBillType, model.HBarCode, ref SCWhID, ref SCSPID, sRelQty, ref sRelQty); |
| | | if (flag) |
| | | objJsonResult = CheckQtyByBarCode_Json(model.HInterID, model.HBillType, model.HBarCode, ref SCWhID, ref SCSPID, sRelQty2, ref sRelQty); |
| | | |
| | | if (objJsonResult.count == 1) |
| | | { |
| | | sQty = sRelQty; |
| | | model.HSCWHID = SCWhID; |
| | | model.HOutStockPlaceID = SCSPID; |
| | | } |
| | | else if(sRelQty == 0) |
| | | else if (objJsonResult.count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无库存!"; |
| | | objJsonResult.Message = "2-无库存!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | sQty = sRelQty; |
| | | } |
| | | |
| | | if (oWebs.set_SavePonderationBillMain_Temp_Qty(model, sQty, ref DBUtility.ClsPub.sErrInfo)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "扫码成功!"; |
| | | objJsonResult.Message = "3-扫码成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "扫码失败!" + DBUtility.ClsPub.sErrInfo; |
| | | objJsonResult.data = null; |
| | | objJsonResult.Message = "4-扫码失败!" + DBUtility.ClsPub.sErrInfo; |
| | | objJsonResult.data = model.HBarCode; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception) |
| | | { |
| | | |
| | | |
| | | throw; |
| | | } |
| | | } |
| | | |
| | | //根据条码 数量 判断条码库存 是否充足 并且带出 仓库仓位 |
| | | public JsonResult CheckQtyByBarCode_Json(long InterID, string sBillType, string sBarCode, ref long HWHID, ref long HSPID, double sQty, ref double sRelQty) |
| | | { |
| | | DataSet DS; |
| | | DataSet DSErp; |
| | | try |
| | | { |
| | | //单条码,一张单据一条条码(凯波) |
| | | //DS = oCn.RunProcReturn("exec h_p_KF_ICInventory_WMS_GetWHAndSP_Single " + InterID.ToString() + ",'" + sBillType + "','" + sBarCode + "'," + HWHID.ToString() + "," + HSPID.ToString(), "h_p_KF_ICInventory_WMS_GetWHAndSP_Single", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //判断条码库存 |
| | | DS = new SQLHelper.ClsCN().RunProcReturn("exec h_p_KF_ICInventory_WMS_GetWHAndSP " + InterID.ToString() + ",'" + sBillType + "','" + sBarCode + "'," + HWHID.ToString() + "," + HSPID.ToString(), "h_p_KF_ICInventory_WMS_GetWHAndSP", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (DS.Tables[0].Rows.Count == 0) |
| | | { |
| | | sRelQty = 0; |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "4-扫码失败!"; |
| | | objJsonResult.data = DS; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | double sKFQty = 0; |
| | | double sKFQtyErp = 0; |
| | | sKFQty = DBUtility.ClsPub.isDoule(DS.Tables[0].Rows[0]["HKFQty"]); |
| | | HWHID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HWhID"]); |
| | | HSPID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HSPID"]); |
| | | //直接返回999 |
| | | DSErp = new SQLHelper.ClsCN().RunProcReturn("exec h_p_IF_ICInventory_WMS_GetWHAndSP " + InterID.ToString() + ",'" + sBillType + "','" + sBarCode + "'," + HWHID.ToString() + "," + HSPID.ToString(), "h_p_IF_ICInventory_WMS_GetWHAndSP", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (DSErp.Tables[0].Rows.Count == 0) |
| | | { |
| | | sRelQty = 0;//不会走 |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "4-扫码失败!"; |
| | | objJsonResult.data = DS; |
| | | return objJsonResult; |
| | | } |
| | | sKFQtyErp = DBUtility.ClsPub.isDoule(DSErp.Tables[0].Rows[0]["HKFQty"]);//9999 |
| | | if (sQty > sKFQty && sQty > sKFQtyErp) //当库存小于标签数量时 取库存数量 |
| | | { |
| | | sRelQty = sKFQtyErp; |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "4-扫码失败!"; |
| | | objJsonResult.data = DS; |
| | | return objJsonResult; |
| | | } |
| | | else if (sQty > sKFQty && sQty < sKFQtyErp) //当库存小于标签数量时 取库存数量 |
| | | { |
| | | sRelQty = sKFQty; |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "4-扫码失败!"; |
| | | objJsonResult.data = DS; |
| | | return objJsonResult; |
| | | } |
| | | else if (sQty < sKFQty && sQty > sKFQtyErp)//无效 |
| | | { |
| | | sRelQty = sKFQtyErp; |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "4-扫码失败!"; |
| | | objJsonResult.data = DS; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | sRelQty = sQty; |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "4-扫码失败!"; |
| | | objJsonResult.data = DS; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | sRelQty = 0; |
| | | throw (e); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 生成调拨单 |
| | | /// </summary> |