/// <summary> /// 取得允收日期 /// </summary> /// <param name="StartDate">製造日期</param> /// <param name="Days">保存期限</param> /// <param name="EndDate">有效日期</param> /// <param name="Source">商品來源</param> /// <param name="ReceiveDate">允收日期</param> /// <returns></returns> public bool QueryAcceptSituation(string StartDate, string Days, string EndDate, string Source, out string ReceiveDate) { ReceiveDate = ""; try { DBO.MaintainAcceptDBO dbo = new DBO.MaintainAcceptDBO(ref USEDB); ArrayList QueryParameter = new ArrayList(); QueryParameter.Clear(); QueryParameter.Add(int.Parse(Source)); QueryParameter.Add(int.Parse(Days)); DataTable dtResult = dbo.GetAcceptSituation(QueryParameter); if (dtResult.Rows.Count == 0) { ReceiveDate = ""; return false; } else { DateTime dtStart = DateTime.ParseExact(StartDate, "yyyy/MM/dd", null); DateTime dtEnd = DateTime.ParseExact(EndDate, "yyyy/MM/dd", null); if (dtResult.Rows[0]["CAL_TYPE"].ToString() == "S") { ReceiveDate = dtStart.AddDays(int.Parse(dtResult.Rows[0]["ALLOWACCEPT_DAYS"].ToString())).ToString("yyyy/MM/dd"); } else if (dtResult.Rows[0]["CAL_TYPE"].ToString() == "E") { //ReceiveDate = dtStart.AddDays(int.Parse(dtResult.Rows[0]["ALLOWACCEPT_DAYS"].ToString()) + 1).ToString("yyyy/MM/dd"); ReceiveDate = dtEnd.AddDays(((int.Parse(dtResult.Rows[0]["ALLOWACCEPT_DAYS"].ToString())) * (-1)) + 1).ToString("yyyy/MM/dd"); } } return true; } catch (Exception ex) { throw ex; } }