コード例 #1
0
ファイル: MRW_Socket.cs プロジェクト: longnhong/KeyBoard
        private ObjectSend setDataToObjectSend(Initial initial, TicketAction ticketAction, string action)
        {
            ObjectSend objSend = null;

            if (initial != null)
            {
                foreach (var ticketDic in initial.Tickets)
                {
                    var    ticket = ticketDic.Value;
                    string state  = ticket.State;
                    objSend = setDataFromSocket.SetDataFromTicketInitial(ticket, ActionTicket.INITIAL, dicAllServices);

                    if (ActionTicket.ACTION_CREATE.Equals(action) || ActionTicket.ACTION_CANCEL.Equals(action))
                    {
                        subList(action, objSend, objSend.ticket_id);
                    }
                    else
                    {
                        addList(state, objSend);
                    }
                }
            }
            else
            {
                var ticketID = ticketAction.Ticket.Id;
                if (action.Equals(ActionTicket.ACTION_CREATE) || action.Equals(ActionTicket.ACTION_CANCEL))
                {
                    objSend = setDataFromSocket.SetDataFromTicketAction(ticketAction, ticketAction.Action, dicAllServices);
                }
                objSend = GetObjSendByAction(action, ticketID);
                subList(action, objSend, ticketID);
            }
            sortDic();
            return(objSend);
        }
コード例 #2
0
        public Dictionary <string, Dictionary <string, ObjectSend> > SetDataToObjectSend(Initial initial)
        {
            string action = "";
            Dictionary <string, Dictionary <string, ObjectSend> > dicObjSend = new Dictionary <string, Dictionary <string, ObjectSend> >();
            Dictionary <string, ObjectSend> lstObjectWaiting  = new Dictionary <string, ObjectSend>();
            Dictionary <string, ObjectSend> lstObjectCanceled = new Dictionary <string, ObjectSend>();
            Dictionary <string, ObjectSend> lstObjectServing  = new Dictionary <string, ObjectSend>();

            SetDataSocketInitial setData = new SetDataSocketInitial();

            if (initial != null)
            {
                action = ActionTicket.INITIAL;
                foreach (var ticketDic in initial.Serving)
                {
                    var        ticket  = ticketDic.Value;
                    var        state   = ticket.state;
                    ObjectSend objSend = setData.SetDataFromTicketInitial(ticket, action);
                    AddList(state, lstObjectWaiting, lstObjectCanceled, lstObjectServing, objSend);
                }
            }

            dicObjSend.Add(ActionTicket.STATE_SERVING, lstObjectServing);
            return(dicObjSend);
        }
コード例 #3
0
ファイル: MRW_Socket.cs プロジェクト: longnhong/KeyBoard
        private void addDataDicAndList(ObjectSend objSend, Dictionary <string, ObjectSend> dic)
        {
            var key = objSend.ticket_id;

            if (dic.ContainsKey(key))
            {
                dic.Remove(key);
            }
            dic.Add(key, objSend);
        }
コード例 #4
0
        public void AddList(string state, Dictionary <string, ObjectSend> lstObjectWaiting, Dictionary <string, ObjectSend> lstObjectCanceled,
                            Dictionary <string, ObjectSend> lstObjectServing, ObjectSend objSend)
        {
            switch (state)
            {
            case ActionTicket.STATE_SERVING:
                lstObjectServing.Add(objSend.ticket_id, objSend);
                break;

            default:
                break;
            }
        }
コード例 #5
0
ファイル: MRW_Socket.cs プロジェクト: longnhong/KeyBoard
        private ObjectSend GetObjSendByAction(string action, string ticketID)
        {
            ObjectSend objSend = null;

            if (ActionTicket.ACTION_CALL.Equals(action))
            {
                objSend = dicWating[ticketID];
            }
            else if (!ActionTicket.ACTION_RESTORE.Equals(action))
            {
                objSend = dicServing[ticketID];
            }
            return(objSend);
        }
コード例 #6
0
ファイル: MRW_Socket.cs プロジェクト: longnhong/KeyBoard
        private void addList(string state, ObjectSend objSend)
        {
            switch (state)
            {
            case ActionTicket.STATE_WATING:
                addDataDicAndList(objSend, dicWating);
                break;

            case ActionTicket.STATE_CANCELLED:
                addDataDicAndList(objSend, dicCancelled);
                break;

            case ActionTicket.STATE_SERVING:
                addDataServing(objSend, dicServing);
                break;

            default:
                break;
            }
        }
コード例 #7
0
 public EventSocketSendProgram(string action, Dictionary <string, Service> lstService, Dictionary <string, Counter> lstCounter, ObjectSend objSend)
 {
     this.DicCounter = lstCounter;
     this.DicService = lstService;
     this.ObjSend    = objSend;
     this.Action     = action;
 }