/// <summary> /// Creates a new SerializedScheduledEventParams instance based on the provided ScheduledEventParams /// </summary> /// <param name="scheduledEventParams"></param> public SerializedScheduledEventParams(ScheduledEventParams scheduledEventParams) { Name = scheduledEventParams.Name; ExpiryTime = Time.DateTimeToUnixTimeStamp(scheduledEventParams.ExpiryTime); Tag = scheduledEventParams.Tag; Quantity = scheduledEventParams.Quantity; OrderReason = scheduledEventParams.OrderReason; Symbol = scheduledEventParams.Symbol.ID.ToString(); }
/// <summary> /// Initialize ScheduledEventParams /// </summary> /// <param name="name">an identifier for scheduled event</param> /// <param name="expiry_time">utc expiry time of the order</param> /// <param name="symbol">order ticker</param> /// <param name="quantity">order size</param> /// <param name="orderReason">order reason</param> public ScheduledEventParams(string name, DateTime expiry_time, Symbol symbol, decimal quantity, OrderReason orderReason) { Name = name; ExpiryTime = expiry_time; Symbol = symbol; Quantity = quantity; OrderReason = orderReason; Tag = name; }
/// <summary> /// Creates a new ScheduledEventParams instance from a SerializedScheduledEventParams instance /// </summary> /// <param name="serializedScheduledEventsParams"></param> /// <returns></returns> public static ScheduledEventParams FromSerialized(SerializedScheduledEventParams serializedScheduledEventsParams) { string name = serializedScheduledEventsParams.Name; string tag = serializedScheduledEventsParams.Tag; var sid = SecurityIdentifier.Parse(serializedScheduledEventsParams.Symbol); Symbol symbol = new Symbol(sid, sid.Symbol); DateTime expiry_time = QuantConnect.Time.UnixTimeStampToDateTime(serializedScheduledEventsParams.ExpiryTime); OrderReason orderReason = serializedScheduledEventsParams.OrderReason; decimal quantity = serializedScheduledEventsParams.Quantity; return(new ScheduledEventParams(name, expiry_time, symbol, quantity, orderReason)); }
/// <summary> /// /// </summary> /// <param name="symbol"></param> /// <param name="quantity"></param> /// <param name="orderReason"></param> /// <param name="tag"></param> /// <returns></returns> public OrderTicket MarketOrderWrapper(Symbol symbol, decimal quantity, OrderReason orderReason, string tag) { throw new NotImplementedException(); }
public Object GetOrderInfo(long PageIndex, long PageSize, string OrderNo, string WorkProcedure, string BatchNo, string Model, string EquipmentNo, string FeedbackMan, string StartTime, string EndTime, string Status, int OrderType) { OrderNo = OrderNo != null ? OrderNo : ""; WorkProcedure = WorkProcedure != null ? WorkProcedure : ""; BatchNo = BatchNo != null ? BatchNo : ""; Model = Model != null ? Model : ""; EquipmentNo = EquipmentNo != null ? EquipmentNo : "";; FeedbackMan = FeedbackMan != null ? FeedbackMan : ""; StartTime = StartTime != null ? StartTime : ""; EndTime = EndTime != null ? EndTime : ""; Status = Status != null ? Status : ""; string strWhere = @" OrderNo like '%{0}%' and isnull(WorkProcedure,'') like '%{1}%' and isnull(BatchNo,'') like '%{2}%' and isnull(Model,'') like '%{3}%' and isnull(EquipmentNo,'') like '%{4}%' and isnull(FeedbackMan,'') like '%{5}%' "; strWhere = string.Format(strWhere, OrderNo, WorkProcedure, BatchNo, Model, EquipmentNo, FeedbackMan); if (StartTime != "" & EndTime != "") { strWhere += " and FeedbackTime between '" + StartTime + "' and '" + EndTime + " 23:59:59'"; } /* * Status表示订单状态,该值存在以下几种情况: Null:全部,E:待处理;W:待确认;T:处理中;P:已完成;B:已退单; * W状态下:b.Status=0&&b.StepID=私有公共变量WaitConfirmStepID * E状态下: b.Status=0&&b.StepID=私有公共变量WaitHandleStepID,即QC所在步骤StepID * T状态下: b.Status=0 * P状态下:b.Status=2 * B状态下:b.Status=3 */ switch (Status) { case "E": strWhere += @" and (b.Status=0 and b.StepID='" + WaitHandleStepID + "')"; break; case "W": strWhere += @" and (b.Status=0 and b.StepID='" + WaitConfirmStepID + "')"; break; case "T": strWhere += @" and (b.Status=0)"; break; case "P": strWhere += @" and (b.Status=2)"; break; case "B": strWhere += @" and (b.Status=3)"; break; default: break; } strWhere += " and OrderType=" + OrderType + " "; using (SqlConnection con = new SqlConnection(conString)) { try { BllApprovalStream BllStream = new BllApprovalStream(con); FeedbackBaseService BllBase = new FeedbackBaseService(con); FeedbackExReasonService BllReason = new FeedbackExReasonService(con); FeedbackExProblemService BllPro = new FeedbackExProblemService(con); BllProductCard BllCard = new BllProductCard(con); long RowCount = 0, PageCount = 0; List <FeedbackBase> BaseList = BllBase.GetOrderByWorkFlowTaskOnPage(PageIndex, PageSize, strWhere, out RowCount); List <OrderInfo> OrderList = new List <OrderInfo>(); if (BaseList != null && BaseList.Count > 0) { foreach (var node in BaseList) { OrderInfo Item = new OrderInfo(); //①基础信息 Item.OrderNo = node.OrderNo; Item.BatchNo = node.BatchNo; Item.Model = node.Model; Item.Qty = node.Qty; Item.ProductClass = node.ProductClass; Item.WorkProcedure = node.WorkProcedure; Item.EquipmentName = node.EquipmentName; Item.EquipmentNo = node.EquipmentNo; Item.FeedbackMan = node.FeedbackMan; Item.FeedbackTime = node.FeedbackTime.ToString("yyyy-MM-dd HH:mm"); Item.ProblemLevel = node.ProblemLevel; Item.Report = node.Report; Item.Measure = node.Measure; //Item.Status= node.Status; Item.Status = node.ProvalStatus.ToString(); Item.EmployeeID = node.EmployeeID; Item.StepID = node.StepID; Item.StepName = node.StepName; Item.ID = (node.ID).ToString(); Item.PrevStatus = node.PrevStatus; Item.IsControl = node.IsControl; Item.ImageList = node.ImageList; //②质量问题 List <FeedbackExProblem> Problem = BllPro.GetProblemByWhere(" where OrderNo='" + node.OrderNo + "'"); List <OrderProblem> OrderProblem = new List <OrderProblem>(); foreach (var list in Problem) { OrderProblem Obj_Problem = new OrderProblem(); Obj_Problem.codeString = list.CodeString; Obj_Problem.topClass = list.TopClass; Obj_Problem.roomName = list.RoomName; Obj_Problem.typeName = list.TypeName; Obj_Problem.present = list.Present; Obj_Problem.problem = list.Problem; Obj_Problem.suggestion = list.Suggestion; Obj_Problem.problemDetails = list.ProblemDetails; Obj_Problem.qualityClass = list.QualityClass; Obj_Problem.problemLevel = list.ProblemLevel; OrderProblem.Add(Obj_Problem); } Item.ProblemData = OrderProblem; //③原因分析 List <FeedbackExReason> Reason = BllReason.GetReasonByWhere(" where OrderNo='" + node.OrderNo + "'"); List <OrderReason> OrderReason = new List <OrderController.OrderReason>(); foreach (var list in Reason) { OrderReason Obj_Reason = new OrderReason(); Obj_Reason.reasonType = list.ReasonType; Obj_Reason.reasonDetails = list.ReasonDetails; Obj_Reason.orderNo = list.OrderNo; OrderReason.Add(Obj_Reason); } Item.ReasonData = OrderReason; //④客户信息 Item.CardList = BllCard.GetCard(" where FKOrderNo='" + node.OrderNo + "' and CardNo <>''"); //⑤反馈单处理意见 Item.ApprovalStream = BllStream.GetStream(" where OrderNo='" + node.OrderNo + "' and StreamType=0"); if (OrderType == 1) { //⑥控制表处理意见 Item.ControlStream = BllStream.GetStream(" where OrderNo='" + node.OrderNo + "' and StreamType=1"); } Item.RowCount = RowCount; OrderList.Add(Item); } } return(OrderList); } catch (Exception ex) { string ErrMsg = ex.Message; return(""); } finally { if (con.State != ConnectionState.Closed) { con.Close(); } } } }