Ejemplo n.º 1
0
        protected override CoreResponse Create(CoreRequest core_request)
        {
            CoreResponse core_response = new CoreResponse(core_request);
            UserDTO      loginsession  = Newtonsoft.Json.JsonConvert.DeserializeObject <UserDTO>(core_request.HttpContext.Session.GetString("User"));

            foreach (var item in core_request.DtRequest.Data)
            {
                string key = item.Key;
                List <Dictionary <string, object> > list_pair = new List <Dictionary <string, object> >();
                var     pair = item.Value as Dictionary <string, object>;
                UserDTO orgin;

                orgin = new UserDTO();
                base.ConvertDictionaryToObject(orgin, pair, core_response.DtResponse.fieldErrors);
                if (core_response.DtResponse.fieldErrors != null && core_response.DtResponse.fieldErrors.Count > 0)
                {
                    return(core_response);
                }
                //登录名要唯一
                var existUser = this.GetAll().Where(p => p.LoginName == orgin.LoginName).FirstOrDefault();
                if (existUser != null)
                {
                    Core.Infrastructure.DataTables.DtResponse.FieldError fe = new Core.Infrastructure.DataTables.DtResponse.FieldError();
                    fe.name   = "Loginname";
                    fe.status = "创建的登录名已经存在";
                    core_response.DtResponse.fieldErrors.Add(fe);
                    return(core_response);
                }

                DBResult dbresult;
                orgin.Password   = orgin.Password.ToMD5String();
                orgin.CreateTime = DateTime.Now;
                orgin.Creator    = loginsession.LoginName;
                dbresult         = this.Add(orgin);
                if (dbresult.Code != 0)
                {
                    core_response.DtResponse.error += dbresult.ErrMsg;
                }
                else
                {
                    User user = dbresult.Result as User;
                    if (orgin.UserRole != null)
                    {
                        foreach (var v in orgin.UserRole)
                        {
                            v.UserId     = user.Id;
                            v.CreateTime = DateTime.Now;
                            v.Creator    = loginsession.LoginName;
                        }
                        dbresult = _IUserRoleService.AddRange(orgin.UserRole.ToArray());
                        if (dbresult.Code != 0)
                        {
                            core_response.DtResponse.error += dbresult.ErrMsg;
                        }
                    }
                }
            }
            return(core_response);
        }
Ejemplo n.º 2
0
        protected override CoreResponse Edit(CoreRequest core_request)
        {
            CoreResponse core_response = new CoreResponse(core_request);
            UserDTO      loginsession  = Newtonsoft.Json.JsonConvert.DeserializeObject <UserDTO>(core_request.HttpContext.Session.GetString("User"));

            foreach (var item in core_request.DtRequest.Data)
            {
                string key = item.Key;
                List <Dictionary <string, object> > list_pair = new List <Dictionary <string, object> >();
                var           pair = item.Value as Dictionary <string, object>;
                PermissionDTO orgin, update_compare;
                int           id = int.Parse(item.Key);
                orgin          = this.GetByID(id);
                update_compare = (PermissionDTO)orgin.Clone();

                base.ConvertDictionaryToObject(orgin, pair, core_response.DtResponse.fieldErrors);

                if (core_response.DtResponse.fieldErrors != null && core_response.DtResponse.fieldErrors.Count > 0)
                {
                    return(core_response);
                }
                //检查登录名是否存在,保证唯一
                if (orgin.Name != update_compare.Name)
                {
                    var existUser = this.GetAll().Where(p => p.Name == orgin.Name).FirstOrDefault();
                    if (existUser != null)
                    {
                        Core.Infrastructure.DataTables.DtResponse.FieldError fe = new Core.Infrastructure.DataTables.DtResponse.FieldError();
                        fe.name   = "Name";
                        fe.status = "更新的角色名已经存在";
                        core_response.DtResponse.fieldErrors.Add(fe);
                        return(core_response);
                    }
                }
                orgin.Modifier   = loginsession.LoginName;
                orgin.ModifyTime = DateTime.Now;

                DBResult dbresult;
                dbresult = base.Update(orgin);

                if (dbresult.Code != 0)
                {
                    core_response.DtResponse.error += dbresult.ErrMsg;
                }
            }
            return(core_response);
        }
Ejemplo n.º 3
0
        protected override CoreResponse Create(CoreRequest core_request)
        {
            CoreResponse core_response = new CoreResponse(core_request);
            UserDTO      loginsession  = Newtonsoft.Json.JsonConvert.DeserializeObject <UserDTO>(core_request.HttpContext.Session.GetString("User"));

            foreach (var item in core_request.DtRequest.Data)
            {
                string key = item.Key;
                List <Dictionary <string, object> > list_pair = new List <Dictionary <string, object> >();
                var           pair = item.Value as Dictionary <string, object>;
                PermissionDTO orgin;

                orgin = new PermissionDTO();
                base.ConvertDictionaryToObject(orgin, pair, core_response.DtResponse.fieldErrors);
                if (core_response.DtResponse.fieldErrors != null && core_response.DtResponse.fieldErrors.Count > 0)
                {
                    return(core_response);
                }
                //登录名要唯一
                var existUser = this.GetAll().Where(p => p.Name == orgin.Name).FirstOrDefault();
                if (existUser != null)
                {
                    Core.Infrastructure.DataTables.DtResponse.FieldError fe = new Core.Infrastructure.DataTables.DtResponse.FieldError();
                    fe.name   = "Name";
                    fe.status = "创建的角色名已经存在";
                    core_response.DtResponse.fieldErrors.Add(fe);
                    return(core_response);
                }

                DBResult dbresult;
                orgin.CreateTime = DateTime.Now;
                orgin.Creator    = loginsession.LoginName;

                dbresult = this.Add(orgin);
                if (dbresult.Code != 0)
                {
                    core_response.DtResponse.error += dbresult.ErrMsg;
                }
            }
            return(core_response);
        }