| | |
| | | } |
| | | #endregion |
| | | |
| | | #region 拣料配送单 删除 |
| | | [Route("Sc_ComplementGoods/DelComplementGoodsList")] |
| | | [HttpGet] |
| | | public object DelComplementGoodsList(string HInterID, string HEntryID,string HOrgID, string user) |
| | | { |
| | | try |
| | | { |
| | | //删除权限 |
| | | if (!DBUtility.ClsPub.Security_Log("Cj_ComplementGoodsBill_Drop", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无删除权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | ds = oCN.RunProcReturn($"select HISCheck from JIT_SendGoodsBillMain where HMainSourceInterID={HInterID} ", "JIT_SendGoodsBillMain"); |
| | | |
| | | if (ds.Tables[0].Rows.Count>0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "当前单据已配送,不能删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.RunProc($"exec Del_ComplementGoodsBillInfo {HInterID},{HEntryID},{HOrgID}"); |
| | | |
| | | 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; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 配料单列表 |
| | | [Route("Sc_ComplementGoods/ComplementGoodsBill")] |
| | | [HttpGet] |
| | | public object ComplementGoodsBill(string sWhere, string user) |
| | | public object ComplementGoodsBill(string sWhere) |
| | | { |
| | | try |
| | | { |
| | |
| | | objJsonResult.data = new DataTable(); |
| | | return objJsonResult; |
| | | } |
| | | //反序列化传递的值 |
| | | ComplementGoods com = JsonConvert.DeserializeObject<ComplementGoods>(sWhere.ToString()); |
| | | |
| | | ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoods_Load '{sWhere}'", "h_p_JIT_ComplementGoods_Load"); |
| | | |
| | | 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("Sc_ComplementGoods/ComplementGoodsBill_C")] |
| | | [HttpGet] |
| | | public object ComplementGoodsBill_C(string sWhere) |
| | | { |
| | | try |
| | | { |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | objJsonResult.data = new DataTable(); |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.RunProc($"exec h_p_JIT_ComplementGoodsBill_C_Add '{sWhere}'"); |
| | | |
| | | ds = oCN.RunProcReturn("exec h_p_JIT_GetComplementGoodsBill_C " + sWhere, "h_p_JIT_GetComplementGoodsBill_C"); |
| | | |
| | | 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 仓库发料 |
| | | //参数 |
| | | public class SendGoodsBill { |
| | | public int? 未拣料数量 = 0; |
| | | public int? 最大拣料数量 = 0; |
| | | public int? 本次拣料数量 = 0; |
| | | public int? HEntryID = 0; |
| | | public int? HMaterID = 0; |
| | | public int? HWHID = 0; |
| | | public int? HSPID = 0; |
| | | } |
| | | |
| | | [Route("Sc_ComplementGoods/JIT_SendGoodsBill")] |
| | | [HttpPost] |
| | | public object JIT_SendGoodsBill([FromBody] JObject msg) |
| | | { |
| | | var _value = msg["msg"].ToString(); |
| | | string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | string msg2 = sArray[0].ToString(); |
| | | string user = sArray[1].ToString(); |
| | | string SourceInterID = sArray[2].ToString(); |
| | | string SourceBillNo = sArray[3].ToString(); |
| | | try |
| | | { |
| | | msg2 = msg2.Replace("\\", ""); |
| | | msg2 = msg2.Replace("\n", ""); |
| | | |
| | | List<SendGoodsBill> listCa = new List<SendGoodsBill>(); |
| | | //获取表格数据集合 |
| | | listCa = JsonConvert.DeserializeObject<List<SendGoodsBill>>(msg2.ToString()); |
| | | |
| | | for (int i = 0; i < listCa.Count; i++) |
| | | { |
| | | if (listCa[i].本次拣料数量 > listCa[i].最大拣料数量) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "本次拣料数量超过最大拣料数量!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | if (listCa[i].本次拣料数量 > listCa[i].未拣料数量) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "本次拣料数量超过未拣料数量!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | bool flag = false; |
| | | flag = AddSendGoodsBill(listCa, SourceInterID, SourceBillNo, user, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | |
| | | //ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoods_Load '{com.MaterialNumber}','{com.MaterialName}','{com.MaterialModel}','{com.HGD}'," + |
| | | // $"'{com.HWHName}','{com.HDeptName}','{com.Organization}','{com.user}','{com.HJLStatus}','{com.HBeginDate}','{com.HEndDate}'", "h_p_JIT_ComplementGoodsBillList_Query"); |
| | | if (flag) |
| | | { |
| | | objJsonResult.code = "1"; |
| | | 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 e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | //新增 |
| | | public bool AddSendGoodsBill(List<SendGoodsBill> listCa, string SourceInterID, string SourceBillNo, string user, ref string sReturn) |
| | | { |
| | | try |
| | | { |
| | | oCN.BeginTran(); |
| | | |
| | | oCN.RunProc($"delete from JIT_SendGoodsBillMain where HMainSourceInterID={SourceInterID} and HMainSourceBillNo='{SourceBillNo}'"); |
| | | |
| | | oCN.RunProc($"delete from JIT_SendGoodsBillSub where HInterID in (select HInterID from JIT_SendGoodsBillMain where HMainSourceInterID={SourceInterID} and HMainSourceBillNo='{SourceBillNo}')"); |
| | | |
| | | for (int i = 0; i < listCa.Count; i++) |
| | | { |
| | | long InterID = DBUtility.ClsPub.CreateBillID_Prod("460201", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("460201", ref DBUtility.ClsPub.sExeReturnInfo, true); |
| | | |
| | | //添加主表数据 |
| | | oCN.RunProc("insert into JIT_SendGoodsBillMain(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate" + |
| | | ",HBillNo,HBillStatus,HMaker,HMakeDate,HISCheck, HMainSourceInterID, HMainSourceEntryID" + |
| | | ", HMainSourceBillNo, HMainSourceBillType)" + |
| | | $"values({DateTime.Now.Year},{DateTime.Now.Month},'460201','460201',{InterID}, GETDATE(), '{HBillNo}'," + |
| | | $" 0,'{user}', GETDATE(), 0, {SourceInterID}, {listCa[i].HEntryID}, '{SourceBillNo}', '4602')"); |
| | | |
| | | //添加子表数据 |
| | | oCN.RunProc("insert into JIT_SendGoodsBillSub(HInterID,HBillNo_bak,HEntryID" + |
| | | ",HMaterID,HQty,HWHID,HSPID,HISCheck,HCheckSubMan,HCheckSubDate)" + |
| | | $"values({InterID},'{HBillNo}',{i}, {listCa[i].HMaterID},{listCa[i].本次拣料数量}," + |
| | | $" {listCa[i].HWHID},{listCa[i].HSPID},0,'{user}', GETDATE())"); |
| | | |
| | | //修改调拨数量 |
| | | oCN.RunProc($"update JIT_ComplementGoodsBillSub_LK set HSendQTY={listCa[i].本次拣料数量} where HMaterID={listCa[i].HMaterID} " + |
| | | $" and HSourceInterID=(select top 1 HSourceInterID from JIT_ComplementGoodsBillSub_LK " + |
| | | $"where HMaterID={listCa[i].HMaterID} order by HSourceInterID ) and HInterID={SourceInterID}"); |
| | | } |
| | | |
| | | sReturn = "新增单据成功!"; |
| | | oCN.Commit(); |
| | | return true; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | sReturn = e.Message; |
| | | throw (e); |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 上查 |
| | | [Route("Sc_ComplementGoods/ComplementGoodsList_Sc")] |
| | | [HttpGet] |
| | | public object ComplementGoodsList_Sc(string HInterID,string HEntryID) |
| | | { |
| | | try |
| | | { |
| | | |
| | | ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_UpQuery '{HInterID}',{HEntryID}", "h_p_JIT_ComplementGoodsBillList_UpQuery"); |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |