Example #1
0
        public static bool ModifyCompanyUser(CompanyUser model)
        {
            string sql = string.Format(@"update {0} set [Name]=@Name,[Mobile]=@Mobile,[Email]=@Email,[WeChatOpenId]=@WeChatOpenId,[WeChatNickName]=@WeChatNickName,[WeChatHeadUrl]=@WeChatHeadUrl,[IsBindWeChat]=@IsBindWeChat,[CompanyId]=@CompanyId,[CompanyName]=@CompanyName,[DepartId]=@DepartId,[ModifyDate]=getdate(),[IsDeleted]=@IsDeleted,[Password]=@Password,[Ip]=@Ip,[ModifyBy]=@ModifyBy,[SocialNo]=@SocialNo,[CardNo]=@CardNo,[CardFront]=@CardFront,[CardFontBehind]=@CardFontBehind,[Sex]=@Sex,[Nation]=@Nation,[Political]=@Political,[Education]=@Education,[EducationPhoto]=@EducationPhoto,[HomeAddress]=@HomeAddress,[HomeAddressType]=@HomeAddressType,[Address]=@Address,[EnterDate]=@EnterDate,[UsedName]=@UsedName
            where Id=@Id", TableName);

            return(DBAccess.ExecuteSqlWithEntity(sql, model));
        }
        public async Task <IActionResult> Activate(string email, int userId)
        {
            var invitations = await db.CompanyInvitations
                              .Where(x => x.Email == email && x.Status == InvitationStatus.Accepted)
                              .ToArrayAsync();

            var madeAnActivation = false;

            foreach (var invitation in invitations)
            {
                var companyUser = new CompanyUser
                {
                    CompanyId  = invitation.CompanyId,
                    UserId     = userId,
                    IsFavorite = true
                };
                db.Add(companyUser);
                db.Remove(invitation);

                await db.SaveChangesAsync();

                madeAnActivation = true;
            }

            return(Ok(madeAnActivation));
        }
Example #3
0
        async Task <ServiceResponse <List <GetCompanyPostAdminDto> > > ICompanyPostService.CreateCompanyPost(CreateCompanyPostDto companyPostDto)
        {
            ServiceResponse <List <GetCompanyPostAdminDto> > response = new ServiceResponse <List <GetCompanyPostAdminDto> >();
            Company companyOfPost = await _context.Companies.FirstOrDefaultAsync(a => a.companyId == companyPostDto.companyId);

            CompanyUser companyUserOfPost = await _context.CompanyUsers.FirstOrDefaultAsync(a => a.companyUserId == companyPostDto.companyUserId);

            if (companyOfPost == null)
            {
                response.Success = false;
                response.Message = "The company for this post does not exist";
                return(response);
            }
            if (companyUserOfPost == null)
            {
                response.Success = false;
                response.Message = "The poster of the post does not exist";
                return(response);
            }


            string      finalString = new IDGenerator.IDGenerator().generate();
            string      lastUpdated = DateTime.Now.ToString();
            CompanyPost newPost     = new CompanyPost(finalString, companyPostDto.companyId, companyPostDto.companyUserId, companyOfPost.companyName, companyPostDto.postTitle, companyPostDto.postSubTitle, companyPostDto.postDescription, companyPostDto.videoUrl, companyPostDto.links, lastUpdated, companyPostDto.approvedBy, companyPostDto.validTill, true);
            await _context.CompanyPosts.AddAsync(newPost);

            await _context.SaveChangesAsync();

            List <GetCompanyPostAdminDto> postList = await _context.CompanyPosts.Select(a => new GetCompanyPostAdminDto(a.companyPostId, a.companyUserId, a.companyId, a.companyName, a.postTitle, a.postSubTitle, a.postDescription, a.videoUrl, a.links, a.lastUpdated, a.approvedBy, a.validTill, a.isActive)).ToListAsync();

            response.Data = postList;
            return(response);
        }
Example #4
0
        public SignUpViewModel()
        {
            SignUpCommand      = new Command(async() => await SignUp());
            VerifyTokenCommand = new Command(async() => await VerifyToken());

            CompanyUser = new CompanyUser();
        }
        async Task OnRowInserting(IDictionary <string, object> newValue)
        {
            if (newValue != null && newValue.Count > 0)
            {
                Dictionary <string, string> dic = CreateStringDic(newValue);

                var pUserId = dic.GetValueByKey(nameof(CompanyUser.UserId), "");

                Status = $"Thêm tài khoản {pUserId}";

                StateHasChanged();


                foreach (var item in Users)
                {
                    if (item.UserId == pUserId)
                    {
                        AlertService.Alert($"Tài khoản {pUserId} đã tồn tại");
                        return;
                    }
                }

                await CompanyUser.RegisterANewUserAsync(TaxId, dic);

                await SearchAsync();
            }
        }
        public ActionResult Save(CompanyUserVm model)
        {
            CompanyUser company = new CompanyUser();

            if (model.ImageFile != null)
            {
                string imageName    = System.IO.Path.GetFileName(model.ImageFile.FileName);
                string physicalPath = Server.MapPath("~/Images/Upload/" + imageName);
                model.ImageFile.SaveAs(physicalPath);

                model.ProfilePicture   = imageName;
                company.ProfilePicture = model.ProfilePicture;
                Session["logo"]        = company.ProfilePicture;
            }

            company.Id      = model.Id;
            company.Name    = model.Name;
            company.Email   = model.Email;
            company.Address = model.Address;
            company.Phone   = model.Phone;

            if (companyInfoManager.SaveOrUpdate(company))
            {
                return(RedirectToAction("Index", "CompanyInfo"));
            }

            else
            {
                return(RedirectToAction("Index", "CompanyInfo"));
            }
        }
Example #7
0
        private bool LoadTemplateModel(int companyid, CompanyUser user, MassEmail em, EmailTemplateViewModel outtemplate)
        {
            try
            {
                var        temp_enum  = Enum.Parse <EmailTemplateType>(em.TemplateName);
                MemberInfo memberInfo = temp_enum.GetType().GetMember(temp_enum.ToString())
                                        .FirstOrDefault();
                if (memberInfo == null)
                {
                    return(false);
                }
                var loader_type = memberInfo.CustomAttributes.FirstOrDefault(at => at.AttributeType.Equals(typeof(TemplateLoaderAttribute)));
                if (loader_type == null)
                {
                    return(false);
                }
                EMailTemplateLoader loader = System.Activator.CreateInstance(loader_type.ConstructorArguments[0].Value as Type, _mailrepo, companyid) as EMailTemplateLoader;
                return(loader.LoadModel(em, outtemplate, user));
                // (loader_type. as TemplateLoaderAttribute).LoaderType
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "LoadTemplateModel error");
                return(false);
            }

            // var u
        }
Example #8
0
        private async Task <EmailProtoType> CreateEmail(int companyid, CompanyUser user, MassEmail em)
        {
            EmailProtoType res = new EmailProtoType();

            try
            {
                var model = await CreateEmailModel(companyid, user, em);

                res.JustAttachment = model.JustAttachment;
                if (!res.JustAttachment)
                {
                    string viewname = $"/Views/MassEmail/{em.TemplateName}_Template.cshtml";
                    res.Message = await _razorViewToStringRenderer.RenderViewToStringAsync(viewname, model);
                }
                model.Attachments.ForEach(a => res.Attachments.Add(a));
                if (string.IsNullOrEmpty(model.Subject))
                {
                    res.Subject = string.IsNullOrEmpty(em.Subject) ? "Info" : em.Subject;
                }
                else
                {
                    res.Subject = model.Subject;
                }
                // var user = _userManager.Users.SingleOrDefault(u => u.Id == userid);
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "CreateEmail error");
                return(null);
            }
            return(res);
        }
        async Task <ServiceResponse <List <CompanyUserDto> > > ICompanyUserService.CreateCompanyUser(CreateCompanyUserDto companyUserDto)
        {
            ServiceResponse <List <CompanyUserDto> > response = new ServiceResponse <List <CompanyUserDto> >();
            Company company = await _context.Companies.FirstOrDefaultAsync(a => a.companyId == companyUserDto.companyId);

            CompanyUser user = await _context.CompanyUsers.FirstOrDefaultAsync(a => a.email == companyUserDto.email);

            if (user != null)
            {
                response.Success = false;
                response.Message = "This email already has an account";
                return(response);
            }

            if (company == null)
            {
                response.Success = false;
                response.Message = "The company entered does not exist";
                return(response);
            }

            string      finalString  = new IDGenerator.IDGenerator().generate();
            String      lastLoggedIn = DateTime.Now.ToString();
            CompanyUser newUser      = new CompanyUser(finalString, company.companyName, companyUserDto.companyId, companyUserDto.email, lastLoggedIn, true);
            await _context.CompanyUsers.AddAsync(newUser);

            await _context.SaveChangesAsync();

            List <CompanyUserDto> newList = await _context.CompanyUsers.Select(a => new CompanyUserDto(a.companyUserId, a.companyId, a.companyName, a.email, a.lastLoggedIn, a.isActive)).ToListAsync();

            response.Data = newList;
            return(response);
        }
Example #10
0
        public async Task <IActionResult> Edit(int id, [Bind("FullName,Username,Password,CompanyId,Id")] CompanyUser companyUser)
        {
            if (!_sessionService.IsAuthenticated())
            {
                return(RedirectToAction("Register", "Company"));
            }
            if (id != companyUser.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    companyUser.CompanyId = _sessionService.User().CompanyId;
                    _context.Update(companyUser);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!CompanyUserExists(companyUser.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["CompanyId"] = new SelectList(_context.Companies, "Id", "Email", companyUser.CompanyId);
            return(View(companyUser));
        }
        async Task <ServiceResponse <List <GetCompanyPostRequestDto> > > ICompanyPostRequestService.CreateCompanyPostRequest(CreateCompanyPostRequestDto toCreate)
        {
            ServiceResponse <List <GetCompanyPostRequestDto> > response = new ServiceResponse <List <GetCompanyPostRequestDto> >();
            Company comp = await _context.Companies.FirstOrDefaultAsync(a => a.companyId == toCreate.companyId);

            CompanyUser user = await _context.CompanyUsers.FirstOrDefaultAsync(a => a.companyUserId == toCreate.companyUserId);

            if (comp == null)
            {
                response.Success = false;
                response.Message = "The company approving the request does not exist";
                return(response);
            }
            if (user == null)
            {
                response.Success = false;
                response.Message = "The company user creating this does not exist";
                return(response);
            }


            string             finalString = new IDGenerator.IDGenerator().generate();
            string             lastUpdated = new DateTime().ToString();
            CompanyPostRequest req         = new CompanyPostRequest(finalString, toCreate.companyId, toCreate.companyUserId, comp.companyName, toCreate.postTitle,
                                                                    toCreate.postSubTitle, toCreate.postDescription, toCreate.videoUrl, toCreate.links, toCreate.validTill, "pending", null);

            _context.CompanyPostRequests.Add(req);
            await _context.SaveChangesAsync();

            List <GetCompanyPostRequestDto> data = await _context.CompanyPostRequests.Select(a => new GetCompanyPostRequestDto(a)).ToListAsync();

            response.Data = data;
            return(response);
        }
Example #12
0
        public async Task <IActionResult> Edit(Guid id, [Bind("CompanyID,ApplicationUserID")] CompanyUser companyUser)
        {
            if (id != companyUser.CompanyID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(companyUser);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!CompanyUserExists(companyUser.CompanyID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["ApplicationUserID"] = new SelectList(_context.ApplicationUser, "Id", "Id", companyUser.ApplicationUserID);
            ViewData["CompanyID"]         = new SelectList(_context.Company, "CompanyID", "Name", companyUser.CompanyID);
            return(View(companyUser));
        }
Example #13
0
        private void UpdateCompaniesUsers(ApplicationUser user, OJewelryDB db, List <CompanyAuthorizedUser> Companies)
        {
            /* Add companies for this user */
            List <CompanyUser> addComps = new List <CompanyUser>();
            List <CompanyUser> delComps = new List <CompanyUser>();
            {
                // add bIncluded users who are not in in company
                foreach (CompanyAuthorizedUser cau in Companies.Where(c => c.bIncluded == true))
                {
                    CompanyUser cu = new CompanyUser()
                    {
                        CompanyId = cau.CompanyId,
                        UserId    = user.Id
                    };
                    if (db.CompaniesUsers.Where(x => x.CompanyId == cu.CompanyId && x.UserId == cu.UserId).Count() == 0)
                    {
                        addComps.Add(cu);
                    }
                }

                db.CompaniesUsers.AddRange(addComps);
                // remove !bIncluded users who are in company
                foreach (CompanyAuthorizedUser cau in Companies.Where(c => c.bIncluded == false))
                {
                    CompanyUser cu = db.CompaniesUsers.Where(x => x.CompanyId == cau.CompanyId && x.UserId == user.Id).FirstOrDefault();
                    if (cu != null)
                    {
                        delComps.Add(cu);
                    }
                }
                db.CompaniesUsers.RemoveRange(delComps);
            }
        }
Example #14
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string CurrentUserId = HttpContext.Current.User.Identity.GetUserId();
            var    manager       = Context.GetOwinContext().GetUserManager <CompanyUserManager>();

            user = manager.FindById(CurrentUserId);
        }
Example #15
0
        protected void InitData()
        {
            CompanyUser InitmodelUser = new CompanyUser();

            InitmodelUser = EyouSoft.BLL.CompanyStructure.CompanyUser.CreateInstance().GetModel(userid);
            if (InitmodelUser != null)
            {
                txt_UserName.Value   = InitmodelUser.UserName;
                txt_MQNickname.Value = InitmodelUser.MqNickName;
                txt_Post.Value       = InitmodelUser.Job;
                txt_MQNickname.Value = InitmodelUser.MqNickName;

                #region 个人会员联系信息
                txt_RealName.Value    = InitmodelUser.ContactInfo.ContactName;
                dropSex.SelectedValue = ((int)InitmodelUser.ContactInfo.ContactSex).ToString();
                txt_Email.Value       = InitmodelUser.ContactInfo.Email;
                txt_Fax.Value         = InitmodelUser.ContactInfo.Fax;
                txt_MQ.Value          = InitmodelUser.ContactInfo.MQ;
                txt_MSN.Value         = InitmodelUser.ContactInfo.MSN;
                txt_QQ.Value          = InitmodelUser.ContactInfo.QQ;
                txt_tel.Value         = InitmodelUser.ContactInfo.Tel;
                txt_Mobile.Value      = InitmodelUser.ContactInfo.Mobile;
                #endregion

                GetlineByCompanyId(InitmodelUser.Area);
                dropDepartment.SelectedValue  = InitmodelUser.DepartId;
                dropPermissions.SelectedValue = InitmodelUser.RoleID;
                txt_LoginTime.Text            = InitmodelUser.LastLoginTime.ToString();
                txt_LastLogin.Text            = InitmodelUser.LastLoginIp;
                txt_RegiserTime.Text          = InitmodelUser.JoinTime.ToShortDateString();
                IsAdmin.Text = InitmodelUser.IsAdmin == true ? "是" : "否";
            }
        }
        async Task <ServiceResponse <CompanyUserSuccessDto> > IAccountService.LoginCompanyOtp(LoginCompanyOtpDto loginDto)
        {
            ServiceResponse <CompanyUserSuccessDto> response = new ServiceResponse <CompanyUserSuccessDto>();

            CompanyUserOtp otp = await _context.CompanyUserOtps.FirstOrDefaultAsync(a => a.email == loginDto.email);

            if (otp == null)
            {
                response.Success = false;
                response.Message = "Something went wrong, the email sent does not exist";
            }

            if (loginDto.otp == otp.otp)
            {
                CompanyUser user = await _context.CompanyUsers.FirstOrDefaultAsync(a => a.email == loginDto.email);

                response.Data = new CompanyUserSuccessDto(user.companyUserId, user.companyId, user.companyName, user.email);
            }
            else if (otp.isExpired || DateTime.Now.Subtract(DateTime.Parse(otp.logInTime)).TotalMinutes > 30)
            {
                otp.isExpired = true;
                _context.CompanyUserOtps.Update(otp);
                response.Success = false;
                response.Message = "The OTP entered has expired";
            }
            else
            {
                otp.otpAttemptCount++;
                _context.CompanyUserOtps.Update(otp);
                response.Success = false;
                response.Message = "Error wrong OTP entered" + otp.otp;
            }

            return(response);
        }
Example #17
0
        public CompanyUser GetSingle(Int32 Id)
        {
            CompanyUser obj = new CompanyUser();

            try
            {
                string     query = "select * from company_users where ID = " + Id + "";
                SqlCommand cmd   = new SqlCommand(query, mySQLDBConnect.connection);
                mySQLDBConnect.OpenConnection();
                DataTable      dt = new DataTable();
                SqlDataAdapter dA = new SqlDataAdapter(cmd);
                dA.Fill(dt); dA.Dispose();
                obj = (from x in dt.AsEnumerable()
                       select new CompanyUser
                {
                    Id = x.Field <Int32>("id"),
                    CompanyId = x.Field <Int32>("company_id"),
                    UserId = x.Field <Int32>("user_id"),
                    UserRoleId = x.Field <Int32>("user_role_id"),
                    CreatedBy = x.Field <Int32>("created_by"),
                    CreatedDate = x.Field <DateTime>("created_date"),
                    UpdatedBy = x.Field <Int32?>("updated_by") == null ? 0 : x.Field <Int32>("updated_by"),
                    UpdatedDate = x.Field <DateTime?>("updated_date"),
                    Status = x.Field <Int32>("status"),
                }).ToList().FirstOrDefault();
                mySQLDBConnect.CloseConnection();
            }
            catch (Exception ex)
            {
                Console.Write(ex.ToString());
            }
            return(obj);
        }
Example #18
0
        public async Task <bool> SendMassEmailToUser(int companyid, CompanyUser user, MassEmail em)
        {
            try
            {
                //to do AK send parents email

                EmailProtoType proto = await CreateEmail(companyid, user, em);

                if (user.IsChild())
                {
                    var email = _context.Users.Where(x => x.Id == user.ParentUserId).FirstOrDefault();
                    if (email.ConfirmedByAdmin)
                    {
                        EmailValidCheck(email.Email);
                        await _mailservice.SendEmailAsync(email.Email, proto.Subject, proto.Message, companyid);
                    }
                }
                else
                {
                    var email = _context.Users.Where(x => x.Id == user.Id).FirstOrDefault();
                    if (email.ConfirmedByAdmin)
                    {
                        EmailValidCheck(email.Email);
                        await _mailservice.SendEmailAsync(email.Email, proto.Subject, proto.Message, companyid, proto.Attachments);
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "SendMassEmailToUser error");
                return(false);
            }
            return(true);
        }
        /// <summary>
        /// Delete User Action Activity Log
        /// </summary>
        /// <param name=></param>
        /// <returns>bool</returns>
        public async Task <bool> DeleteCompanyUser(int CompanyUserId)
        {
            #region Declare a return type with initial value.
            bool isCompanyUserDeleted = default(bool);
            #endregion
            try
            {
                if (CompanyUserId > default(int))
                {
                    #region Vars
                    CompanyUser CompanyUser = null;
                    #endregion
                    #region Get CompanyUser by id
                    CompanyUser = await UnitOfWork.CompanyUserRepository.GetById(CompanyUserId);

                    #endregion
                    #region check if object is not null
                    if (CompanyUser != null)
                    {
                        CompanyUser.IsDeleted = (byte)DeleteStatusEnum.Deleted;
                        #region Apply the changes to the database
                        UnitOfWork.CompanyUserRepository.Update(CompanyUser);
                        isCompanyUserDeleted = await UnitOfWork.Commit() > default(int);

                        #endregion
                    }
                    #endregion
                }
            }
            catch (Exception exception)
            {
            }
            return(isCompanyUserDeleted);
        }
Example #20
0
        public CompanyUser Create(CompanyUser compUser)
        {
            if (compUser.Id < 1)
            {
                compUser.Id = 0;

                compUser.Active    = true;
                compUser.UpdatedAt = DateTime.Now;

                context.CompanyUsers.Add(compUser);
                return(compUser);
            }
            else
            {
                var dbItem = context.CompanyUsers
                             .FirstOrDefault(x => x.Id == compUser.Id);

                if (dbItem != null)
                {
                    dbItem.CompanyId = compUser.CompanyId;
                    dbItem.UserId    = compUser.UserId;
                    dbItem.RolesCSV  = compUser.RolesCSV;

                    dbItem.UpdatedAt = DateTime.Now;
                }
                return(dbItem);
            }
        }
Example #21
0
 public CompanyUserReturnDTO MappingCompanyUserToCompanyUserReturnDTO(CompanyUser CompanyUser)
 {
     #region Declare a return type with initial value.
     CompanyUserReturnDTO CompanyUserReturnDTO = null;
     #endregion
     try
     {
         if (CompanyUser != null)
         {
             CompanyUserReturnDTO = new CompanyUserReturnDTO
             {
                 CompanyInformationId = CompanyUser.CompanyInformationId,
                 CompanyUserId        = CompanyUser.CompanyUserId,
                 CompanyUserTypeId    = CompanyUser.CompanyUserTypeId,
                 Email              = CompanyUser.Email,
                 FirstName          = CompanyUser.FirstName,
                 IsAcceptInvitation = CompanyUser.IsAcceptInvitation,
                 IsActive           = CompanyUser.IsActive,
                 IsCanceled         = CompanyUser.IsCanceled,
                 JobTitile          = CompanyUser.JobTitile,
                 LastName           = CompanyUser.LastName
             };
         }
     }
     catch (Exception exception)
     { }
     return(CompanyUserReturnDTO);
 }
Example #22
0
        /// <summary>
        /// Mapping user Action Actitvity Log
        /// </summary>
        /// <param name=></ param >
        /// <returns>Task<CompanyUser></returns>
        public CompanyUser MappingCompanyUserAddDTOToCompanyUser(CompanyUserAddDTO CompanyUserAddDTO)
        {
            #region Declare a return type with initial value.
            CompanyUser CompanyUser = null;
            #endregion
            try
            {
                CompanyUser = new CompanyUser
                {
                    CompanyInformationId = CompanyUserAddDTO.CompanyInformationId,
                    CompanyUserTypeId    = CompanyUserAddDTO.CompanyUserTypeId,
                    Email              = CompanyUserAddDTO.Email,
                    FirstName          = CompanyUserAddDTO.FirstName,
                    IsAcceptInvitation = CompanyUserAddDTO.IsAcceptInvitation,
                    IsActive           = CompanyUserAddDTO.IsActive,
                    IsCanceled         = CompanyUserAddDTO.IsCanceled,
                    JobTitile          = CompanyUserAddDTO.JobTitile,
                    LastName           = CompanyUserAddDTO.LastName,

                    CreationDate = DateTime.Now,
                    IsDeleted    = (byte)DeleteStatusEnum.NotDeleted
                };
            }
            catch (Exception exception) { }
            return(CompanyUser);
        }
Example #23
0
 public static CompanyUserGetViewModel ToViewModel(this CompanyUser userCompany)
 {
     return(new CompanyUserGetViewModel
     {
         ID = userCompany.ID,
         Name = userCompany.Name
     });
 }
Example #24
0
        /// <summary>
        /// 导入报表
        /// </summary>
        /// <param name="dt">用户所传Excel</param>
        /// <param name="admin">用户</param>
        /// <returns></returns>
        public static bool ImportExcel(DataTable dt, CompanyUser admin)
        {
            var flag = false;

            dt   = ConventImportDt(dt, admin);
            flag = FinanceReportDBOperate.ImportExcel(dt);
            return(flag);
        }
Example #25
0
        protected void btnUpdate_Click(object sender, EventArgs e)
        {
            CompanyUser modelUser = new CompanyUser();

            modelUser = EyouSoft.BLL.CompanyStructure.CompanyUser.CreateInstance().GetModel(userid);
            if (modelUser != null)
            {
                string password = Utils.GetFormValue(txt_Password.UniqueID);
                if (!string.IsNullOrEmpty(password))
                {
                    modelUser.PassWordInfo.NoEncryptPassword = password;
                }
                modelUser.UserName   = Utils.GetFormValue(txt_UserName.UniqueID);
                modelUser.MqNickName = Utils.GetFormValue(txt_MQNickname.UniqueID);
                modelUser.Job        = Utils.GetFormValue(txt_Post.UniqueID);
                modelUser.DepartId   = Utils.GetFormValue(dropDepartment.UniqueID);

                #region 个人会员联系信息
                ContactPersonInfo ContactInfo = new ContactPersonInfo();
                ContactInfo.ContactName = Utils.GetFormValue(txt_RealName.UniqueID);
                ContactInfo.ContactSex  = (Sex)Enum.Parse(typeof(Sex), Utils.GetFormValue(dropSex.UniqueID));
                ContactInfo.Email       = Utils.GetFormValue(txt_Email.UniqueID);
                ContactInfo.Fax         = Utils.GetFormValue(txt_Fax.UniqueID);
                ContactInfo.Mobile      = Utils.GetFormValue(txt_Mobile.UniqueID);
                ContactInfo.MQ          = Utils.GetFormValue(txt_MQ.UniqueID);
                ContactInfo.MSN         = Utils.GetFormValue(txt_MSN.UniqueID);
                ContactInfo.QQ          = Utils.GetFormValue(txt_QQ.UniqueID);
                ContactInfo.Tel         = Utils.GetFormValue(txt_tel.UniqueID);
                #endregion

                #region 线路区域
                List <AreaBase> listArea = new List <AreaBase>();
                foreach (string AreaId in Utils.GetFormValues("chbArea"))
                {
                    AreaBase modelAreaBase = new AreaBase();
                    if (!string.IsNullOrEmpty(AreaId))
                    {
                        modelAreaBase.AreaId = Utils.GetInt(AreaId);
                        listArea.Add(modelAreaBase);
                    }
                    modelAreaBase = null;
                }
                modelUser.Area   = listArea;
                modelUser.RoleID = dropPermissions.SelectedValue;
                #endregion

                modelUser.ContactInfo = ContactInfo;

                if (EyouSoft.BLL.CompanyStructure.CompanyUser.CreateInstance().UpdateChild(modelUser))
                {
                    MessageBox.ShowAndRedirect(Page, "修改成功", "PersonalMemberList.aspx");
                }
                else
                {
                    MessageBox.Show(Page, "修改失败");
                }
            }
        }
        public HttpResponseMessage RegisterCompanyUser([FromBody] CompanyUser user)
        {
            if (user != null)
            {
                //can be used to call client functions
                var connection = GlobalHost.ConnectionManager.GetHubContext <CrossDomainHub>();

                Utilities.PasswordManager mgr = new Utilities.PasswordManager();
                SLW_DatabaseInfo          db  = new SLW_DatabaseInfo();
                bool valid_user_type          = false;

                List <UserType> user_types = db.GetUserTypes();
                for (int i = 0; i < user_types.Count; i++)
                {
                    if (user_types[i].user_type == user.user_role)
                    {
                        valid_user_type = true;
                        break;
                    }
                }

                if (valid_user_type)
                {
                    if (!db.CheckUserExist(user.username))
                    {
                        string source = "";
                        if (db.CheckLocalClientExist(user.clientId))
                        {
                            source = Commons.Constants.LOCAL_SOURCE;
                        }
                        else
                        {
                            source = Commons.Constants.ASMS_SOURCE;
                        }

                        string hash = mgr.GetHash(user.password);
                        user.user_type = "company";
                        int id = db.NewCompanyUser(user.username, user.first_name, user.last_name, DateTime.Now, user.user_role, user.user_type, DateTime.Now, (DateTime)System.Data.SqlTypes.SqlDateTime.MinValue, hash, false, user.email, user.company, user.clientId, source);
                        db.SaveActivity(new UserActivity(user.username, Commons.Constants.ACTIVITY_CREATE_ACCOUNT, "", "", 0));

                        //Utilities.Email.Send(user.email, "New Account", "Your account was created sucessfully. Username: "******"");
                        return(Request.CreateResponse(HttpStatusCode.OK, id));
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.Unauthorized, "user exists"));
                    }
                }
                else
                {
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid user type"));
                }
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, "bad request"));
            }
        }
Example #27
0
        public static CompanyUser Post(int companyId, int companyUserId, CompanyUser companyUser)
        {
            var existing = Get(companyId, companyUserId);

            existing.FirstName = companyUser.FirstName;
            existing.LastName  = companyUser.LastName;
            existing.Email     = companyUser.Email;
            return(existing);
        }
        public HttpResponseMessage UpdateCompanyUser(HttpRequestMessage request, [FromBody] CompanyUser companyUserModel)
        {
            return(GetHttpResponse(request, () =>
            {
                var companyUser = _CoreService.UpdateCompanyUser(companyUserModel);

                return request.CreateResponse <CompanyUser>(HttpStatusCode.OK, companyUser);
            }));
        }
Example #29
0
        public async Task <IEnumerable <Advertisiment> > GetAdvertisimentsByUser(CompanyUser user)
        {
            var data = await _context.Advertisiments
                       .Include(x => x.CompanyUser)
                       .Where(x => x.CompanyId == user.Id)
                       .ToListAsync();

            return(data);
        }
        public void SeedUserData()
        {
            byte[]        saltedHashBytes = Encoding.UTF8.GetBytes("Secret123$" + "Korisnik");
            HashAlgorithm algorithm       = new SHA256Managed();

            if (context.Users.Where(x => x.Identifier != Guid.Empty).Count() == 0 || context.CompanyUsers.Count() == 0)
            {
                if (context.Users.Count(x => x.Email == "*****@*****.**") == 0)
                {
                    saltedHashBytes = Encoding.UTF8.GetBytes("Secret123$" + "Admin");
                    algorithm       = new SHA256Managed();
                    byte[] hash     = algorithm.ComputeHash(saltedHashBytes);
                    string password = Convert.ToBase64String(hash);

                    var userForDb = new User()
                    {
                        Identifier   = Guid.NewGuid(),
                        Username     = "******",
                        FirstName    = "Petar",
                        LastName     = "Petrovic",
                        PasswordHash = password,
                        Email        = "*****@*****.**",
                        Active       = true,
                        UpdatedAt    = DateTime.Now,
                        CreatedAt    = DateTime.Now
                    };
                    context.Users.Add(userForDb);
                    context.SaveChanges();
                }
                if (context.Users.FirstOrDefault(x => x.Email == "*****@*****.**").Identifier == Guid.Empty)
                {
                    var user = context.Users.FirstOrDefault(x => x.Email == "*****@*****.**");
                    user.Identifier = Guid.NewGuid();
                    user.UpdatedAt  = DateTime.Now;
                    context.SaveChanges();
                }

                if (context.CompanyUsers.Include(x => x.User).Where(x => x.Identifier != Guid.Empty && x.User.Identifier != Guid.Empty).Count() == 0)
                {
                    if (context.CompanyUsers.Include(x => x.User).Count(x => x.User.Email == "*****@*****.**") == 0)
                    {
                        var companyUser = new CompanyUser()
                        {
                            Identifier = Guid.NewGuid(),
                            UserId     = context.Users.FirstOrDefault(x => x.Email == "*****@*****.**")?.Id ?? null,
                            CompanyId  = context.Companies.FirstOrDefault()?.Id,
                            RolesCSV   = "Admin",
                            UpdatedAt  = DateTime.Now,
                            Active     = true
                        };
                        context.CompanyUsers.Add(companyUser);
                        context.SaveChanges();
                    }
                }
            }
        }
Example #31
0
File: Admin.cs Project: PavelPZ/REW
 public static Company createCompany(Container db, string title, User usr, bool isFakePublisherCompany) {
   var compDb = new Company() { Title = title, Created = DateTime.UtcNow }; db.Companies.Add(compDb);
   var dep = new CompanyDepartment() { Title = title, Company = compDb };
   db.CompanyDepartments.Add(dep);
   var compUser = new CompanyUser() { Created = DateTime.UtcNow, Company = compDb, User = usr, RolesEx = (long)(isFakePublisherCompany ? CompRole.All : CompRole.Admin), CompanyDepartment = dep };
   db.CompanyUsers.Add(compUser);
   if (isFakePublisherCompany) usr.MyPublisher = compDb;
   return compDb;
 }
Example #32
0
File: Admin.cs Project: PavelPZ/REW
    static void SetUsers(CmdSetUsers dt) {
      var db = Lib.CreateContext();

      /************ Users *****************/
      if (dt.Users != null && dt.Users.Length > 0) {
        //LMComId > 0 => uprav existujiciho usera
        var ids = dt.Users.Where(u => u.LMComId != 0).Select(u => u.LMComId).ToArray();
        foreach (var usr in db.Users.Where(u => ids.Contains(u.Id)))
          if (dt.Users.First(u => u.LMComId == usr.Id).Deleted) usr.Roles &= ~(long)Role.Comps; //deleted => zrus Comps roli
          else usr.Roles |= (long)Role.Comps; //neni Deleted => nastav Comps roli
        //LMComId == 0 => adjust usera
        var emails = dt.Users.Where(u => u.LMComId == 0).Select(u => u.EMail).ToList(); //vsechny nove emaily
        foreach (var usr in db.Users.Where(u => emails.Contains(u.EMail))) { //nacti existujici z DB
          usr.Roles |= (long)Role.Comps; //nastav Comps roli
          emails.Remove(usr.EMail); //vymaz z pozadovanych emailu
        }
        foreach (var em in emails) NewData.Login.PrepareUser(em, db, true); //compId nenalezen v DB => zaloz users v prepared stavu
      }
      Lib.SaveChanges(db);

      List<int> deletedComps = new List<int>(); //evicence vymazanych companies, abych je v "Company User Roles" ignoroval

      /************ Users *****************/
      if (dt.Comps != null && dt.Comps.Length > 0) {
        //new comps
        var newComps = dt.Comps.Where(c => c.Id == 0);
        var emails = newComps.Select(c => c.EMail).Where(c => c != null).ToArray();
        var newUsers = db.Users.Where(u => emails.Contains(u.EMail));
        //zaloz novou company (s primitivnim department) a ev. compUsera a Usera
        foreach (var comp in newComps) {
          var usr = newUsers.FirstOrDefault(u => u.EMail == comp.EMail);
          if (usr == null) usr = NewData.Login.PrepareUser(comp.EMail, db); //zaloz users v prepared stavu
          createCompany(db, comp.Title, usr, false);
          //var compDb = new Company() { Title = comp.Title, Created = DateTime.UtcNow }; db.Users.Add(compDb);
          //db.CompanyDepartments.Add(new CompanyDepartment() { Title = comp.Title, Company = compDb });
          //var userObj = newUsers.FirstOrDefault(u => u.compId == comp.compId);
          //if (userObj == null) userObj = NewData.Login.PrepareUser(comp.compId, db); //zaloz users v prepared stavu
          //var compUser = new CompanyUser() { Created = DateTime.UtcNow, Company = compDb, User = userObj, Roles = (long)CompRole.Admin };
          //db.CompanyUsers.Add(compUser);
        }
        //Uprav stavajici company
        var ids = dt.Comps.Where(c => c.Id != 0).Select(c => c.Id).ToArray(); //compId's existujici companies
        var compsDb = db.Companies.Where(c => ids.Contains(c.Id)).ToArray(); //nacti companies z DB
        foreach (var comp in dt.Comps.Where(c => c.Id != 0)) {
          var compDb = compsDb.First(c => c.Id == comp.Id); //aktualni comp v db
          if (comp.Deleted) { deletedComps.Add(comp.Id); db.Companies.Remove(compDb); continue; } //delete company
          compDb.Title = comp.Title; //aktualizuj //compDb.PublisherId = comp.PublisherId; 
          var old = dt.OldComps.First(c => c.Id == comp.Id); //najdi starou verzi
          if (old.EMail != comp.EMail) {//User je zmeneny
            //db.CompanyUsers.First(u => u.compId == old.email).Roles &= ~(long)CompRole.Admin; //zrus admina u old email
            db.CompanyUsers.First(u => u.Id == old.UserId).RolesEx &= ~(long)CompRole.Admin; //zrus admina u old email
            //adjust noveho admina 
            var usr = newUsers.FirstOrDefault(u => u.EMail == comp.EMail); //Zacni Userem
            CompanyUser compUsr = null;
            if (usr == null) usr = NewData.Login.PrepareUser(comp.EMail, db); //pro neexistujiciho zaloz usera v prepared stavu
            else compUsr = usr.CompanyUsers.FirstOrDefault(cu => cu.CompanyId == comp.Id); //pro existujiciho usera nalezni Cmpany Usera
            if (compUsr == null) compUsr = new CompanyUser() { Created = DateTime.UtcNow, Company = compDb, User = usr, RolesEx = (long)CompRole.Admin }; //Company User neexistuje => zaloz
            //else compUsr.Roles |= (long)CompRole.Admin; //existuje, dej mu Admin roli
            else compUsr.RolesEx |= (long)CompRole.Admin; //existuje, dej mu Admin roli
          }
        }
      }
      Lib.SaveChanges(db);

      /************ Company User Roles *****************/
      if (dt.CompUsers != null && dt.CompUsers.Length > 0) {
        //kontrola companies, ktere byly mozna vymazany v predchozim kroku
        CompUserItem[] actUsers = dt.CompUsers.Where(u => !deletedComps.Contains(u.CompanyId)).ToArray();

        //Uprav stavajici users
        var ids = actUsers.Where(u => u.UserId > 0).Select(u => u.UserId).ToArray();
        var dbUsers = db.CompanyUsers.Where(u => ids.Contains(u.Id)).ToArray(); //nacti stavajicu users z DB
        foreach (var dbUser in dbUsers) {
          var usr = actUsers.First(u => u.UserId == dbUser.Id); //dato s novou verzi
          var oldRoles = (CompRole)dbUser.Roles; var newRoles = usr.RoleEx.Role;
          oldRoles = usr.Deleted ? oldRoles & CompRole.HumanEvalator : (oldRoles & CompRole.HumanEvalator) | newRoles;
          dbUser.RolesEx = (long)oldRoles; //nastav novou roli
        }
        //Zaloz nove users
        var emails = actUsers.Where(u => u.UserId == 0).Select(u => u.EMail).ToList(); //vsechny nove emaily
        var newUsers = db.Users.Where(u => emails.Contains(u.EMail)).ToArray(); //existujici Users
        foreach (var cusr in actUsers.Where(u => u.UserId == 0)) {
          //adjust noveho admina 
          var usr = newUsers.FirstOrDefault(u => u.EMail == cusr.EMail); //Zacni Userem
          CompanyUser compUsr = null;
          if (usr == null) usr = NewData.Login.PrepareUser(cusr.EMail, db); //pro neexistujiciho zaloz usera v prepared stavu
          else compUsr = usr.CompanyUsers.FirstOrDefault(cu => cu.CompanyId == cusr.CompanyId); //pro existujiciho usera nalezni Cmpany Usera
          var newRoles = cusr.RoleEx.Role;
          if (compUsr == null)
            db.CompanyUsers.Add(compUsr = new CompanyUser() { Created = DateTime.UtcNow, CompanyId = cusr.CompanyId, User = usr, RoleParEx = cusr.RoleEx }); //Company User neexistuje => zaloz
          else {
            var oldRoles = (CompRole)compUsr.Roles;
            newRoles |= oldRoles & CompRole.HumanEvalator;
            compUsr.RolesEx = (long)newRoles;
          }
        }
      }

      Lib.SaveChanges(db);
    }