コード例 #1
0
        /// <summary>
        /// 添加管理员
        /// </summary>
        /// <returns></returns>
        public JsonResult AddManger()
        {
            //检查访问权限
            CheckPermission();

            using (ResponseResult <object> result = new ResponseResult <object>())
            {
                string loginUserName = Request.Form["LoginUserName"].ToString();

                //检查手机号是否存在
                if (this._adminUserRepository.Count(u => u.UserName == loginUserName) > 0)
                {
                    result.IsSuccess = false;
                    result.Message   = ResponeString.LoginUserNameExist;
                    return(Json(result));
                }
                var adminUser = new T_ADMIN_USER()
                {
                    RealName   = Request.Form["UserName"].ToString(),
                    UserName   = Request.Form["LoginUserName"],
                    Password   = Encrypt.MD5Encrypt(Request.Form["Password"].ToString()),
                    Province   = Request.Form["Province"].ToString(),
                    City       = Request.Form["City"].ToString(),
                    Region     = Request.Form["Region"].ToString(),
                    Township   = Request.Form["Township"].ToString(),
                    Village    = Request.Form["Village"].ToString(),
                    CreateTime = Utility.TimeHelper.GetChinaLocalTime(),
                };

                T_USER_ROLE_RELATION rolemodel = new T_USER_ROLE_RELATION()
                {
                    UserID      = 1,
                    RoleID      = Convert.ToInt32(Request.Form["Role"].DefaultIfEmpty("0")),
                    AuditUserId = Convert.ToInt32(Request.Form["AuditUserId"].DefaultIfEmpty("0")),
                    CreateTime  = Utility.TimeHelper.GetChinaLocalTime(),
                    MemberType  = false
                };
                if (this._adminUserRepository.CreateUser(adminUser, rolemodel))
                {
                    result.IsSuccess = true;
                    result.Message   = ResponeString.AddOk;
                    result.Entity    = 1;
                }
                else
                {
                    result.IsSuccess = false;
                    result.Message   = ResponeString.AddFaile;
                }

                return(new JsonResultEx(result));
            }
        }
コード例 #2
0
        public bool CreateUser(T_ADMIN_USER adminUser, T_USER_ROLE_RELATION userRoleRelation)
        {
            using (var ctx = GetDbContextInstance())
            {
                var tran = ctx.Database.BeginTransaction();
                Batch(ctx, EntityState.Added, adminUser);
                ctx.SaveChanges();
                userRoleRelation.UserID = adminUser.Id;
                var userRoleRelationEntry = ctx.Entry <T_USER_ROLE_RELATION>(userRoleRelation);
                userRoleRelationEntry.State = EntityState.Added;
                var effect = ctx.SaveChanges();

                //如果添加的用户为经销商角色还需要添加经销商的分管区域记录
                if (userRoleRelation.RoleID == (int)RoleType.Dealer)
                {
                    string manageAID = null;
                    Func <string, bool> IsValidAddressValue = (areaCode) => !(string.IsNullOrEmpty(areaCode) || areaCode == "0");

                    if (IsValidAddressValue(adminUser.Village))
                    {
                        manageAID = adminUser.Village;
                    }
                    else if (IsValidAddressValue(adminUser.Township))
                    {
                        manageAID = adminUser.Township;
                    }
                    else if (IsValidAddressValue(adminUser.Region))
                    {
                        manageAID = adminUser.Region;
                    }
                    else if (IsValidAddressValue(adminUser.Province))
                    {
                        manageAID = adminUser.Province;
                    }

                    var supplesAreaEntry = ctx.Entry <T_SUPPLIERS_AREA>(new T_SUPPLIERS_AREA
                    {
                        AID            = manageAID,
                        UserID         = adminUser.Id,
                        CreateDateTime = userRoleRelation.CreateTime,
                        State          = true
                    });
                    supplesAreaEntry.State = EntityState.Added;
                    effect = ctx.SaveChanges();
                }

                tran.Commit();
                return(effect > 0);
            }
        }
コード例 #3
0
ファイル: UserRepository.cs プロジェクト: wangweicoder/dupont
        public int CreateUser(T_USER entity, T_USER_ROLE_RELATION rolemodel)
        {
            using (var dbContext = new DuPont_TestContext())
            {
                //创建事务,如果操作过程中出现异常,操作会回滚,防止产生脏数据
                using (var tran = dbContext.Database.BeginTransaction())
                {
                    dbContext.T_USER.Add(entity);
                    dbContext.SaveChanges();
                    rolemodel.MemberType = true;
                    rolemodel.UserID     = entity.Id;
                    dbContext.T_USER_ROLE_RELATION.Add(rolemodel);
                    dbContext.SaveChanges();

                    //如果是经销商
                    if (rolemodel.RoleID == (int)RoleType.Dealer)
                    {
                        string controlAreaLevel = "";
                        if (!string.IsNullOrEmpty(entity.Village) && entity.Village != "0")
                        {
                            controlAreaLevel = entity.Village;
                        }
                        else if (!string.IsNullOrEmpty(entity.Region) && entity.Region != "0")
                        {
                            controlAreaLevel = entity.Region;
                        }
                        else if (!string.IsNullOrEmpty(entity.City) && entity.City != "0")
                        {
                            controlAreaLevel = entity.City;
                        }
                        else if (!string.IsNullOrEmpty(entity.Province) && entity.Province != "0")
                        {
                            controlAreaLevel = entity.Province;
                        }
                        else
                        {
                            throw new Exception("经销商的地址不能为空!");
                        }

                        var supplier_area = new T_SUPPLIERS_AREA
                        {
                            AID            = controlAreaLevel,
                            CreateDateTime = DateTime.Now,
                            State          = true,
                            UserID         = entity.Id
                        };

                        var paras = new SqlParameter[] {
                            new SqlParameter("@aid", supplier_area.AID),
                            new SqlParameter("@createdatetime", supplier_area.CreateDateTime),
                            new SqlParameter("@state", supplier_area.State),
                            new SqlParameter("@userid", supplier_area.UserID)
                        };

                        var sql = "insert into T_SUPPLIERS_AREA(aid,createdatetime,state,userid)";
                        sql += "values(@aid,@createdatetime,@state,@userid)";

                        dbContext.Database.ExecuteSqlCommand(sql, paras);

                        dbContext.SaveChanges();
                    }

                    tran.Commit();//提交事务
                    return(1);
                }
            }
        }
コード例 #4
0
ファイル: UserRepository.cs プロジェクト: wangweicoder/dupont
        public long UpdateUserInfo(T_USER model, Dictionary <int, byte?> demandLevelInfoList, long loginid)
        {
            using (var dbContext = new DuPont_TestContext())
            {
                //创建事务,如果操作过程中出现异常,操作会回滚,防止产生脏数据
                using (var tran = dbContext.Database.BeginTransaction())
                {
                    //数据库操作
                    #region 修改用户基本信息
                    T_USER updmodel = dbContext.T_USER.Find(model.Id);
                    updmodel.UserName = model.UserName;
                    //updmodel.PhoneNumber = model.PhoneNumber;
                    updmodel.DPoint         = model.DPoint;
                    updmodel.Province       = model.Province;
                    updmodel.City           = model.City;
                    updmodel.Region         = model.Region;
                    updmodel.Township       = model.Township;
                    updmodel.Village        = model.Village;
                    updmodel.ModifiedUserId = loginid;
                    updmodel.ModifiedTime   = Utility.TimeHelper.GetChinaLocalTime();
                    //执行修改操作
                    var upd = dbContext.T_USER.Find(updmodel.Id);
                    if (upd != null)
                    {
                        ClassValueCopyHelper.Copy(upd, updmodel);
                        dbContext.SaveChanges();
                    }
                    #endregion
                    #region 修改用户的角色信息以及技能信息
                    //1获取各角色的最高星星数
                    byte?farmerstar   = demandLevelInfoList[0];
                    byte?operatorstar = 0;
                    byte?businesstar  = 0;
                    T_USER_ROLE_DEMANDTYPELEVEL_RELATION skillmodel = new T_USER_ROLE_DEMANDTYPELEVEL_RELATION();
                    //农机手
                    for (int i = 100101; i <= 100108; i++)
                    {
                        //添加农机手的技能信息及星星数
                        skillmodel = new T_USER_ROLE_DEMANDTYPELEVEL_RELATION {
                            UserId = model.Id, RoleId = (int)RoleType.MachineryOperator, DemandId = i, Star = Convert.ToInt32(demandLevelInfoList[i]), CreateTime = Utility.TimeHelper.GetChinaLocalTime()
                        };
                        if (demandLevelInfoList[i] > 0)
                        {
                            //先删除原有记录
                            var dbEntry = dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.SingleOrDefault(u => u.UserId == skillmodel.UserId && u.RoleId == skillmodel.RoleId && u.DemandId == skillmodel.DemandId);
                            if (dbEntry != null)
                            {
                                dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Remove(dbEntry);
                                dbContext.SaveChanges();
                            }
                            //执行添加操作
                            dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Add(skillmodel);
                            dbContext.SaveChanges();
                        }
                        else
                        {
                            //删除原有记录
                            var dbEntry = dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.SingleOrDefault(u => u.UserId == skillmodel.UserId && u.RoleId == skillmodel.RoleId && u.DemandId == skillmodel.DemandId);
                            if (dbEntry != null)
                            {
                                dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Remove(dbEntry);
                                dbContext.SaveChanges();
                            }
                        }
                    }
                    //获取农机手角色的最大星星数
                    var operatorstarmodel = dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Where(u => u.UserId == model.Id && u.RoleId == (int)RoleType.MachineryOperator).OrderByDescending(u => u.Star).FirstOrDefault();
                    if (operatorstarmodel != null)
                    {
                        operatorstar = (byte?)operatorstarmodel.Star;
                    }
                    //产业商
                    for (int i = 100201; i <= 100202; i++)
                    {
                        //添加产业商的技能信息及星星数
                        skillmodel = new T_USER_ROLE_DEMANDTYPELEVEL_RELATION {
                            UserId = model.Id, RoleId = (int)RoleType.Business, DemandId = i, Star = Convert.ToInt32(demandLevelInfoList[i]), CreateTime = Utility.TimeHelper.GetChinaLocalTime()
                        };
                        if (demandLevelInfoList[i] > 0)
                        {               //先删除原有记录
                            var dbEntry = dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.SingleOrDefault(u => u.UserId == skillmodel.UserId && u.RoleId == skillmodel.RoleId && u.DemandId == skillmodel.DemandId);
                            if (dbEntry != null)
                            {
                                dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Remove(dbEntry);
                                dbContext.SaveChanges();
                            }
                            //执行添加操作
                            dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Add(skillmodel);
                            dbContext.SaveChanges();
                        }
                        else
                        {
                            //删除原有记录
                            var dbEntry = dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.SingleOrDefault(u => u.UserId == skillmodel.UserId && u.RoleId == skillmodel.RoleId && u.DemandId == skillmodel.DemandId);
                            if (dbEntry != null)
                            {
                                dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Remove(dbEntry);
                                dbContext.SaveChanges();
                            }
                        }
                    }
                    //获取产业商角色的最大星星数
                    var businessstarmodel = dbContext.T_USER_ROLE_DEMANDTYPELEVEL_RELATION.Where(u => u.UserId == model.Id && u.RoleId == (int)RoleType.Business).OrderByDescending(u => u.Star).FirstOrDefault();
                    if (businessstarmodel != null)
                    {
                        businesstar = (byte?)businessstarmodel.Star;
                    }
                    //2判断各角色的星星数是否大于0,大于0执行添加操作,如果之前已经存在该角色的记录信息先删除在添加,等于0执行删除操作。
                    T_USER_ROLE_RELATION rolemodel = new T_USER_ROLE_RELATION();
                    if (farmerstar >= 0)//ww增加=,否则会删除角色表的数据
                    {
                        rolemodel = new T_USER_ROLE_RELATION {
                            UserID = model.Id, MemberType = true, RoleID = (int)RoleType.Farmer, Star = farmerstar, AuditUserId = loginid, CreateTime = Utility.TimeHelper.GetChinaLocalTime()
                        };
                        //先删除原有记录
                        var dbEntry = dbContext.T_USER_ROLE_RELATION.SingleOrDefault(u => u.MemberType && u.UserID == rolemodel.UserID && u.RoleID == rolemodel.RoleID);
                        if (dbEntry != null)
                        {
                            dbContext.T_USER_ROLE_RELATION.Remove(dbEntry);
                            dbContext.SaveChanges();
                        }
                        //执行添加操作
                        dbContext.T_USER_ROLE_RELATION.Add(rolemodel);
                        dbContext.SaveChanges();
                    }
                    else
                    {
                        //删除原有记录
                        var dbEntry = dbContext.T_USER_ROLE_RELATION.SingleOrDefault(u => u.MemberType && u.UserID == model.Id && u.RoleID == (int)RoleType.Farmer);
                        if (dbEntry != null)
                        {
                            dbContext.T_USER_ROLE_RELATION.Remove(dbEntry);
                            dbContext.SaveChanges();
                        }
                    }
                    if (operatorstar > 0)
                    {
                        rolemodel = new T_USER_ROLE_RELATION {
                            UserID = model.Id, MemberType = true, RoleID = (int)RoleType.MachineryOperator, Star = operatorstar, AuditUserId = loginid, CreateTime = Utility.TimeHelper.GetChinaLocalTime()
                        };
                        //先删除原有记录
                        var dbEntry = dbContext.T_USER_ROLE_RELATION.SingleOrDefault(u => u.MemberType && u.UserID == rolemodel.UserID && u.RoleID == rolemodel.RoleID);
                        if (dbEntry != null)
                        {
                            dbContext.T_USER_ROLE_RELATION.Remove(dbEntry);
                            dbContext.SaveChanges();
                        }
                        //执行添加操作
                        dbContext.T_USER_ROLE_RELATION.Add(rolemodel);
                        dbContext.SaveChanges();
                    }
                    else
                    {
                        //删除原有记录
                        var dbEntry = dbContext.T_USER_ROLE_RELATION.SingleOrDefault(u => u.MemberType && u.UserID == model.Id && u.RoleID == (int)RoleType.MachineryOperator);
                        if (dbEntry != null)
                        {
                            dbContext.T_USER_ROLE_RELATION.Remove(dbEntry);
                            dbContext.SaveChanges();
                        }
                    }
                    if (businesstar > 0)
                    {
                        rolemodel = new T_USER_ROLE_RELATION {
                            UserID = model.Id, MemberType = true, RoleID = (int)RoleType.Business, Star = businesstar, AuditUserId = loginid, CreateTime = Utility.TimeHelper.GetChinaLocalTime()
                        };
                        //先删除原有记录
                        var dbEntry = dbContext.T_USER_ROLE_RELATION.SingleOrDefault(u => u.MemberType && u.UserID == rolemodel.UserID && u.RoleID == rolemodel.RoleID);
                        if (dbEntry != null)
                        {
                            dbContext.T_USER_ROLE_RELATION.Remove(dbEntry);
                            dbContext.SaveChanges();
                        }
                        //执行添加操作
                        dbContext.T_USER_ROLE_RELATION.Add(rolemodel);
                        dbContext.SaveChanges();
                    }
                    else
                    {
                        //删除原有记录
                        var dbEntry = dbContext.T_USER_ROLE_RELATION.SingleOrDefault(u => u.MemberType && u.UserID == model.Id && u.RoleID == (int)RoleType.Business);
                        if (dbEntry != null)
                        {
                            dbContext.T_USER_ROLE_RELATION.Remove(dbEntry);
                            dbContext.SaveChanges();
                        }
                    }
                    #endregion


                    tran.Commit();//提交事务
                    return(1);
                }
            }
        }
コード例 #5
0
        /// <summary>
        /// 添加user
        /// </summary>
        /// <returns></returns>
        public JsonResult AddUser()
        {
            //检查访问权限
            CheckPermission();

            using (ResponseResult <object> result = new ResponseResult <object>())
            {
                string loginUserName = Request.Form["LoginUserName"].ToString();

                //检查手机号是否存在
                if (this._adminUserRepository.Count(u => u.UserName == loginUserName) > 0)
                {
                    result.IsSuccess = false;
                    result.Message   = ResponeString.LoginUserNameExist;
                    return(Json(result));
                }

                //创建一个后端用户
                var dealerUser = new T_ADMIN_USER()
                {
                    RealName   = Request.Form["UserName"].ToString(),
                    UserName   = Request.Form["LoginUserName"],
                    Password   = Encrypt.MD5Encrypt(Request.Form["Password"].ToString()),
                    Province   = Request.Form["Province"].ToString(),
                    City       = Request.Form["City"].ToString(),
                    Region     = Request.Form["Region"].ToString(),
                    Township   = Request.Form["Township"].ToString(),
                    Village    = Request.Form["Village"].ToString(),
                    CreateTime = Utility.TimeHelper.GetChinaLocalTime(),
                };

                //生成用户角色关联信息
                var rolemodel = new T_USER_ROLE_RELATION()
                {
                    UserID      = 0,
                    RoleID      = (int)RoleType.Dealer,
                    AuditUserId = Convert.ToInt32(Request.Form["AuditUserId"].DefaultIfEmpty("0")),
                    CreateTime  = Utility.TimeHelper.GetChinaLocalTime(),
                    MemberType  = false
                };

                if (this._adminUserRepository.CreateUser(dealerUser, rolemodel))
                {
                    result.IsSuccess = true;
                    result.Message   = ResponeString.AddOk;
                    result.Entity    = 1;

                    var lognet = new DP_Log()
                    {
                        CreateTime = DateTime.Now,
                        Message    = "完成添加经销商" + rolemodel.UserID + "操作",
                        StackTrace = string.Empty
                    };
                }
                else
                {
                    result.IsSuccess = false;
                    result.Message   = ResponeString.AddFaile;
                }

                return(new JsonResultEx(result));
            }
        }