Ejemplo n.º 1
0
        public async Task <ActionResult> Edit(int?id)
        {
            try
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                SubUser subUser = await db.SubUsers.FindAsync(id);

                if (subUser == null)
                {
                    return(HttpNotFound());
                }
                TempData["SubUserName"] = subUser.SubUserName;
                TempData["SubUserPin"]  = subUser.SubUserPin;
                TempData["Admin"]       = subUser.Admin;
                return(View(subUser));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                ViewBag.ErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
Ejemplo n.º 2
0
        private async Task DeleteRec(SubUser obj)
        {
            TranslateExtension trn = new TranslateExtension();

            var delete    = trn.GetProviderValueString("ButtonDelete");
            var deleteMsg = trn.GetProviderValueString("DeleteUserRecruiterMessage");
            var ok        = trn.GetProviderValueString("ButtonOk");
            var cancel    = trn.GetProviderValueString("ButtonCancel");
            var res       = await this._dialog.DisplayAlertAsync(delete, deleteMsg, ok, cancel);

            ApiService api = new ApiService();

            if (res == true)
            {
                Dialog.ShowLoading();
                var isDeleted = await api.DeleteCompanyUserAsync(obj.eyrUserCredentialId);

                Dialog.HideLoading();
                if (isDeleted)
                {
                    Dialog.ShowLoading();
                    await LoadData();

                    Dialog.HideLoading();
                }
                else
                {
                    Dialog.ShowErrorAlert("Unable to delete");
                }
            }
        }
Ejemplo n.º 3
0
        public IActionResult SubUserUpdate(int id, string name, string dob)
        {
            try
            {
                var su = new SubUser();
                if (id != 0)
                {
                    su = _data.SubUsers.First(m => m.Id == id);
                }

                var dateArray = dob.Split(".");

                su.UserId      = _um.GetUserId(User);
                su.Name        = name;
                su.DateOfBirth = new DateTime(int.Parse(dateArray[2]), int.Parse(dateArray[1]), int.Parse(dateArray[0]));

                if (id == 0)
                {
                    _data.SubUsers.Add(su);
                }
                else
                {
                    _data.SubUsers.Update(su);
                }

                _data.SaveChanges();
            }
            catch (Exception e)
            {
                return(Json(new { success = false }));
            }

            return(Json(new { success = true }));
        }
Ejemplo n.º 4
0
        private void btnQueryNext_Click(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrEmpty(txtSearch.Text))
            {
                MessageBox.Show("必须输入要搜索的关键字");
                return;
            }
            if (lbMineAccounts == null || lbMineAccounts.Items == null || lbMineAccounts.Items.Count == 0)
            {
                return;
            }

            var query = from SubUser item in lbMineAccounts.Items
                        where item.u.Contains(txtSearch.Text)
                        select item;

            if (query.Count() == 0)
            {
                MessageBox.Show("啥都没找到");
                return;
            }
            SubUser setCurrentItem = null;

            //判断当前选中的位置,根查询出来的来查找,这样能够报证下一个会正确
            if (lbMineAccounts.SelectedItem == null)
            {
                setCurrentItem = query.First();
                //lbMineAccounts.SelectedItem = setCurrentItem;
            }
            else
            {
                SubUser        suser = (SubUser)lbMineAccounts.SelectedItem;
                List <SubUser> list  = query.ToList();
                for (int i = 0, l = list.Count(); i < l; i++)
                {
                    SubUser tempUser = list[i];
                    //找到了
                    if (suser.u.Equals(tempUser.u))
                    {
                        //i后一个元素获取到。
                        if (i + 1 < l)
                        {
                            tempUser       = list[i + 1];
                            setCurrentItem = tempUser;
                            //lbMineAccounts.SelectedItem = tempUser;
                        }
                    }
                }
            }

            lbMineAccounts.SelectedItem = setCurrentItem;
            lbMineAccounts.ScrollIntoView(setCurrentItem);
        }
Ejemplo n.º 5
0
        private void CheckBox_Checked(object sender, RoutedEventArgs e)
        {
            if (lbMineAccounts == null || lbMineAccounts.Items == null || lbMineAccounts.Items.Count == 0)
            {
                return;
            }

            CheckBox cbx = (CheckBox)sender;
            string   tag = cbx.Tag.ToString();

            var query = from SubUser item in lbMineAccounts.Items
                        select item;

            if ("1".Equals(tag))
            {
                //1-30级
                query = from SubUser item in lbMineAccounts.Items
                        where item.l > 1 && item.l < 31
                        select item;
            }
            else if ("2".Equals(tag))
            {
                //31-40
                //1-30级
                query = from SubUser item in lbMineAccounts.Items
                        where item.l > 30 && item.l < 41
                        select item;
            }
            else if ("3".Equals(tag))
            {
                //41-50
                query = from SubUser item in lbMineAccounts.Items
                        where item.l > 40 && item.l < 51
                        select item;
            }
            else if ("4".Equals(tag))
            {
                //50以上
                query = from SubUser item in lbMineAccounts.Items
                        where item.l > 50
                        select item;
            }
            foreach (var item in query)
            {
                SubUser user = (SubUser)item;

                user.IsSelected = cbx.IsChecked.Value;
            }
            lbMineAccounts.Items.Refresh();
        }
Ejemplo n.º 6
0
        public override bool Equals(object obj)
        {
            SubUser sp = obj as SubUser;

            if (sp != null)
            {
                if (sp.alh != alh)
                {
                    return(false);
                }

                if (sp.alm != alm)
                {
                    return(false);
                }

                if (sp.dlh != dlh)
                {
                    return(false);
                }

                if (sp.dlm != dlm)
                {
                    return(false);
                }

                if (sp.iplh != iplh)
                {
                    return(false);
                }

                if (sp.iplm != iplm)
                {
                    return(false);
                }

                if (sp.plh != plh)
                {
                    return(false);
                }

                if (sp.plm != plm)
                {
                    return(false);
                }

                return(true);
            }
            return(false);
        }
Ejemplo n.º 7
0
        public async Task <ActionResult> Create([Bind(Include = "SubUserID,SubUserName,SubUserPin,UserID,Admin,Status")] SubUser subUser)
        {
            subUser.UserID = User.Identity.GetUserId(); //use identity to get the UserID of curruntly logged user

            try
            {
                if (ModelState.IsValid)
                {
                    subUser.Status = true; //Default Status is set to be visible

                    //Check if user exist
                    bool userExist = db.SubUsers.Any(newUser => newUser.SubUserName.Equals(subUser.SubUserName) &&
                                                     newUser.UserID.Equals(subUser.UserID));

                    if (userExist)
                    {
                        ViewBag.Message = "SubUserName " + subUser.SubUserName + " Already Exist";
                        //ModelState.Clear();
                        return(View());
                    }
                    else
                    {
                        //Check for duplicate PINS for subusers related to the same SuperUser
                        bool currentUserPin = db.SubUsers.Any(newSubUserID => newSubUserID.SubUserPin.Equals(subUser.SubUserPin) &&
                                                              newSubUserID.UserID.Equals(subUser.UserID));
                        if (currentUserPin)
                        {
                            ViewBag.Message = "SubUser Pin Already exiiiiiiist"; // "SubUserName " + subUser.SubUserName + " Already Exist";
                                                                                 //ModelState.Clear();
                            return(View());
                        }
                        else
                        {
                            db.SubUsers.Add(subUser);
                            await db.SaveChangesAsync();

                            ViewBag.Message = "Successfully Added New Sub User";
                            return(RedirectToAction("Index"));
                        }
                    }
                }
                return(View(subUser));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                ViewBag.ErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
Ejemplo n.º 8
0
        // GET: SubUsers/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SubUser subUser = await db.SubUsers.FindAsync(id);

            if (subUser == null)
            {
                return(HttpNotFound());
            }
            return(View(subUser));
        }
Ejemplo n.º 9
0
        private void btnHandAdd_Click(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrEmpty(txtHandAddSubAccount.Text))
            {
                MessageBox.Show("必须输入要添加的id跟等级,比如123567:120");
                return;
            }

            List <SubUser> subUsers = new List <SubUser>();
            SubUser        subUser  = new SubUser();

            string[] accsplit = txtHandAddSubAccount.Text.Split(':');
            if (accsplit == null || accsplit.Length < 2)
            {
                MessageBox.Show("等级跟id输入的不对请重新输入,中间的冒号必须是英文的冒号,不能用中文");
                return;
            }
            long testInt = 0;

            if (!long.TryParse(accsplit[0], out testInt))
            {
                MessageBox.Show("ID必须为数字!");
                return;
            }
            if (!long.TryParse(accsplit[1], out testInt))
            {
                MessageBox.Show("等级必须为数字!");
                return;
            }
            subUser.u = accsplit[0];
            subUser.l = int.Parse(accsplit[1]);

            if (lbMineAccounts.Items == null || lbMineAccounts.Items.Count == 0)
            {
                subUsers.Add(subUser);
            }
            else
            {
                var query = from SubUser item in lbMineAccounts.Items
                            select item;
                subUsers = query.ToList();
                subUsers.Add(subUser);
            }
            lbMineAccounts.ItemsSource = null;
            lbMineAccounts.Items.Clear();
            lbMineAccounts.ItemsSource = subUsers;
            lbMineAccounts.Items.Refresh();
        }
Ejemplo n.º 10
0
        public IActionResult SubUserManage(int id)
        {
            var su = new SubUser();

            if (id != 0)
            {
                su = _data.SubUsers.First(m => m.Id == id);
            }
            var vm = new SubUserManageViewModel();

            vm.Id          = su.Id;
            vm.Name        = su.Name;
            vm.DateOfBirth = su.DateOfBirth.ToString("M.d.yyyy");

            return(PartialView("_SubUserManage", vm));
        }
Ejemplo n.º 11
0
        public void Does_translate_from_inherited_propeties()
        {
            var user = new SubUser {
                FirstName = "Demis",
                LastName  = "Bellot",
                Car       = new Car {
                    Name = "BMW X6", Age = 3
                }
            };

            var to = user.ConvertTo <UserFields>();

            Assert.That(to.FirstName, Is.EqualTo(user.FirstName));
            Assert.That(to.LastName, Is.EqualTo(user.LastName));
            Assert.That(to.Car.Name, Is.EqualTo(user.Car.Name));
            Assert.That(to.Car.Age, Is.EqualTo(user.Car.Age));
        }
Ejemplo n.º 12
0
        private async void DeleteRep(SubUser obj)
        {
            TranslateExtension trn = new TranslateExtension();
            var delete             = trn.GetProviderValueString("ButtonDelete");
            var deleteMsg          = trn.GetProviderValueString("DeleteUserRepresentativeMessage");
            var ok     = trn.GetProviderValueString("ButtonOk");
            var cancel = trn.GetProviderValueString("ButtonCancel");
            var res    = await this._dialog.DisplayAlertAsync(delete, deleteMsg, ok, cancel);

            ApiService api = new ApiService();

            if (res == true)
            {
                await api.DeleteCompanyUserAsync(obj.eyrUserCredentialId);

                UpdateRepresentatives();
            }
        }
Ejemplo n.º 13
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            try
            {
                SubUser subUser = await db.SubUsers.FindAsync(id);

                //subUser.Status = false;// set the Sub User to invisible
                db.SubUsers.Remove(subUser);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                ViewBag.ErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
        public IActionResult PostSubUser([FromBody] PostSubUserModel subUser)
        {
            try
            {
                var su = new SubUser()
                {
                    UserId      = subUser.UserId,
                    Name        = subUser.Name,
                    DateOfBirth = subUser.DateOfBirth
                };
                _data.SubUsers.Add(su);
                _data.SaveChanges();

                return(Ok(su.Id));
            }
            catch (Exception)
            {
                return(StatusCode(500));
            }
        }
Ejemplo n.º 15
0
        public async Task <ActionResult> Delete(int?id)
        {
            try
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                SubUser subUser = await db.SubUsers.FindAsync(id);

                if (subUser == null)
                {
                    return(HttpNotFound());
                }
                return(View(subUser));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                ViewBag.ErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
Ejemplo n.º 16
0
        public async Task <ActionResult> editFunction(SubUser subUser)
        {
            if (TempData["SubUserName"] == null || TempData["SubUserPin"] == null || TempData["Admin"] == null)
            {
                ViewBag.Message = "Session Expired..";// Todo Make a pop-up instead
                return(RedirectToAction("index", "Account"));
            }
            try
            {
                bool currentUserPin = TempData["SubUserPin"].Equals(subUser.SubUserPin);

                bool isCurrentAdminStatus = TempData["Admin"].Equals(subUser.Admin);

                bool isCurrentSubUser = TempData["SubUserName"].Equals(subUser.SubUserName);

                if (isCurrentSubUser && currentUserPin && isCurrentAdminStatus)
                {
                    ViewBag.Message = "No Changes";
                    return(View());
                }

                //Check for duplicate PINS for subusers related to the same SuperUser
                bool pinExist = db.SubUsers.Any(newSubUserID => newSubUserID.SubUserPin.Equals(subUser.SubUserPin) &&
                                                newSubUserID.UserID.Equals(subUser.UserID));

                if (isCurrentSubUser)
                {
                    if (pinExist && isCurrentAdminStatus)
                    {
                        ViewBag.Message = "SubUser Pin Already Exiiiiiiist";// Todo Make a pop-up message instead.
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        db.Entry(subUser).State = EntityState.Modified;
                        await db.SaveChangesAsync();

                        return(RedirectToAction("Index"));
                    }
                }

                //Check if user exist
                bool userExist = db.SubUsers.Any(newUser => newUser.SubUserName.Equals(subUser.SubUserName) &&
                                                 newUser.UserID.Equals(subUser.UserID));
                if (userExist)
                {
                    ViewBag.Message = "SubUserName " + subUser.SubUserName + " Already Exist";
                    //ModelState.Clear();
                    return(View());
                    //return RedirectToAction("Index");
                }
                else if (currentUserPin)
                {
                    db.Entry(subUser).State = EntityState.Modified;
                    await db.SaveChangesAsync();

                    return(RedirectToAction("Index"));
                }
                else if (pinExist)// && isCurrentAdminStatus)
                {
                    ViewBag.Message = "SubUser Pin Already Exiiiiiiist";
                    //ModelState.Clear();
                    return(View());
                }
                else
                {
                    db.Entry(subUser).State = EntityState.Modified;
                    await db.SaveChangesAsync();

                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                ViewBag.ErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
Ejemplo n.º 17
0
 private void UserDetails(SubUser obj)
 {
     _nav.NavigateAsync($"{nameof(CompanyUserDetailsPage)}?UserId={obj.eyrUserCredentialId}");
 }
Ejemplo n.º 18
0
        public async Task <ActionResult> Edit([Bind(Include = "SubUserID,SubUserName,SubUserPin,UserID,Admin,Status")] SubUser subUser)
        {
            subUser.UserID = User.Identity.GetUserId();

            //Count number of Admin
            int count = db.SubUsers.Where(numOfAdmin => numOfAdmin.Admin && numOfAdmin.UserID.Equals(subUser.UserID)).Count();

            try
            {
                if (ModelState.IsValid)
                {
                    bool isCurrentAdminStatus = TempData["Admin"].Equals(subUser.Admin);

                    if (subUser.Admin == true)
                    {
                        try
                        {
                            await editFunction(subUser);

                            return(RedirectToAction("index"));
                        }
                        catch (Exception ex)
                        {
                            _log.Error(ex);
                        }
                    }
                    else if (count > 1)
                    {
                        try
                        {
                            await editFunction(subUser);

                            return(RedirectToAction("index"));
                        }
                        catch (Exception ex)
                        {
                            _log.Error(ex);
                        }
                    }
                    else if (isCurrentAdminStatus) //Review this   ????
                    {
                        try
                        {
                            await editFunction(subUser);

                            return(RedirectToAction("index"));
                        }
                        catch (Exception ex)
                        {
                            _log.Error(ex);
                        }
                    }
                    else
                    {
                        ViewBag.Message = "At least one Admin is required";//TODO make a pop-up instead
                        return(RedirectToAction("Index"));
                    }
                }
                return(View(subUser));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                ViewBag.ErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
Ejemplo n.º 19
0
 public Task <Response <SubUser> > UpdateSubUser(SubUser command)
 {
     return(_context.UpdateSubUser(command.Id, command));
 }
Ejemplo n.º 20
0
        public void Does_translate_from_inherited_propeties()
        {
            var user = new SubUser
            {
                FirstName = "Demis",
                LastName = "Bellot",
                Car = new Car { Name = "BMW X6", Age = 3 }
            };

            var to = user.ConvertTo<UserFields>();
            Assert.That(to.FirstName, Is.EqualTo(user.FirstName));
            Assert.That(to.LastName, Is.EqualTo(user.LastName));
            Assert.That(to.Car.Name, Is.EqualTo(user.Car.Name));
            Assert.That(to.Car.Age, Is.EqualTo(user.Car.Age));
        }