| | |
| | | objjson.data = null; |
| | | return objjson; |
| | | } |
| | | DAL.ClsCg_POInStockBill oClsCg_POInStockBill = new DAL.ClsCg_POInStockBill(); |
| | | ds = oClsCg_POInStockBill.ShowNewBillMainTo(DBUtility.ClsPub.isLong(sMsg), DBUtility.ClsPub.isStrNull(sMsg3), ShowItem, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | ds = ShowNewBillMainTo(DBUtility.ClsPub.isLong(sMsg), DBUtility.ClsPub.isStrNull(sMsg3), ShowItem, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objjson.code = "0"; |
| | |
| | | objjson.data = null; |
| | | return objjson; |
| | | } |
| | | DAL.ClsCg_POInStockBill oClsCg_POInStockBill = new DAL.ClsCg_POInStockBill(); |
| | | ds = oClsCg_POInStockBill.ShowNewBillSubTo(DBUtility.ClsPub.isLong(sMsg), DBUtility.ClsPub.isStrNull(sMsg2), DBUtility.ClsPub.isStrNull(sMsg3), ShowItem, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | ds = ShowNewBillSubTo(DBUtility.ClsPub.isLong(sMsg), DBUtility.ClsPub.isStrNull(sMsg2), DBUtility.ClsPub.isStrNull(sMsg3), ShowItem, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objjson.code = "0"; |
| | |
| | | int i = 0; |
| | | foreach (Model.ClsCg_POInStockBillSub oItemSub in ls) |
| | | { |
| | | //判断采购订单状态 |
| | | objJsonResult = TestPOOrder(oItemSub.HPOOrderEntryID.ToString()); |
| | | if (objJsonResult.code == "0") |
| | | return objJsonResult; |
| | | //增加判断 送货数量超出采购订单数量 |
| | | i++; |
| | | if (oItemSub.HQty <= 0) |
| | |
| | | |
| | | |
| | | [Route("TestSaverPOInStock")] |
| | | [HttpPost] |
| | | [HttpGet] |
| | | /// <summary> |
| | | /// 生成送货单前验证金蝶采购订单是否删除和关闭,然后更新关联数量 |
| | | /// </summary> |
| | | /// <param name="HInterID"></param> |
| | | /// <returns></returns> |
| | | public object TestSaverPOInStock([FromBody] string[] ids) |
| | | public object TestSaverPOInStock(string ids, string entryids) |
| | | { |
| | | List<string> mylist = new List<string>(ids.Distinct()); |
| | | List<string> mylist = new List<string>(ids.Split(',').Distinct()); |
| | | List<string> entryList = new List<string>(entryids.Split(',').Distinct()); |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | if (mylist.Count > 1) |
| | | { |
| | | objJsonResult.code = "0"; |
| | |
| | | } |
| | | try |
| | | { |
| | | //采购订单下推生成送货单 时候 判断是否有生成采购订单变更单 如果有且变更单状态不为已审核 限制下推 |
| | | objJsonResult = TestPOOrder(entryids); |
| | | if (objJsonResult.code == "0") |
| | | return objJsonResult; |
| | | |
| | | string HinterID = ""; |
| | | for (int i = 0; i < mylist.Count; i++) |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | //更新关联数量 |
| | | HinterID = mylist[i].ToString(); |
| | | oCn.RunProc("exec h_p_SRM_UpDatePPBomRelationQty '" + HinterID + "'"); |
| | |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 验证 采购订单 |
| | | /// </summary> |
| | | /// <param name="entryids">采购订单FENTRYID</param> |
| | | /// <returns></returns> |
| | | public JsonResult TestPOOrder(string entryids) |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | try |
| | | { |
| | | //验证金蝶采购订单是否存在 |
| | | string sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | LEFT JOIN AIS20211130140219..T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | WHERE ISNULL(C.FENTRYID,0) = 0 |
| | | AND B.HEntryID in ({0})" |
| | | , entryids); |
| | | DataSet ds = oCn.RunProcReturn(sql, "temp"); |
| | | if (ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:" + ds.Tables[0].Rows[0]["HBillNo"].ToString() + ",物料编码:" + ds.Tables[0].Rows[0]["HNumber"].ToString() + ",对应的金蝶采购订单已删除,不能下推送货单!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //采购订单下推生成送货单 时候 判断是否有生成采购订单变更单 如果有且变更单状态不为已审核 限制下推 |
| | | sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName,F.FBILLNO |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | JOIN AIS20211130140219..T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join AIS20211130140219..T_PUR_POCHANGEENTRY D ON C.FENTRYID = D.FOFENTRYID |
| | | LEFT join AIS20211130140219..T_PUR_POCHANGE F ON D.FID = F.FID |
| | | where b.HEntryID in ({0}) |
| | | and F.FDOCUMENTSTATUS <> 'C'" |
| | | , entryids); |
| | | ds = oCn.RunProcReturn(sql, "temp"); |
| | | if (ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:" + ds.Tables[0].Rows[0]["HBillNo"].ToString() + ",物料编码:" + ds.Tables[0].Rows[0]["HNumber"].ToString() + ",有对应采购订单变更单:" + ds.Tables[0].Rows[0]["FBILLNO"].ToString() + "未审核,不能下推送货单!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "操作成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "失败!" + e.Message.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 采购订单生成送货单按钮 显示单据头 |
| | | /// </summary> |
| | | /// <param name="lngBillKey"></param> |
| | | /// <param name="HBillType"></param> |
| | | /// <param name="sShowItem"></param> |
| | | /// <param name="sReturn"></param> |
| | | /// <returns></returns> |
| | | public DataSet ShowNewBillMainTo(Int64 lngBillKey, string HBillType, string sShowItem, ref string sReturn) |
| | | { |
| | | try |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | //查询主表 |
| | | DataSet Ds; |
| | | Ds = oCn.RunProcReturn(" exec h_p_SRM_POInStockBillMain_ForWeb " + lngBillKey.ToString() + ",'" + HBillType + "'", "h_p_SRM_POInStockBillMain_ForWeb"); |
| | | if (Ds == null || Ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | sReturn = "单据头未找到!"; |
| | | return null; |
| | | } |
| | | sReturn = "显示单据头成功!"; |
| | | return Ds; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | sReturn = e.Message; |
| | | return null; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 采购订单生成送货单按钮 显示单据体 |
| | | /// </summary> |
| | | /// <param name="lngBillKey"></param> |
| | | /// <param name="lngBillKey2"></param> |
| | | /// <param name="HBillType"></param> |
| | | /// <param name="sShowItem"></param> |
| | | /// <param name="sReturn"></param> |
| | | /// <returns></returns> |
| | | public DataSet ShowNewBillSubTo(Int64 lngBillKey, string lngBillKey2, string HBillType, string sShowItem, ref string sReturn) |
| | | { |
| | | string s = ""; |
| | | try |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | //查询主表 |
| | | DataSet Ds; |
| | | Ds = oCn.RunProcReturn(" exec h_p_SRM_POInStockBillSub_ForWeb '" + lngBillKey2 + "','" + HBillType + "'", "h_p_SRM_POInStockBillSub_ForWeb"); |
| | | if (Ds == null || Ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | sReturn = "单据体未找到!"; |
| | | return null; |
| | | } |
| | | sReturn = "显示单据体成功!"; |
| | | return Ds; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | sReturn = e.Message; //+ s |
| | | return null; |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | | } |