/// <summary> /// 根据用户和时间查询处理过的项目信息 /// </summary> /// <param name="query">个人中心查询类</param> /// <returns></returns> public DataTable GetItemInstace(CenterQuery query, out int recordCount) { string sql = string.Format(@"select a.*,b.enddate from xm_xmxx a left join (select flowid, itemCode, max(enddate) enddate from wf_instance where state = 1 and userId = {0} group by flowid, itemCode) b on a.flowid = b.flowid and a.itemcode = b.itemcode where a.ItemState in (1,2) and b.enddate >= to_date('{1}','yyyy-mm-dd hh24:mi:ss') and b.enddate <= to_date('{2}','yyyy-mm-dd hh24:mi:ss') order by b.enddate desc", query.UserID, query.BeginDate.ToString(), query.EndDate.ToString()); #region 设置参数 OracleParameter pageSize = new OracleParameter("p_PageSize", OracleType.Number, 10); pageSize.Value = query.PageSize; OracleParameter pageIndex = new OracleParameter("p_PageIndex", OracleType.Number, 10); pageIndex.Value = query.PageIndex; OracleParameter sqlSelect = new OracleParameter("p_SqlSelect", OracleType.VarChar, 4000); sqlSelect.Value = sql; OracleParameter recount = new OracleParameter("p_OutRecordCount", OracleType.Number, 5); recount.Direction = ParameterDirection.Output; OracleParameter returnCursor = new OracleParameter("p_OutCursor", OracleType.Cursor); returnCursor.Direction = ParameterDirection.Output; OracleParameter[] oracleParameters = { pageSize, pageIndex, sqlSelect, recount, returnCursor }; #endregion DataTable dt = OracleHelper.ExecuteDataTable("CommonPackages.sp_Page", oracleParameters); recordCount = int.Parse(recount.Value.ToString()); return(dt); }
void OnDrawGizmosSelected() { if (DrawDebagPoints) { Vector3 MyPos = CenterQuery.GetPoint(); Vector2 StartPos = new Vector2(); StartPos.x = MyPos.x - DotDistanse * (SideRange - 1) / 2f; StartPos.y = MyPos.y - DotDistanse * (SideRange - 1) / 2f; for (int x = 0; x < SideRange; ++x) { MyPos.x = StartPos.x + x * DotDistanse; for (int y = 0; y < SideRange; ++y) { MyPos.y = StartPos.y + y * DotDistanse; Gizmos.DrawIcon(MyPos, "GeneratorPointIcon.png"); } } } if (DrawPointOnFindTimer > 0f) { DrawPointOnFindTimer -= Time.deltaTime; if (Points.Count > 0) { Gizmos.DrawIcon(LocalPoint.MyPoint, "FinalePointIcon.png"); } else { Gizmos.DrawIcon(CenterQuery.GetPoint(), "RedCross.png"); } } }
public override bool FindSpot(out Vector3 InVector) { if (DrawPointOnFind) { DrawPointOnFindTimer = DrawPointOnFindTime; } Vector3 MyPos = CenterQuery.GetPoint(); Vector2 StartPos = new Vector2(); StartPos.x = MyPos.x - DotDistanse * (SideRange - 1) / 2f; StartPos.y = MyPos.y - DotDistanse * (SideRange - 1) / 2f; Points.Clear(); int TestsLength = Tests.Length; for (int x = 0; x < SideRange; ++x) { LocalPoint.MyPoint.x = StartPos.x + x * DotDistanse; for (int y = 0; y < SideRange; ++y) { LocalPoint.MyPoint.y = StartPos.y + y * DotDistanse; LocalPoint.MyPriority = 1f; float LocalF = 1; for (int i = 0; i < TestsLength; ++i) { if (Tests[i].MyTest == null) { print("Test #" + i + " fails " + transform.name); break; } LocalF = Tests[i].MyTest.CulcPoint(LocalPoint.MyPoint); if (LocalF == 0) { break; } LocalPoint.MyPriority *= LocalF; } if (LocalF == 0) { continue; } if (Points.Count == 0) { Points.Add(LocalPoint); continue; } if (LocalPoint.MyPriority > Points[0].MyPriority) { Points.Clear(); Points.Add(LocalPoint); continue; } if (LocalPoint.MyPriority == Points[0].MyPriority) { Points.Add(LocalPoint); } } } if (Points.Count == 0) { InVector = Vector3.zero; return(false); } if (Points.Count > 1) { InVector = Points[Random.Range(0, Points.Count - 1)].MyPoint; LocalPoint.MyPoint = InVector; return(true); } InVector = Points[0].MyPoint; LocalPoint.MyPoint = InVector; return(true); }