Exemplo n.º 1
0
        public ApiReturns Post(ViewPersonInfo viewPerson)
        {
            var loginUser = LoginStatus.GetLoginUser();

            // 权限验证,非超级管理员不允许添加超级管理员账户,不允许添加不属于其所属单位的人员信息
            if (!LoginStatus.IsSuperAdminLogin() && (viewPerson.UserType == 0 || viewPerson.DepartmentId != loginUser.DepartmentId))
            {
                return(ApiReturns.Forbidden());
            }

            viewPerson.AddTime = DateTime.Now;

            var person = new PersonInfo
            {
                AddTime          = DateTime.Now,
                Name             = viewPerson.Name,
                DepartmentId     = viewPerson.DepartmentId,
                Gender           = viewPerson.Gender,
                HeadPortraitPath = viewPerson.HeadPortraitPath ?? string.Empty,
                WorkNo           = viewPerson.WorkNo
            };
            var user = new SystemUser
            {
                Username = viewPerson.Username,
                Password = EncryptHelper.EncryptPassword(viewPerson.Password),
                UserType = viewPerson.UserType ?? 0
            };

            var success = _personBll.AddPeronAndSystemUser(person, user);

            return(success ? ApiReturns.Created() : ApiReturns.BadRequest());
        }
Exemplo n.º 2
0
        public ApiReturns Put(int id, ViewPersonInfo viewPerson)
        {
            var loginUser = LoginStatus.GetLoginUser();

            // 权限验证,非超级管理员不允许将账户修改为超级管理员账户,不允许添加不属于其所属单位的人员信息
            if (!LoginStatus.IsSuperAdminLogin() && (viewPerson.UserType == 0 || viewPerson.DepartmentId != loginUser.DepartmentId))
            {
                return(ApiReturns.Forbidden());
            }

            var person = _personBll.QuerySingle(id);
            var user   = _systemUserBll.QuerySingle(s => s.PersonInfoId == id);

            if (person == null || user == null)
            {
                return(ApiReturns.BadRequest());
            }

            person.Name             = viewPerson.Name;
            person.DepartmentId     = viewPerson.DepartmentId;
            person.Gender           = viewPerson.Gender;
            person.HeadPortraitPath = viewPerson.HeadPortraitPath;
            person.WorkNo           = viewPerson.WorkNo;

            user.Username = viewPerson.Username;
            user.UserType = viewPerson.UserType.Value;

            var success = _personBll.ExecuteTranscation(() => _personBll.Update(person), () => _systemUserBll.Update(user));

            return(success ? ApiReturns.Created() : ApiReturns.BadRequest());
        }