Ejemplo n.º 1
0
        private void simpleButton3_Click(object sender, EventArgs e)
        {
            //判断数组和是否有选中区域
            if (this.selectButtons.Count == 0)
            {
                return;
            }

            List <StructRealTime> changeComs = new List <StructRealTime>();

            //Dictionary<int, StructRealTime> changeComDict = new Dictionary<int, StructRealTime>();//已经改变的字典
            //改变管理工具电脑数组
            foreach (AreaComView button in selectButtons)
            {
                int btnIndex = int.Parse((string)button.Tag);
                StructRealTime.Builder com = new StructRealTime.Builder(this.areaManage.currentComs[btnIndex]);
                com.Area = "0";
                changeComs.Add(com.Build());
                //移除按钮
                this.currentComsPanel.Controls.Remove(button);
            }
            //更新电脑数据
            this.areaManage.UpdateComputersCode(changeComs);
            //重新赋值
            int index = (int)this.selectArea.Tag;

            this.areaManage.GetOtherComputers(this.areas[index].Code.ToString());

            //删除选中的电脑
            this.selectButtons.Clear();
            //刷新设备列表
            RefreshComputersList();
        }
Ejemplo n.º 2
0
        private void UserDownComputer(IList <string> pars)
        {
            string comid = pars[0];
            int    index = GetComputerIndex(int.Parse(comid));
            //获取需要修改的电脑数据
            StructRealTime com = this.computers[index];

            //生成新StructRealTime
            StructRealTime.Builder newCom = new StructRealTime.Builder(com);
            newCom.Status     = ((int)COMPUTERSTATUS.空闲).ToString();
            newCom.Name       = "";
            newCom.Cardnumber = "";
            newCom.Usertype   = "";
            newCom.Billing    = "";
            newCom.Verify     = "";
            //----// 余额,余时。开始时间。已用时。结束时间
            newCom.Balance    = "";
            newCom.Starttime  = "";
            newCom.Usedtime   = "";
            newCom.Remaintime = "";
            newCom.Stoptime   = "";

            //修改数组字典数据
            this.computers[index] = newCom.Build();
            //更新首页数据
            UpdateHomePage(index, newCom.Build());
            //刷新首页状态数量
            UpdateStatusNumEvent();
        }
Ejemplo n.º 3
0
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            //1.获取设备列表所有选中的行
            int[] rows = this.gridView1.GetSelectedRows();
            //2.判断数组和是否有选中区域
            if (rows.Count() == 0 || selectArea == null)
            {
                return;
            }

            List <StructRealTime> changeComs = new List <StructRealTime>();
            int index = (int)this.selectArea.Tag;

            //3.改变管理工具电脑数组
            foreach (int row in rows)
            {
                StructRealTime.Builder com = new StructRealTime.Builder(this.areaManage.otherComs[row]);
                com.Area = this.areas[index].Code.ToString();
                changeComs.Add(com.Build());
            }
            this.areaManage.UpdateComputersCode(changeComs);
            //重新赋值
            this.areaManage.GetOtherComputers(this.areas[index].Code.ToString());
            //5.删除选中行
            this.gridView1.DeleteSelectedRows();

            //刷新电脑区域列表
            RefreshAreaComsPanel();
        }
Ejemplo n.º 4
0
        private void UpdateUserStatus(IList <string> pars)
        {
            string comid = pars[0];
            //获取需要修改的电脑数据
            int            index = GetComputerIndex(int.Parse(comid));
            StructRealTime com   = this.computers[index];

            //生成新StructRealTime
            StructRealTime.Builder newCom = new StructRealTime.Builder(com);

            //----// 余额,开始时间。已用时。结束时间
            newCom.Balance   = pars[1];
            newCom.Starttime = pars[2];
            newCom.Usedtime  = pars[3];
            newCom.Stoptime  = pars[4];

            //计算剩余时间
            DateTime start          = DateTime.Parse(newCom.Starttime);
            DateTime end            = DateTime.Parse(newCom.Stoptime);
            TimeSpan ts             = end.Subtract(start);
            int      dateDiffSecond = ts.Days * 24 * 60 + ts.Hours * 60 + ts.Minutes;

            newCom.Remaintime = (dateDiffSecond - int.Parse(newCom.Usedtime)) + "";

            //修改数组字典数据
            this.computers[index] = newCom.Build();
            //更新首页数据
            UpdateHomePage(index, newCom.Build());
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 更新首页的电脑区域
        /// </summary>
        /// <param name="areaId"></param>
        /// <param name="setting"></param>
        public void UpateHomePageComputerArea(int areaId, AREA_SETTING setting)
        {
            if (setting == AREA_SETTING.ADD)
            {
                HomePageMessageManage.UpdateHomePageComputerArea(null, setting);
                return;
            }
            var returnChanges = this.allComputers.Where(com => com.Area.Equals(areaId.ToString())).ToList <StructRealTime>();

            if (setting == AREA_SETTING.DELETE)
            {
                //修改所有数组和改变过的字典
                foreach (StructRealTime changeCom in returnChanges)
                {
                    int index = this.allComputers.FindIndex(com => com.Computerid == changeCom.Computerid);
                    StructRealTime.Builder newCom = new StructRealTime.Builder(this.allComputers[index]);
                    newCom.Area = "0";
                    this.allComputers[index] = newCom.Build();
                }

                var changeds = this.changeComDict.Values.Where(com => com.Area.Equals(areaId.ToString())).ToList <StructRealTime>();
                foreach (StructRealTime changed in changeds)
                {
                    StructRealTime.Builder newChanged = new StructRealTime.Builder(changed);
                    newChanged.Area = "0";
                    this.changeComDict[newChanged.Computerid] = newChanged.Build();
                }
            }
            HomePageMessageManage.UpdateHomePageComputerArea(returnChanges, setting);
        }
Ejemplo n.º 6
0
        private void UpdateUserVerifyStatus(IList <string> pars)
        {
            string comid = pars[0];
            //获取需要修改的电脑数据
            int            index = GetComputerIndex(int.Parse(comid));
            StructRealTime com   = this.computers[index];

            //生成新StructRealTime
            StructRealTime.Builder newCom = new StructRealTime.Builder(com);
            newCom.Verify = "1";
            //修改数组字典数据
            this.computers[index] = newCom.Build();
            //更新首页数据
            UpdateHomePage(index, newCom.Build());
        }
Ejemplo n.º 7
0
        private void UserUpComputer(IList <string> pars)
        {
            string comid = pars[0];
            //获取需要修改的电脑数据
            int            index = GetComputerIndex(int.Parse(comid));
            StructRealTime com   = this.computers[index];

            //生成新StructRealTime
            StructRealTime.Builder newCom = new StructRealTime.Builder(com);
            newCom.Status     = ((int)COMPUTERSTATUS.在线).ToString();
            newCom.Name       = pars[1];
            newCom.Cardnumber = pars[2];
            newCom.Usertype   = pars[3];
            newCom.Billing    = pars[4];
            newCom.Verify     = pars[5];

            //----// 余额,余时。开始时间。已用时。结束时间
            newCom.Balance   = pars[6];
            newCom.Starttime = pars[7];
            newCom.Usedtime  = pars[8];
            newCom.Stoptime  = pars[9];
            //计算剩余时间
            DateTime start          = DateTime.Parse(newCom.Starttime);
            DateTime end            = DateTime.Parse(newCom.Stoptime);
            TimeSpan ts             = end.Subtract(start);
            int      dateDiffSecond = ts.Days * 24 * 60 + ts.Hours * 60 + ts.Minutes;

            newCom.Remaintime = (dateDiffSecond - int.Parse(newCom.Usedtime)) + "";

            //修改数组字典数据
            this.computers[index] = newCom.Build();
            //this.computerDict[int.Parse(comid)] = newCom.Build();
            //更新首页数据
            UpdateHomePage(index, newCom.Build());
            //刷新首页状态数量
            UpdateStatusNumEvent();
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 更新电脑区域信息
        /// </summary>
        /// <param name="changes">需要改变的电脑</param>
        /// <param name="setting">设置的类型</param>
        public static void UpdateHomePageComputerArea(List <StructRealTime> changes, AREA_SETTING setting)
        {
            if (Manage().RefreshAreaComBox != null)
            {
                Manage().RefreshAreaComBox();
            }
            if (setting == AREA_SETTING.ADD)
            {
                return;
            }

            //先不判断是否有过滤
            foreach (StructRealTime change in changes)
            {
                StructRealTime ori   = Manage().computers.Where(com => com.Computerid == change.Computerid).First();
                int            index = Manage().computers.IndexOf(ori);
                switch (setting)
                {
                //删除;将Area 设为-1,防止之后添加的code与其相同。将自动归入其下
                case AREA_SETTING.DELETE:
                {
                    StructRealTime.Builder newCom = new StructRealTime.Builder(ori);
                    newCom.Area = "0";
                    Manage().computers[index] = newCom.Build();
                    if (Manage().UpdateComputerAreaEvent != null && Manage().s_areaId < 0)
                    {
                        Manage().UpdateComputerAreaEvent(newCom.Build());
                    }
                }

                break;

                //更改名字。不变原数据只做刷新界面
                case AREA_SETTING.UPDATE:
                {
                    if (Manage().UpdateComputerAreaEvent != null)
                    {
                        Manage().UpdateComputerAreaEvent(ori);
                    }
                }
                break;

                //点击完保存
                case AREA_SETTING.NONE:
                {
                    StructRealTime.Builder newCom = new StructRealTime.Builder(ori);
                    newCom.Area = change.Area;
                    Manage().computers[index] = newCom.Build();
                    if (Manage().UpdateComputerAreaEvent != null && Manage().s_areaId < 0)
                    {
                        Manage().UpdateComputerAreaEvent(newCom.Build());
                    }
                }
                break;

                default:
                    break;
                }
            }


            //电脑视图
            if (Manage().UpdateAreaEvent != null)
            {
                Manage().UpdateAreaEvent();
                if (Manage().s_areaId >= 0)
                {
                    //需要更新一下
                    GetFilterComputers(Manage().s_status, Manage().s_areaId, Manage().s_key);
                }
            }
            //列表视图(直接过滤一遍)
            else if (Manage().s_areaId >= 0 && setting != AREA_SETTING.UPDATE)
            {
                GetFilterComputers(Manage().s_status, Manage().s_areaId, Manage().s_key);
            }
        }