Exemple #1
0
        public void AddDateData(DateData entity)
        {
            Db.Dates.InsertOnSubmit(entity);
            Db.SubmitChanges();

            AllDates.Add(entity);
        }
Exemple #2
0
    /// <summary>
    /// 复制(潜拷贝)
    /// </summary>
    protected override void toShadowCopy(BaseData data)
    {
        if (!(data is SystemPartData))
        {
            return;
        }

        SystemPartData mData = (SystemPartData)data;

        this.version                       = mData.version;
        this.serverTime                    = mData.serverTime;
        this.isBlock                       = mData.isBlock;
        this.flowStep                      = mData.flowStep;
        this.keepSave                      = mData.keepSave;
        this.clientRandomSeeds             = mData.clientRandomSeeds;
        this.clientRandomSeedIndex         = mData.clientRandomSeedIndex;
        this.clientOfflineWorkReceiveIndex = mData.clientOfflineWorkReceiveIndex;
        this.gmCommandSet                  = mData.gmCommandSet;
        this.gmType              = mData.gmType;
        this.serverBornCode      = mData.serverBornCode;
        this.serverStartTime     = mData.serverStartTime;
        this.logQueue            = mData.logQueue;
        this.nextDailyTime       = mData.nextDailyTime;
        this.createDate          = mData.createDate;
        this.clientRandomSeedKey = mData.clientRandomSeedKey;
    }
Exemple #3
0
    private void OnApplicationQuit()
    {
        DateData dateData = new DateData(activitiesList, DateTime.Now.Date);

        dateDataDict[DateTime.Now.Date.ToString("MM/dd/yyyy")] = dateData;
        SaveGame();
        Debug.Log("OnApplicationQuit");
    }
Exemple #4
0
        public IErrorHandle ErrorStatus; // Error handling object

        /// <summary>
        /// Constructor
        /// </summary>
        public User()
        {
            id          = -1;
            name        = string.Empty;
            updatedAt   = new DateData();
            createAt    = new DateData();
            ErrorStatus = new ErrorHandler();
            //identities = new List<Identity>();
        }
    public void startEvent()
    {
        message mes = new message("startEvent");

        mes.addNetObject(DateData.getRandomDateEvent(themeID));
        mes.getNetObject(0).addInt("relationLevel", relationLevel);
        controlerPlayers.sendMessageToMatch(mes, ID, oponenID);
        relationLevel++;
    }
Exemple #6
0
 public void OnApplicationPause(bool pause)
 {
     if (pause)
     {
         DateData dateData = new DateData(activitiesList, DateTime.Now.Date);
         dateDataDict[DateTime.Now.Date.ToString("MM/dd/yyyy")] = dateData;
         SaveGame();
         Debug.Log("OnApplicationPause");
     }
 }
Exemple #7
0
 /// <summary>
 /// 初始化初值
 /// </summary>
 public override void initDefault()
 {
     this.version = new SaveVersionData();
     this.version.initDefault();
     this.keepSave = new KeepSaveData();
     this.keepSave.initDefault();
     this.logQueue   = new SQueue <InfoLogData>();
     this.createDate = new DateData();
     this.createDate.initDefault();
 }
Exemple #8
0
 public ActionResult <string> GetActionsBetweenDatesList([FromBody] DateData dateData)
 {
     try
     {
         List <Log> toReturn = userLogic.GetActionsBetweenDatesList(dateData.lowerDate, dateData.higherDate);
         return(Ok(toReturn));
     }
     catch (InvalidOperationException) { return(BadRequest("Error en el orden de las fechas")); }
     catch (NullReferenceException) { return(BadRequest("Fecha no puede ser nula")); }
 }
Exemple #9
0
    public void Initialize(Action <bool> initializationCallback = null)
    {
        DateRating = 0;

        QuestManager.Instance.OnCurrentDateQuestCompleted += OnDateQuestCompleted;
        GameEventsManager.StartGame.Subscribe(OnGameStart); // temp: remove this and use configurable actions to spawn date character
        _dateData = GameLevelDataController.Instance.CurrentGameLevelData.DateData;
        PooledObjectManager.Instance.RegisterPooledObject(_dateData.UnitPrefabId, 1);

        initializationCallback?.Invoke(true);
    }
        public JsonResult JsonForAppReport(string AppId, DateTime?BeginDate, DateTime?EndDate)
        {
            DateTime thisEnd        = DateTime.Now;
            DateTime thisStart      = DateTime.Now.AddDays(-30);
            DateTime thisMonthStart = new DateTime(System.DateTime.Now.Year, System.DateTime.Now.Month, 1);
            List <MemberInCountWithSubscribe> list = new List <MemberInCountWithSubscribe>();

            try
            {
                if (BeginDate != null && EndDate != null)
                {
                    thisStart = (DateTime)BeginDate;
                    thisEnd   = (DateTime)EndDate;
                }

                list = GetAllMemberCountVisible(AppId.ToString());
                if (list != null)
                {
                    var allCount                = list.Count();
                    var subscribeCount          = list.Where(x => x.IsSubscribe == (int)WinXinSubscribeEnum.Subscribe).Count();
                    var unSubscribeCount        = list.Where(x => x.IsSubscribe == (int)WinXinSubscribeEnum.UnSubscribe).Count();
                    var subScribeCountThisMonth = list.Where(x => x.SubscribeTime >= thisMonthStart && x.SubscribeTime <= thisEnd).Count();

                    InteractAndRead tableOfmessage = new InteractAndRead();
                    tableOfmessage = GetSqlResultCount(AppId, thisMonthStart, thisEnd.AddDays(1));

                    List <DateData> listDateData = new List <DateData>();
                    while (thisStart <= thisEnd)
                    {
                        DateData dateData = new DateData();
                        dateData.dateTime = thisStart.ToString("yyyy-MM-dd");
                        dateData.SubNum   = list.Where(x => System.Convert.ToDateTime(x.SubscribeTime).ToString("yyyy-MM-dd") == thisStart.ToString("yyyy-MM-dd")).Count();
                        listDateData.Add(dateData);
                        thisStart = thisStart.AddDays(1);
                    }
                    return(Json(new
                    {
                        allcountnum = allCount,
                        subscribeCountnum = subscribeCount,
                        unSubscribeCountnum = unSubscribeCount,
                        subScribeCountnumThisMonth = subScribeCountThisMonth,
                        monthSubDetailList = listDateData,
                        interacAndReadCount = tableOfmessage,
                    }, "200", JsonRequestBehavior.AllowGet));
                }
                return(Json(new { results = new { Data = 500 } }));
            }
            catch (Exception e)
            {
                _Logger.Error(e, "An error occurred while sending news.");
                //throw;
                return(Json(new { results = new { Data = 500 } }));
            }
        }
Exemple #11
0
        public Brush Convert(DateTime dateTime, bool isSelected, Brush defaultValue, BrushType brushType)
        {
            if (brushType == BrushType.Background)
            {
                if (AllDates != null)
                {
                    int index = AllDates.ToList().FindIndex(date => date.CalendarItemDate == dateTime);
                    if (index >= 0)
                    {
                        DateData date = AllDates[index];
                        if (date.ThumbnailEntryId != -1)
                        {
                            Entry entry = date.Entries.Where(o => o.Id == date.ThumbnailEntryId).FirstOrDefault();
                            if (entry != null)
                            {
                                return new ImageBrush()
                                       {
                                           ImageSource = entry.SmallThumbImage
                                       }
                            }
                            ;
                        }

                        if (date.Entries.Count > 0)
                        {
                            return(new ImageBrush()
                            {
                                ImageSource = date.Entries.First().SmallThumbImage, Stretch = Stretch.UniformToFill
                            });
                        }
                    }
                }

                if (dateTime == DateTime.Now.Date)
                {
                    return(new SolidColorBrush(Colors.Red));
                }

                if (isSelected)
                {
                    return(new SolidColorBrush(Color.FromArgb(255, 29, 161, 222)));
                }

                return(new SolidColorBrush(Colors.Black)
                {
                    Opacity = 0.4
                });
            }
            else
            {
                return(new SolidColorBrush(Colors.White));
            }
        }
Exemple #12
0
 void Awake()
 {
     // PlayerPrefs.DeleteAll();
     mInstance = this;
     DontDestroyOnLoad(this);
     //  serverManager = GetComponent<ServerManager>();
     userData            = GetComponent <UserData>();
     trainingData        = GetComponent <TrainingData>();
     capitulosData       = GetComponent <CapitulosData>();
     trainingResults     = GetComponent <TrainingResults>();
     dateData            = GetComponent <DateData>();
     resultsData         = GetComponent <ResultsData>();
     usersData           = GetComponent <UsersData>();
     firebaseAuthManager = GetComponent <FirebaseAuthManager>();
 }
 private void startDate()
 {
     output.outToScreen(isLead.ToString());
     if (isLead)
     {
         relationLevel = 0;
         controlerPlayers.GetPlayer(oponenID).isRdy = false;
         isRdy = false;
         relationLevel++;
         message mes = new message("startDate");
         mes.addNetObject(DateData.getRandomDateTheme(relationLevel));
         mes.getNetObject(0).addInt("relationLevel", relationLevel);
         themeID = mes.getNetObject(0).getInt(0);
         controlerPlayers.sendMessageToMatch(mes, ID, oponenID);
     }
 }
Exemple #14
0
        public void DeleteDateData(DateData entity)
        {
            AllDates.Remove(entity);

            Entry[] clone = new Entry[AllEntries.Count];
            AllEntries.CopyTo(clone, 0);
            foreach (Entry e in clone)
            {
                if (e.Date == entity)
                {
                    DeleteEntry(e);
                }
            }

            Db.Dates.DeleteOnSubmit(entity);
            Db.SubmitChanges();
        }
Exemple #15
0
 /// <summary>
 /// 回池
 /// </summary>
 protected override void toRelease(DataPool pool)
 {
     this.version                       = null;
     this.serverTime                    = 0L;
     this.isBlock                       = false;
     this.flowStep                      = 0;
     this.keepSave                      = null;
     this.clientRandomSeeds             = null;
     this.clientRandomSeedIndex         = 0;
     this.clientOfflineWorkReceiveIndex = 0;
     this.gmCommandSet                  = null;
     this.gmType              = 0;
     this.serverBornCode      = 0;
     this.serverStartTime     = 0L;
     this.logQueue            = null;
     this.nextDailyTime       = 0L;
     this.createDate          = null;
     this.clientRandomSeedKey = 0;
 }
    static void Main()
    {
        // start server

        IntPtr current = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;

        EnableMenuItem(GetSystemMenu(current, false), SC_CLOSE, MF_GRAYED);
        controlerPlayers = new controlerPlayers();
        DateData.initialiseDateTheme();
        DateData.initialiseDateEvent();

        l = new Listener(clientPort);
        l.SocketAccepted += new Listener.SocketAcceptedHandeler(l_SocketAccepted);
        l.Start();
        //keep allive
        while (keepAlive)
        {
            doCMD(Console.ReadLine().ToLower());
        }
    }
        private int GetNewPhotoIndex()
        {
            var photoDate = DatePicker.Value == null ? DateTime.Now : (DateTime)DatePicker.Value;

            int photoIndex = App.ViewModelData.AllDates.ToList().FindIndex(date => date.CalendarItemDate.Equals(photoDate.Date));

            if (photoIndex == -1)
            {
                // creat new date data
                DateData today = new DateData()
                {
                    CalendarItemDate = photoDate.Date
                };
                App.ViewModelData.AddDateData(today);
                App.ViewModelData.SaveChangesToDb();

                photoIndex = App.ViewModelData.AllDates.Count - 1;
            }
            return(photoIndex);
        }
Exemple #18
0
        private void CameraTakeBtn_Click(object sender, RoutedEventArgs e)
        {
            int photoIndex = App.ViewModelData.AllDates.ToList().FindIndex(date => date.CalendarItemDate.Equals(DateTime.Now.Date));

            if (photoIndex == -1)
            {
                // creat new date data
                DateData today = new DateData()
                {
                    CalendarItemDate = DateTime.Now.Date
                };

                App.ViewModelData.AddDateData(today);
                App.ViewModelData.SaveChangesToDb();

                photoIndex = App.ViewModelData.AllDates.Count - 1;
            }

            Uri uri = new Uri(String.Format("/PhotoCapturePage.xaml?index={0}", photoIndex), UriKind.Relative);

            NavigationService.Navigate(uri);
        }
        /// <summary>
        /// 导出报表
        /// </summary>
        /// <param name="appid"></param>
        /// <param name="BeginDate"></param>
        /// <param name="EndDate"></param>
        /// <returns></returns>
        public ActionResult MpExportCSV(string appid, DateTime?BeginDate, DateTime?EndDate)
        {
            DateTime thisEnd   = DateTime.Now;
            DateTime thisStart = DateTime.Now.AddDays(-30);
            List <MemberInCountWithSubscribe> list = new List <MemberInCountWithSubscribe>();

            try
            {
                if (BeginDate != null && EndDate != null)
                {
                    thisStart = (DateTime)BeginDate;
                    thisEnd   = (DateTime)EndDate;
                }
                list = GetAllMemberCountVisible(AppId.ToString());
                List <DateData> listDateData = new List <DateData>();
                if (list != null)
                {
                    while (thisStart <= thisEnd)
                    {
                        DateData dateData = new DateData();
                        dateData.dateTime = thisStart.ToString("yyyy-MM-dd");
                        dateData.SubNum   = list.Where(x => System.Convert.ToDateTime(x.SubscribeTime).ToString("yyyy-MM-dd") == thisStart.ToString("yyyy-MM-dd")).Count();
                        listDateData.Add(dateData);
                        thisStart = thisStart.AddDays(1);
                    }
                }


                return(mpExportToCSV(listDateData));
            }
            catch (Exception e)
            {
                _Logger.Error(e, "An error occurred while sending news.");
                //throw;
                return(Json(new { results = new { Data = 500 } }));
            }
        }
Exemple #20
0
    /** 创建单人角色 */
    protected virtual PlayerListData createSinglePlayer(CreatePlayerData createData)
    {
        Player player = GameC.player;

        player.newInitData();

        RolePartData rolePartData = player.role.getPartData();

        //设置基础键组
        rolePartData.playerID     = 1;
        rolePartData.name         = createData.name;
        rolePartData.userID       = 1;
        rolePartData.uid          = getVisitorUID();
        rolePartData.createAreaID = 1;
        rolePartData.platform     = PlatformType.Visitor;
        rolePartData.isAdult      = true;

        SystemPartData systemPartData = player.system.getPartData();

        systemPartData.createDate = DateData.getNow();      //记录创建时间

        //逻辑相关
        player.role.doCreatePlayer(createData);

        //创建调用
        player.onNewCreate();

        //创建角色日志
        GameC.log.createPlayer(player);

        PlayerListData listData = player.createListData();

        player.writeListData(listData);

        return(listData);
    }
 private void OnGetDates(DateData dates, string data)
 {
     if (dates != null)
     {
         Log.Debug("ExampleAlchemyLanguage", "status: {0}", dates.status);
         Log.Debug("ExampleAlchemyLanguage", "language: {0}", dates.language);
         Log.Debug("ExampleAlchemyLanguage", "url: {0}", dates.url);
         if (dates.dates == null || dates.dates.Length == 0)
         {
             Log.Debug("ExampleAlchemyLanguage", "No dates found!");
         }
         else
         {
             foreach (Date date in dates.dates)
             {
                 Log.Debug("ExampleAlchemyLanguage", "Text: {0}, Date: {1}", date.text, date.date);
             }
         }
     }
     else
     {
         Log.Debug("ExampleAlchemyLanguage", "Failed to find Dates!");
     }
 }
Exemple #22
0
        public List <DateWiseData> getDatewiseRecord(getEmployeewiseRecord obj)
        {
            DateTime forDate = obj.fromdate;

            Debug.WriteLine("For date :" + forDate.ToString());
            Debug.WriteLine("From  date :" + obj.fromdate.ToString());

            while (forDate <= obj.todate)
            {
                DateWiseData datewisedata = new DateWiseData();

                datewisedata._Date = forDate.ToString("yyyy-MM-dd");//Date

                List <DateData> listDateData = new List <DateData>();

                for (int i = 0; i < obj.uid.Count; i++)
                {
                    DateData dateData = new DateData();

                    //first in time and out time
                    string q1 = "select * from in_out where uid='" + obj.uid[i].ToString() + "' and _date = '" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "';";
                    string q2 = "select count(*) from in_out where uid='" + obj.uid[i].ToString() + "' and _date = '" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "';";
                    conn.Open();
                    MySqlCommand cmd2 = new MySqlCommand(q2, conn);
                    Int32        c    = Convert.ToInt32(cmd2.ExecuteScalar());
                    conn.Close();
                    Debug.WriteLine("Count :" + c);

                    if (c > 0)
                    {
                        Debug.WriteLine("For date individual :" + forDate.ToString("dd-MMM-yyyy"));

                        dateData._date   = forDate.ToString("dd-MMM-yyyy"); //date
                        dateData.uid     = obj.uid[i].ToString();           //uid
                        dateData.weekday = forDate.DayOfWeek.ToString();    //weekday

                        string          q0   = "select fname,lname from nworksuser where uid='" + obj.uid[i].ToString() + "';";
                        MySqlCommand    cmd0 = new MySqlCommand(q0, conn);
                        MySqlDataReader rdr0;
                        conn.Open();
                        rdr0 = cmd0.ExecuteReader();
                        while (rdr0.Read())
                        {
                            dateData.employeeName = rdr0.GetString("fname") + " " + rdr0.GetString("lname");//Employee name
                        }
                        conn.Close();

                        string          q3 = "select * from in_out where _date='" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "' and uid='" + obj.uid[i].ToString() + "' and inTime!='00:00:00' order by inout_id asc limit 1";              //get in time
                        string          query3 = "select count(*) from in_out where _date='" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "' and uid='" + obj.uid[i].ToString() + "' and inTime!='00:00:00' order by inout_id asc limit 1";   //get in time
                        string          q4 = "select * from in_out where _date='" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "' and uid='" + obj.uid[i].ToString() + "' and outTime!='00:00:00' order by inout_id desc limit 1";            //get out time
                        string          query4 = "select count(*) from in_out where _date='" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "' and uid='" + obj.uid[i].ToString() + "' and outTime!='00:00:00' order by inout_id desc limit 1"; //get out time
                        MySqlCommand    cmd3 = new MySqlCommand(q3, conn);
                        MySqlCommand    command3 = new MySqlCommand(query3, conn);
                        MySqlCommand    cmd4 = new MySqlCommand(q4, conn);
                        MySqlCommand    command4 = new MySqlCommand(query4, conn);
                        MySqlDataReader rdr3, rdr4;

                        conn.Open();
                        Int32 inCount = Convert.ToInt32(command3.ExecuteScalar());
                        conn.Close();
                        conn.Open();
                        Int32 outCount = Convert.ToInt32(command4.ExecuteScalar());
                        conn.Close();

                        if (inCount != 0)
                        {
                            conn.Open();
                            rdr3 = cmd3.ExecuteReader();
                            string firstIn = "";
                            while (rdr3.Read())
                            {
                                firstIn = rdr3.GetString("inTime").Substring(10, 8);       //fin time
                            }
                            Debug.WriteLine("Fin :" + firstIn);
                            dateData.fin = getConvert(firstIn);
                            conn.Close();
                        }

                        if (outCount != 0)
                        {
                            conn.Open();
                            rdr4 = cmd4.ExecuteReader();
                            string firstOut = "";
                            while (rdr4.Read())
                            {
                                firstOut = rdr4.GetString("outTime").Substring(10, 8);     //fout time
                            }
                            dateData.fout = getConvert(firstOut);
                            conn.Close();
                        }

                        //total in time
                        string       q5   = "select distinct inTime from in_out where inTime != '00:00:00' and uid='" + obj.uid[i].ToString() + "' and _date='" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "';";
                        string       q6   = "select distinct outTime from in_out where outTime != '00:00:00' and uid='" + obj.uid[i].ToString() + "' and _date='" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "';";
                        MySqlCommand cmd5 = new MySqlCommand(q5, conn);
                        MySqlCommand cmd6 = new MySqlCommand(q6, conn);

                        List <string> inT  = new List <string>();
                        List <string> outT = new List <string>();

                        MySqlDataReader rdr5;
                        MySqlDataReader rdr6;

                        conn.Open();
                        rdr5 = cmd5.ExecuteReader();
                        while (rdr5.Read())
                        {
                            inT.Add((rdr5.GetString("inTime").Substring(10, 8)));
                        }
                        conn.Close();

                        conn.Open();
                        rdr6 = cmd6.ExecuteReader();
                        while (rdr6.Read())
                        {
                            outT.Add((rdr6.GetString("outTime").Substring(10, 8)));
                        }
                        conn.Close();

                        int count = inT.Count - outT.Count;
                        Debug.WriteLine("in time count : " + inT.Count.ToString());
                        Debug.WriteLine("out time count : " + outT.Count.ToString());


                        TimeSpan TotalTime = TimeSpan.FromSeconds(1);
                        if (count == -1 || count == 0)
                        {
                            int cnt = inT.Count;
                            for (int k = 0; k < cnt; k++)
                            {
                                TimeSpan span     = TimeSpan.Parse(outT[k]) - TimeSpan.Parse(inT[k]);
                                TimeSpan duration = span.Duration();
                                TotalTime = TotalTime + duration;
                            }
                        }
                        else if (count == 1)
                        {
                            //need to improve this code
                            int cnt = outT.Count;
                            for (int k = 0; k < cnt; k++)
                            {
                                TimeSpan span     = TimeSpan.Parse(outT[k]) - TimeSpan.Parse(inT[k]);
                                TimeSpan duration = span.Duration();
                                TotalTime = TotalTime + duration;
                            }
                        }
                        dateData.totalInTime = TotalTime.ToString();        //total time


                        string myQuery = "select * from in_out where _date='" + forDate.ToString("yyyy-MM-dd HH:mm:ss") + "' and uid='" + obj.uid[i].ToString() + "';";
                        conn.Open();
                        MySqlCommand    myCommand1 = new MySqlCommand(myQuery, conn);
                        MySqlDataReader myRdr1     = myCommand1.ExecuteReader();


                        while (myRdr1.Read())
                        {
                            if (myRdr1.GetFloat("DistanceFromOrigin") > 100.000 || myRdr1.GetInt16("IsDeviceChanged") == 1)
                            {
                                Debug.WriteLine(myRdr1.GetFloat("DistanceFromOrigin").ToString());
                                dateData.Is_Loc_Device_Changed = "Red";
                            }
                            else
                            {
                                dateData.Is_Loc_Device_Changed = "White";
                            }
                        }
                        conn.Close();
                        listDateData.Add(dateData);
                    }
                }

                datewisedata.dateData = listDateData;

                MainData.Add(datewisedata);

                forDate = forDate.AddDays(1);
            }

            return(MainData);
        }
 private void OnGetDatesText(DateData dates, string data)
 {
     Log.Debug("ExampleAlchemyLanguage", "Alchemy Language - Get dates response text: {0}", data);
     Test(dates != null);
     _getDatesTextTested = true;
 }
Exemple #24
0
    /// <summary>
    /// 读取字节流(完整版)
    /// </summary>
    protected override void toReadBytesFull(BytesReadStream stream)
    {
        stream.startReadObj();

        BaseData versionT = stream.readDataFullNotNull();

        if (versionT != null)
        {
            if (versionT is SaveVersionData)
            {
                this.version = (SaveVersionData)versionT;
            }
            else
            {
                this.version = new SaveVersionData();
                if (!(versionT.GetType().IsAssignableFrom(typeof(SaveVersionData))))
                {
                    stream.throwTypeReadError(typeof(SaveVersionData), versionT.GetType());
                }
                this.version.shadowCopy(versionT);
            }
        }
        else
        {
            this.version = null;
        }

        this.serverTime = stream.readLong();

        this.isBlock = stream.readBoolean();

        this.flowStep = stream.readInt();

        this.keepSave = (KeepSaveData)stream.createData(KeepSaveData.dataID);
        this.keepSave.readBytesFull(stream);

        if (stream.readBoolean())
        {
            int clientRandomSeedsLen = stream.readLen();
            if (this.clientRandomSeeds == null || this.clientRandomSeeds.Length != clientRandomSeedsLen)
            {
                this.clientRandomSeeds = new int[clientRandomSeedsLen];
            }
            int[] clientRandomSeedsT = this.clientRandomSeeds;
            for (int clientRandomSeedsI = 0; clientRandomSeedsI < clientRandomSeedsLen; ++clientRandomSeedsI)
            {
                int clientRandomSeedsV;
                clientRandomSeedsV = stream.readInt();

                clientRandomSeedsT[clientRandomSeedsI] = clientRandomSeedsV;
            }
        }
        else
        {
            this.clientRandomSeeds = null;
        }

        this.clientRandomSeedIndex = stream.readInt();

        this.clientOfflineWorkReceiveIndex = stream.readInt();

        if (stream.readBoolean())
        {
            int gmCommandSetLen = stream.readLen();
            if (this.gmCommandSet != null)
            {
                this.gmCommandSet.clear();
                this.gmCommandSet.ensureCapacity(gmCommandSetLen);
            }
            else
            {
                this.gmCommandSet = new SSet <string>();
            }

            SSet <string> gmCommandSetT = this.gmCommandSet;
            for (int gmCommandSetI = gmCommandSetLen - 1; gmCommandSetI >= 0; --gmCommandSetI)
            {
                string gmCommandSetV;
                gmCommandSetV = stream.readUTF();

                gmCommandSetT.add(gmCommandSetV);
            }
        }
        else
        {
            this.gmCommandSet = null;
        }

        this.gmType = stream.readInt();

        this.serverBornCode = stream.readInt();

        this.serverStartTime = stream.readLong();

        int logQueueLen = stream.readLen();

        if (this.logQueue != null)
        {
            this.logQueue.clear();
            this.logQueue.ensureCapacity(logQueueLen);
        }
        else
        {
            this.logQueue = new SQueue <InfoLogData>();
        }

        SQueue <InfoLogData> logQueueT = this.logQueue;

        for (int logQueueI = logQueueLen - 1; logQueueI >= 0; --logQueueI)
        {
            InfoLogData logQueueV;
            BaseData    logQueueVT = stream.readDataFullNotNull();
            if (logQueueVT != null)
            {
                if (logQueueVT is InfoLogData)
                {
                    logQueueV = (InfoLogData)logQueueVT;
                }
                else
                {
                    logQueueV = new InfoLogData();
                    if (!(logQueueVT.GetType().IsAssignableFrom(typeof(InfoLogData))))
                    {
                        stream.throwTypeReadError(typeof(InfoLogData), logQueueVT.GetType());
                    }
                    logQueueV.shadowCopy(logQueueVT);
                }
            }
            else
            {
                logQueueV = null;
            }

            logQueueT.offer(logQueueV);
        }

        this.nextDailyTime = stream.readLong();

        this.createDate = (DateData)stream.createData(DateData.dataID);
        this.createDate.readBytesFull(stream);

        this.clientRandomSeedKey = stream.readInt();

        stream.endReadObj();
    }
Exemple #25
0
    /// <summary>
    /// 复制(深拷贝)
    /// </summary>
    protected override void toCopy(BaseData data)
    {
        if (!(data is SystemPartData))
        {
            return;
        }

        SystemPartData mData = (SystemPartData)data;

        if (mData.version != null)
        {
            this.version = (SaveVersionData)mData.version.clone();
        }
        else
        {
            this.version = null;
            nullObjError("version");
        }

        this.serverTime = mData.serverTime;

        this.isBlock = mData.isBlock;

        this.flowStep = mData.flowStep;

        if (mData.keepSave != null)
        {
            this.keepSave = (KeepSaveData)BytesControl.createData(KeepSaveData.dataID);
            this.keepSave.copy(mData.keepSave);
        }
        else
        {
            this.keepSave = null;
            nullObjError("keepSave");
        }

        if (mData.clientRandomSeeds != null)
        {
            int[] clientRandomSeedsR   = mData.clientRandomSeeds;
            int   clientRandomSeedsLen = clientRandomSeedsR.Length;
            if (this.clientRandomSeeds == null || this.clientRandomSeeds.Length != clientRandomSeedsLen)
            {
                this.clientRandomSeeds = new int[clientRandomSeedsLen];
            }
            BytesControl.arrayCopy(mData.clientRandomSeeds, this.clientRandomSeeds, clientRandomSeedsLen);
        }
        else
        {
            this.clientRandomSeeds = null;
        }

        this.clientRandomSeedIndex = mData.clientRandomSeedIndex;

        this.clientOfflineWorkReceiveIndex = mData.clientOfflineWorkReceiveIndex;

        if (mData.gmCommandSet != null)
        {
            if (this.gmCommandSet != null)
            {
                this.gmCommandSet.clear();
                this.gmCommandSet.ensureCapacity(mData.gmCommandSet.size());
            }
            else
            {
                this.gmCommandSet = new SSet <string>();
            }

            SSet <string> gmCommandSetT = this.gmCommandSet;
            if (!mData.gmCommandSet.isEmpty())
            {
                string[] gmCommandSetVKeys = mData.gmCommandSet.getKeys();
                for (int gmCommandSetVI = gmCommandSetVKeys.Length - 1; gmCommandSetVI >= 0; --gmCommandSetVI)
                {
                    if (gmCommandSetVKeys[gmCommandSetVI] != null)
                    {
                        string gmCommandSetV = gmCommandSetVKeys[gmCommandSetVI];
                        string gmCommandSetU;
                        gmCommandSetU = gmCommandSetV;

                        gmCommandSetT.add(gmCommandSetU);
                    }
                }
            }
        }
        else
        {
            this.gmCommandSet = null;
        }

        this.gmType = mData.gmType;

        this.serverBornCode = mData.serverBornCode;

        this.serverStartTime = mData.serverStartTime;

        if (mData.logQueue != null)
        {
            if (this.logQueue != null)
            {
                this.logQueue.clear();
                this.logQueue.ensureCapacity(mData.logQueue.size());
            }
            else
            {
                this.logQueue = new SQueue <InfoLogData>();
            }

            SQueue <InfoLogData> logQueueT = this.logQueue;
            if (!mData.logQueue.isEmpty())
            {
                InfoLogData[] logQueueVValues = mData.logQueue.getValues();
                int           logQueueVMark   = mData.logQueue.getMark();
                int           logQueueVStart  = mData.logQueue.getStart();
                for (int logQueueVI = 0, logQueueVLen = mData.logQueue.length(); logQueueVI < logQueueVLen; ++logQueueVI)
                {
                    InfoLogData logQueueV = logQueueVValues[(logQueueVI + logQueueVStart) & logQueueVMark];
                    InfoLogData logQueueU;
                    if (logQueueV != null)
                    {
                        logQueueU = (InfoLogData)logQueueV.clone();
                    }
                    else
                    {
                        logQueueU = null;
                        nullObjError("logQueueU");
                    }

                    logQueueT.offer(logQueueU);
                }
            }
        }
        else
        {
            this.logQueue = null;
            nullObjError("logQueue");
        }

        this.nextDailyTime = mData.nextDailyTime;

        if (mData.createDate != null)
        {
            this.createDate = (DateData)BytesControl.createData(DateData.dataID);
            this.createDate.copy(mData.createDate);
        }
        else
        {
            this.createDate = null;
            nullObjError("createDate");
        }

        this.clientRandomSeedKey = mData.clientRandomSeedKey;
    }
Exemple #26
0
 /// <summary>
 /// PlayerData 加载:Save后,如果想使用最新数值,需要调用此方法
 /// </summary>
 public static void LoadDateData()
 {
     DateData = EZSave.Instance.LoadRecord <DateData>(RecordDataType.DateData.ToString());
 }
        public async Task <IActionResult> MaxMinAvgRates(string baseCurrency, string targetCurrency, [FromBody] DateData listDate)
        {
            List <string> listOfDates = listDate.date[listDate.date.Keys.First()];

            ConcurrentBag <string> resultCollection = new ConcurrentBag <string>();

            Parallel.ForEach(listOfDates, date =>
            {
                DateTime dateTime;

                if (!DateTime.TryParse(date, out dateTime))
                {
                    resultCollection.Add(date);
                }
            });

            if (resultCollection.Count > 0)
            {
                ModelState.AddModelError(
                    Strings_lang.DATE_ERROR_KEY,
                    $"{Strings_lang.DATE_FORMAT_INCORRECT_ERROR_MESSAGE} {resultCollection.FirstOrDefault()}"
                    );
                return(BadRequest(ModelState));
            }


            if (listOfDates.Count <= 0)
            {
                ModelState.AddModelError(
                    Strings_lang.DATE_ERROR_KEY,
                    Strings_lang.DATE_LIST_ERROR_MESSAGE
                    );
                return(BadRequest(ModelState));
            }

            ConcurrentBag <ExchangeRate> list = await _historicalExchangeRateService.sendRequestRemoteServer(baseCurrency, targetCurrency, listOfDates);

            if (list.Count > 0)
            {
                var avgMinMax = await _historicalExchangeRateService.getAvgMinMax(list);

                if (avgMinMax.dateMax == null || avgMinMax.dateMin == null)
                {
                    ModelState.AddModelError(
                        Strings_lang.DATE_ERROR_KEY,
                        Strings_lang.DATE_ITEM_ERROR_MESSAGE
                        );
                    return(BadRequest(ModelState));
                }

                var result = await _historicalExchangeRateService.getAvgMinMaxToString(avgMinMax);

                var response = ResponseData.ok(result);

                return(Ok(response));
            }
            else
            {
                ModelState.AddModelError(
                    Strings_lang.RATE_ERROR_KEY,
                    Strings_lang.RATE_CONVERT_ERROR_MESSAGE
                    );
                return(BadRequest(ModelState));
            }
        }
Exemple #28
0
    /// <summary>
    /// 读取字节流(简版)
    /// </summary>
    protected override void toReadBytesSimple(BytesReadStream stream)
    {
        this.version = (SaveVersionData)stream.readDataSimpleNotNull();

        this.serverTime = stream.readLong();

        this.isBlock = stream.readBoolean();

        this.flowStep = stream.readInt();

        this.keepSave = (KeepSaveData)stream.createData(KeepSaveData.dataID);
        this.keepSave.readBytesSimple(stream);

        if (stream.readBoolean())
        {
            int clientRandomSeedsLen = stream.readLen();
            if (this.clientRandomSeeds == null || this.clientRandomSeeds.Length != clientRandomSeedsLen)
            {
                this.clientRandomSeeds = new int[clientRandomSeedsLen];
            }
            int[] clientRandomSeedsT = this.clientRandomSeeds;
            for (int clientRandomSeedsI = 0; clientRandomSeedsI < clientRandomSeedsLen; ++clientRandomSeedsI)
            {
                int clientRandomSeedsV;
                clientRandomSeedsV = stream.readInt();

                clientRandomSeedsT[clientRandomSeedsI] = clientRandomSeedsV;
            }
        }
        else
        {
            this.clientRandomSeeds = null;
        }

        this.clientRandomSeedIndex = stream.readInt();

        this.clientOfflineWorkReceiveIndex = stream.readInt();

        if (stream.readBoolean())
        {
            int gmCommandSetLen = stream.readLen();
            if (this.gmCommandSet != null)
            {
                this.gmCommandSet.clear();
                this.gmCommandSet.ensureCapacity(gmCommandSetLen);
            }
            else
            {
                this.gmCommandSet = new SSet <string>();
            }

            SSet <string> gmCommandSetT = this.gmCommandSet;
            for (int gmCommandSetI = gmCommandSetLen - 1; gmCommandSetI >= 0; --gmCommandSetI)
            {
                string gmCommandSetV;
                gmCommandSetV = stream.readUTF();

                gmCommandSetT.add(gmCommandSetV);
            }
        }
        else
        {
            this.gmCommandSet = null;
        }

        this.gmType = stream.readInt();

        this.serverBornCode = stream.readInt();

        this.serverStartTime = stream.readLong();

        int logQueueLen = stream.readLen();

        if (this.logQueue != null)
        {
            this.logQueue.clear();
            this.logQueue.ensureCapacity(logQueueLen);
        }
        else
        {
            this.logQueue = new SQueue <InfoLogData>();
        }

        SQueue <InfoLogData> logQueueT = this.logQueue;

        for (int logQueueI = logQueueLen - 1; logQueueI >= 0; --logQueueI)
        {
            InfoLogData logQueueV;
            logQueueV = (InfoLogData)stream.readDataSimpleNotNull();

            logQueueT.offer(logQueueV);
        }

        this.nextDailyTime = stream.readLong();

        this.createDate = (DateData)stream.createData(DateData.dataID);
        this.createDate.readBytesSimple(stream);

        this.clientRandomSeedKey = stream.readInt();
    }
        public dynamic GetWorkersTable(string date, int count, string typeCoock, string restaurant)
        {
            var week = weekForDate(date).ToArray();



            var dateWorkers    = new Dictionary <string, WorkerTimeTable[]>();
            var dateWorkersStr = new Dictionary <string, string>();

            var datetime  = DateTime.Parse(date);
            var startDate = datetime.Date.ToString();
            var endDate   = datetime.AddDays(count).Date.ToString();


            startDate = startDate.Split()[0].Replace('.', '-');
            endDate   = endDate.Split()[0].Replace('.', '-');


            var sql =
                "SELECT date_week,workers FROM @typeCoock WHERE restaurant='@restaurant' AND date_week BETWEEN '@startDate' AND '@endDate'";


            var myParams = new Dictionary <string, string>()
            {
                { "typeCoock", typeCoock },
                { "restaurant", restaurant },
                { "startDate", startDate },
                { "endDate", endDate }
            };

            sql = Tests.CreateSQLStr(sql, myParams);

            Console.WriteLine(sql);


            lock (this.cmd)
            {
                cmd.CommandText = sql;
                //cmd.Prepare();
                var reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    dateWorkersStr[reader.GetDate(0).ToString()] =
                        reader.GetString(1);
                }


                Console.WriteLine(dateWorkersStr.Keys.Count);
                Console.WriteLine(" - getted from sql");

                reader.Close();
            }

            Dictionary <string, Dictionary <string, string> > myVar = new Dictionary <string, Dictionary <string, string> >();

            Dictionary <string, DateData> column = new Dictionary <string, DateData>();

            foreach (var val in dateWorkersStr.Keys)
            {
                //Console.WriteLine(val);
                //Console.WriteLine(JsonConvert.DeserializeObject<Dictionary<string,string>>(dateWorkersStr[val]));
                var kv = JsonConvert.DeserializeObject <Dictionary <string, string> >(dateWorkersStr[val]);
                myVar[val] = kv;

                column[val] = new DateData()
                {
                    Workers = kv.Keys.ToArray(), WeekDay = DateTime.Parse(val).Date.DayOfWeek.ToString()
                };
            }

            //Console.WriteLine(DateTime.Parse(date).ToString()+ " - is ref date raw");
            //Console.WriteLine(reformatDate(DateTime.Parse(date).ToString())+ " - is ref date");

            for (int i = 0; i < 7; i++)
            {
                if (!column.ContainsKey(week[i]))
                {
                    column[week[i]] = new DateData()
                    {
                        WeekDay = DateTime.Parse(date).AddDays(i).Date.DayOfWeek.ToString(), Workers = new string[0]
                    };
                }
            }


            Console.WriteLine(column.Keys.Count);
            Console.WriteLine(" - column count");


            return(column);
        }
 private void OnGetDatesText(DateData dates, Dictionary <string, object> customData)
 {
     Log.Debug("ExampleAlchemyLanguage.OnGetDatesText()", "Alchemy Language - Get dates response text: {0}", customData["json"].ToString());
     _getDatesTextTested = true;
 }