/// <summary> /// 更新占成 /// By xzz /// 2010-10-8 /// </summary> /// <param name="userName"></param> /// <param name="percent"></param> /// <param name="roleId"></param> /// <returns></returns> public static string UpdatePercent(int ID, double percent, int roleId) { double maxPercent = 0; double UpPercent = 10; object ob; if (roleId == 5) { UserService userService = new UserService(); ob = userService.GetMaxPercentByUserName(ID); if (!Convert.IsDBNull(ob)) { maxPercent = Convert.ToDouble(ob); } } else { ob = agentService.GetMaxPercentByUserName(ID); if (!Convert.IsDBNull(ob)) { maxPercent = Convert.ToDouble(ob); } } Agent agent = GetAgentByPK(ID); if (agent != null) { if (roleId != 2) { Agent upAgent = GetAgentByPK(agent.UpUserID); if (upAgent != null) { UpPercent = upAgent.Percent; } } } if (percent < maxPercent) { return("不能小于下级最大占成:" + maxPercent.ToString("")); } else if (percent > UpPercent) { return("不能大于上级占成:" + UpPercent.ToString("")); } else { if (agentService.UpdatePercent(percent, ID)) { //更新会员占成 if (roleId == 5) { agentService.UpdatePercentAll(UpPercent - percent, percent, agent.RoleId, agent.UserName); } else { IList <Agent> nextAgents = agentService.GetAgentByupUsername(agent.UserName); foreach (Agent info in nextAgents) { agentService.UpdatePercentAll(UpPercent - percent, percent - info.Percent, agent.RoleId, info.UserName); } } return("ok"); } else { return("更新失败"); } } }