/// <summary> /// 安全方式绑定对象表单 /// </summary> public Lebi_DT_Agent SafeBindForm(Lebi_DT_Agent model) { if (HttpContext.Current.Request["IsUsedAgent"] != null) { model.IsUsedAgent = Shop.Tools.RequestTool.RequestInt("IsUsedAgent", 0); } if (HttpContext.Current.Request["CommissionMoneyDays"] != null) { model.CommissionMoneyDays = Shop.Tools.RequestTool.RequestInt("CommissionMoneyDays", 0); } if (HttpContext.Current.Request["DT_id"] != null) { model.DT_id = Shop.Tools.RequestTool.RequestInt("DT_id", 0); } if (HttpContext.Current.Request["Angent1_Commission"] != null) { model.Angent1_Commission = Shop.Tools.RequestTool.RequestDecimal("Angent1_Commission", 0); } if (HttpContext.Current.Request["Angent2_Commission"] != null) { model.Angent2_Commission = Shop.Tools.RequestTool.RequestDecimal("Angent2_Commission", 0); } if (HttpContext.Current.Request["Angent3_Commission"] != null) { model.Angent3_Commission = Shop.Tools.RequestTool.RequestDecimal("Angent3_Commission", 0); } return(model); }
/// <summary> /// 更新一条数据 /// </summary> public void Update(Lebi_DT_Agent model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update [Lebi_DT_Agent] set "); strSql.Append("IsUsedAgent= @IsUsedAgent,"); strSql.Append("CommissionMoneyDays= @CommissionMoneyDays,"); strSql.Append("DT_id= @DT_id,"); strSql.Append("Angent1_Commission= @Angent1_Commission,"); strSql.Append("Angent2_Commission= @Angent2_Commission,"); strSql.Append("Angent3_Commission= @Angent3_Commission"); strSql.Append(" where id=@id"); SqlParameter[] parameters = { new SqlParameter("@id", SqlDbType.Int, 4), new SqlParameter("@IsUsedAgent", SqlDbType.Int, 4), new SqlParameter("@CommissionMoneyDays", SqlDbType.Int, 4), new SqlParameter("@DT_id", SqlDbType.Int, 4), new SqlParameter("@Angent1_Commission", SqlDbType.Decimal, 9), new SqlParameter("@Angent2_Commission", SqlDbType.Decimal, 9), new SqlParameter("@Angent3_Commission", SqlDbType.Decimal, 9) }; parameters[0].Value = model.id; parameters[1].Value = model.IsUsedAgent; parameters[2].Value = model.CommissionMoneyDays; parameters[3].Value = model.DT_id; parameters[4].Value = model.Angent1_Commission; parameters[5].Value = model.Angent2_Commission; parameters[6].Value = model.Angent3_Commission; SqlUtils.SqlUtilsInstance.TextExecuteNonQuery(strSql.ToString(), parameters); }
/// <summary> /// 增加一条数据 /// </summary> public int Add(Lebi_DT_Agent model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into [Lebi_DT_Agent]("); strSql.Append("IsUsedAgent,CommissionMoneyDays,DT_id,Angent1_Commission,Angent2_Commission,Angent3_Commission)"); strSql.Append(" values ("); strSql.Append("@IsUsedAgent,@CommissionMoneyDays,@DT_id,@Angent1_Commission,@Angent2_Commission,@Angent3_Commission)"); strSql.Append(";select @@IDENTITY"); SqlParameter[] parameters = { new SqlParameter("@IsUsedAgent", model.IsUsedAgent), new SqlParameter("@CommissionMoneyDays", model.CommissionMoneyDays), new SqlParameter("@DT_id", model.DT_id), new SqlParameter("@Angent1_Commission", model.Angent1_Commission), new SqlParameter("@Angent2_Commission", model.Angent2_Commission), new SqlParameter("@Angent3_Commission", model.Angent3_Commission) }; object obj = SqlUtils.SqlUtilsInstance.TextExecuteNonQuery(strSql.ToString(), parameters); if (obj == null) { return(1); } else { return(Convert.ToInt32(obj)); } }
/// <summary> /// 得到一个对象实体 by id /// </summary> public Lebi_DT_Agent GetModel(int id) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 * from [Lebi_DT_Agent] "); strSql.Append(" where id=@id"); SqlParameter[] parameters = { new SqlParameter("@id", SqlDbType.Int, 4) }; parameters[0].Value = id; Lebi_DT_Agent model = new Lebi_DT_Agent(); DataSet ds = SqlUtils.SqlUtilsInstance.TextExecuteDataset(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["id"].ToString() != "") { model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString()); } if (ds.Tables[0].Rows[0]["IsUsedAgent"].ToString() != "") { model.IsUsedAgent = int.Parse(ds.Tables[0].Rows[0]["IsUsedAgent"].ToString()); } if (ds.Tables[0].Rows[0]["CommissionMoneyDays"].ToString() != "") { model.CommissionMoneyDays = int.Parse(ds.Tables[0].Rows[0]["CommissionMoneyDays"].ToString()); } if (ds.Tables[0].Rows[0]["DT_id"].ToString() != "") { model.DT_id = int.Parse(ds.Tables[0].Rows[0]["DT_id"].ToString()); } if (ds.Tables[0].Rows[0]["Angent1_Commission"].ToString() != "") { model.Angent1_Commission = decimal.Parse(ds.Tables[0].Rows[0]["Angent1_Commission"].ToString()); } if (ds.Tables[0].Rows[0]["Angent2_Commission"].ToString() != "") { model.Angent2_Commission = decimal.Parse(ds.Tables[0].Rows[0]["Angent2_Commission"].ToString()); } if (ds.Tables[0].Rows[0]["Angent3_Commission"].ToString() != "") { model.Angent3_Commission = decimal.Parse(ds.Tables[0].Rows[0]["Angent3_Commission"].ToString()); } return(model); } else { return(null); } }
/// <summary> /// 得到一个对象实体 by where条件 /// </summary> public Lebi_DT_Agent GetModel(string strWhere) { if (strWhere.IndexOf("lbsql{") > 0) { SQLPara para = new SQLPara(strWhere, "", ""); return(GetModel(para)); } StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 * from [Lebi_DT_Agent] "); strSql.Append(" where " + strWhere + ""); Lebi_DT_Agent model = new Lebi_DT_Agent(); DataSet ds = SqlUtils.SqlUtilsInstance.TextExecuteDataset(strSql.ToString()); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["id"].ToString() != "") { model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString()); } if (ds.Tables[0].Rows[0]["IsUsedAgent"].ToString() != "") { model.IsUsedAgent = int.Parse(ds.Tables[0].Rows[0]["IsUsedAgent"].ToString()); } if (ds.Tables[0].Rows[0]["CommissionMoneyDays"].ToString() != "") { model.CommissionMoneyDays = int.Parse(ds.Tables[0].Rows[0]["CommissionMoneyDays"].ToString()); } if (ds.Tables[0].Rows[0]["DT_id"].ToString() != "") { model.DT_id = int.Parse(ds.Tables[0].Rows[0]["DT_id"].ToString()); } if (ds.Tables[0].Rows[0]["Angent1_Commission"].ToString() != "") { model.Angent1_Commission = decimal.Parse(ds.Tables[0].Rows[0]["Angent1_Commission"].ToString()); } if (ds.Tables[0].Rows[0]["Angent2_Commission"].ToString() != "") { model.Angent2_Commission = decimal.Parse(ds.Tables[0].Rows[0]["Angent2_Commission"].ToString()); } if (ds.Tables[0].Rows[0]["Angent3_Commission"].ToString() != "") { model.Angent3_Commission = decimal.Parse(ds.Tables[0].Rows[0]["Angent3_Commission"].ToString()); } return(model); } else { return(null); } }
private decimal GetAngentCommission3(Lebi_DT_Agent dt_agent, Lebi_User user) { if (user != null) { Lebi_UserLevel userlevel = B_Lebi_UserLevel.GetModel(user.UserLevel_id); if (userlevel != null) { if (userlevel.IsUsedAgent == 0) //关闭推广佣金 { return(0); } } if (dt_agent != null) { if (dt_agent.IsUsedAgent == 0) { return(0); } if (dt_agent.Angent3_Commission != -1) { return(dt_agent.Angent3_Commission); } } Lebi_Agent_User agent_user = B_Lebi_Agent_User.GetModel("User_id = " + user.id + ""); if (agent_user != null) { if (agent_user.Angent3_Commission != -1) { return(agent_user.Angent3_Commission); } } Lebi_Agent_UserLevel agent_userlevel = B_Lebi_Agent_UserLevel.GetModel("UserLevel_id = " + user.UserLevel_id + ""); if (agent_userlevel != null) { if (agent_userlevel.Angent3_Commission != -1) { return(agent_userlevel.Angent3_Commission); } } } decimal yongjin = 0;//3级佣金比例 decimal.TryParse(bc.Angent3_Commission, out yongjin); return(yongjin); }
/// <summary> /// 对象实体绑定数据 /// </summary> public Lebi_DT_Agent ReaderBind(IDataReader dataReader) { Lebi_DT_Agent model = new Lebi_DT_Agent(); object ojb; ojb = dataReader["id"]; if (ojb != null && ojb != DBNull.Value) { model.id = (int)ojb; } ojb = dataReader["IsUsedAgent"]; if (ojb != null && ojb != DBNull.Value) { model.IsUsedAgent = (int)ojb; } ojb = dataReader["CommissionMoneyDays"]; if (ojb != null && ojb != DBNull.Value) { model.CommissionMoneyDays = (int)ojb; } ojb = dataReader["DT_id"]; if (ojb != null && ojb != DBNull.Value) { model.DT_id = (int)ojb; } ojb = dataReader["Angent1_Commission"]; if (ojb != null && ojb != DBNull.Value) { model.Angent1_Commission = (decimal)ojb; } ojb = dataReader["Angent2_Commission"]; if (ojb != null && ojb != DBNull.Value) { model.Angent2_Commission = (decimal)ojb; } ojb = dataReader["Angent3_Commission"]; if (ojb != null && ojb != DBNull.Value) { model.Angent3_Commission = (decimal)ojb; } return(model); }
/// <summary> /// 增加一条数据 /// </summary> public int Add(Lebi_DT_Agent model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into [Lebi_DT_Agent]("); strSql.Append("[IsUsedAgent],[CommissionMoneyDays],[DT_id],[Angent1_Commission],[Angent2_Commission],[Angent3_Commission])"); strSql.Append(" values ("); strSql.Append("@IsUsedAgent,@CommissionMoneyDays,@DT_id,@Angent1_Commission,@Angent2_Commission,@Angent3_Commission)"); OleDbParameter[] parameters = { new OleDbParameter("@IsUsedAgent", model.IsUsedAgent), new OleDbParameter("@CommissionMoneyDays", model.CommissionMoneyDays), new OleDbParameter("@DT_id", model.DT_id), new OleDbParameter("@Angent1_Commission", model.Angent1_Commission), new OleDbParameter("@Angent2_Commission", model.Angent2_Commission), new OleDbParameter("@Angent3_Commission", model.Angent3_Commission) }; AccessUtils.Instance.TextExecuteNonQuery(strSql.ToString(), parameters); return(1); }
/// <summary> /// 更新一条数据 /// </summary> public void Update(Lebi_DT_Agent model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update [Lebi_DT_Agent] set "); strSql.Append("[IsUsedAgent]=@IsUsedAgent,"); strSql.Append("[CommissionMoneyDays]=@CommissionMoneyDays,"); strSql.Append("[DT_id]=@DT_id,"); strSql.Append("[Angent1_Commission]=@Angent1_Commission,"); strSql.Append("[Angent2_Commission]=@Angent2_Commission,"); strSql.Append("[Angent3_Commission]=@Angent3_Commission"); strSql.Append(" where id=" + model.id); OleDbParameter[] parameters = { new OleDbParameter("@IsUsedAgent", model.IsUsedAgent), new OleDbParameter("@CommissionMoneyDays", model.CommissionMoneyDays), new OleDbParameter("@DT_id", model.DT_id), new OleDbParameter("@Angent1_Commission", model.Angent1_Commission), new OleDbParameter("@Angent2_Commission", model.Angent2_Commission), new OleDbParameter("@Angent3_Commission", model.Angent3_Commission) }; AccessUtils.Instance.TextExecuteNonQuery(strSql.ToString(), parameters); }
/// <summary> /// 更新一条数据 /// </summary> public static void Update(Lebi_DT_Agent model) { D_Lebi_DT_Agent.Instance.Update(model); }
/// <summary> /// 增加一条数据 /// </summary> public static int Add(Lebi_DT_Agent model) { return(D_Lebi_DT_Agent.Instance.Add(model)); }
/// <summary> /// 安全方式绑定表单数据 /// </summary> public static Lebi_DT_Agent SafeBindForm(Lebi_DT_Agent model) { return(D_Lebi_DT_Agent.Instance.SafeBindForm(model)); }
public static Model Info(Lebi_User user) { BaseConfig bc = ShopCache.GetBaseConfig(); Model m = new Model(); decimal Money = 0; string money_ = Common.GetValue("select sum(Money) from Lebi_Agent_Money where User_id=" + user.id + " and Type_id_AgentMoneyStatus=382 and datediff(d,Time_add,'" + System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "')>" + bc.CommissionMoneyDays + ""); decimal.TryParse(money_, out Money); int UserCount = 0; UserCount = B_Lebi_User.Counts("User_id_parent=" + user.id + ""); int UserCountmonth = 0; UserCountmonth = B_Lebi_User.Counts("User_id_parent=" + user.id + " and (datediff(d,Time_Reg,'" + System.DateTime.Now.Date.AddDays(0 - System.DateTime.Now.Day + 1).ToString("yyyy-MM-dd") + "')<=0 and datediff(d,Time_Reg,'" + System.DateTime.Now + "')>=0)"); int UserCountday = 0; UserCountday = B_Lebi_User.Counts("User_id_parent=" + user.id + " and (datediff(d,Time_Reg,'" + System.DateTime.Now.Date.ToString("yyyy-MM-dd") + "')<=0 and datediff(d,Time_Reg,'" + System.DateTime.Now + "')>=0)"); decimal Commission1 = 0; decimal Commission2 = 0; decimal Commission3 = 0; decimal.TryParse(bc.Angent1_Commission, out Commission1); decimal.TryParse(bc.Angent2_Commission, out Commission2); decimal.TryParse(bc.Angent3_Commission, out Commission3); if (user.DT_id == 0) { Lebi_Agent_UserLevel agent_userlevel = B_Lebi_Agent_UserLevel.GetModel("UserLevel_id = " + user.UserLevel_id + ""); if (agent_userlevel != null) { if (agent_userlevel.Angent1_Commission != -1) { Commission1 = agent_userlevel.Angent1_Commission; } if (agent_userlevel.Angent2_Commission != -1) { Commission2 = agent_userlevel.Angent2_Commission; } if (agent_userlevel.Angent3_Commission != -3) { Commission3 = agent_userlevel.Angent3_Commission; } } Lebi_Agent_User agent_user = B_Lebi_Agent_User.GetModel("User_id = " + user.id + ""); if (agent_user != null) { if (agent_user.Angent1_Commission != -1) { Commission1 = agent_user.Angent1_Commission; } if (agent_user.Angent2_Commission != -1) { Commission2 = agent_user.Angent2_Commission; } if (agent_user.Angent3_Commission != -1) { Commission3 = agent_user.Angent3_Commission; } } } else { Lebi_DT_Agent dt_agent = B_Lebi_DT_Agent.GetModel("DT_id = " + user.DT_id + ""); if (dt_agent != null) { if (dt_agent.IsUsedAgent == 1) { Commission1 = dt_agent.Angent1_Commission; Commission2 = dt_agent.Angent2_Commission; Commission3 = dt_agent.Angent3_Commission; } } } m.Money = Money; m.UserCount = UserCount; m.UserCountmonth = UserCountmonth; m.UserCountday = UserCountday; m.Commission1 = Commission1; m.Commission2 = Commission2; m.Commission3 = Commission3; Lebi_UserLevel userlevel = B_Lebi_UserLevel.GetModel(user.UserLevel_id); if (userlevel != null) { if (userlevel.IsUsedAgent == 0) //关闭注册 { m.Commission1 = 0; m.Commission2 = 0; m.Commission3 = 0; } } return(m); }
/// <summary> /// 推广佣金 /// </summary> private void AgentMoney() { //SystemLog.Add("计算佣金orderid" + Order.id + "userid" + OrderUser.User_id_parent); SystemLog.Add("推广佣金-开始"); if (OrderUser.User_id_parent == 0) { return; } //string Money_Product_Profit_ = Common.GetValue("select sum((Price - Price_Cost)*(Count-Count_Return)) from Lebi_Order_Product where Order_id = " + Order.id + ""); string Money_Product_Profit_ = Common.GetValue("select sum((Price - Price_Cost)*Count) from Lebi_Order_Product where Order_id = " + Order.id + ""); decimal Money_Product_Profit = 0; decimal.TryParse(Money_Product_Profit_, out Money_Product_Profit); if (Order.Type_id_OrderType == 212) { Money_Product_Profit = 0 - Money_Product_Profit;//zhangshijia 退货时产生负数佣金 } //处理一级代理 Lebi_User user1 = B_Lebi_User.GetModel(OrderUser.User_id_parent); if (user1 == null) { return; } decimal yongjin1 = 0; //1级佣金比例 decimal yongjin2 = 0; //2级佣金比例 decimal yongjin3 = 0; //3级佣金比例 Lebi_DT_Agent dt_agent = B_Lebi_DT_Agent.GetModel(0); Lebi_User DT_User = new Lebi_User(); Lebi_DT dt = new Lebi_DT(); int CommissionLevel = 3; if (Order.Supplier_id > 0) { Lebi_Supplier supplier = B_Lebi_Supplier.GetModel(Order.Supplier_id); if (supplier.IsSpread == 0) //商家未开启 { SystemLog.Add("推广佣金-商家未开启"); return; } } if (Order.DT_id > 0) { Money_Product_Profit = Order.DT_Money; //如果是分销商,利润为分销商佣金 dt_agent = B_Lebi_DT_Agent.GetModel("DT_id=" + Order.DT_id + ""); dt = B_Lebi_DT.GetModel(Order.DT_id); if (dt != null) { CommissionLevel = dt.CommissionLevel; } DT_User = B_Lebi_User.GetModel(dt.User_id); if (dt_agent.IsUsedAgent == 0) //分销商未开启 { SystemLog.Add("推广佣金-分销商未开启"); return; } // Money_Product_Profit = Order.DT_Money; ///zhangshijia注释,未找到DT_Money来源 //List<Lebi_Order_Product> order_pro = B_Lebi_Order_Product.GetModel(" Order_id = " + Order.id + ""); //foreach (Lebi_Order_Product op in order_pro) //{ //} } yongjin1 = GetAngentCommission1(dt_agent, user1); decimal money = Money_Product_Profit * yongjin1 / 100; if (Order.DT_id > 0) { if (DT_User.Money < money) { SystemLog.Add("推广佣金-分销商[" + DT_User.NickName + "-" + DT_User.id + "]金额不足,一级佣金生成失败"); return; } } AddMoney(money, user1, 391, 0, 0, 0); //SystemLog.Add("计算佣金" + user1.UserName + money.ToString()); if (Order.DT_id > 0) { AddMoney(0 - money, DT_User, 391, 0, 0, 0); } //处理2级代理 Lebi_User user2 = B_Lebi_User.GetModel(user1.User_id_parent); if (user2 == null) { user2 = new Lebi_User(); } else { if (CommissionLevel >= 2) { yongjin2 = GetAngentCommission2(dt_agent, user2); money = Money_Product_Profit * yongjin2 / 100; if (Order.DT_id > 0) { if (DT_User.Money < money) { SystemLog.Add("推广佣金-分销商金额不足,二级佣金生成失败"); return; } } AddMoney(money, user2, 391, 0, 0, 0); if (Order.DT_id > 0) { AddMoney(0 - money, DT_User, 391, 0, 0, 0); } } } //处理3级代理 if (CommissionLevel == 2) { return; } Lebi_User user3 = B_Lebi_User.GetModel(user2.User_id_parent); if (user3 != null) { yongjin3 = GetAngentCommission3(dt_agent, user3); money = Money_Product_Profit * yongjin3 / 100; if (Order.DT_id > 0) { if (DT_User.Money < money) { SystemLog.Add("推广佣金-分销商金额不足,三级佣金生成失败"); return; } } AddMoney(money, user3, 391, 0, 0, 0); if (Order.DT_id > 0) { AddMoney(0 - money, DT_User, 391, 0, 0, 0); } } ////处理条件佣金,佣金历史达到X时,可获得下线,下下线Y%的佣金 //decimal Angent_Commission_require = 0; //decimal.TryParse(bc.Angent_Commission_require, out Angent_Commission_require); //decimal yongjin3 = 0;//条件佣金比例 //decimal.TryParse(bc.Angent_Commission, out yongjin3); //money = Money_Product_Profit * yongjin3 / 100; //if (user1.AgentMoney_history > Angent_Commission_require) // AddMoney(money, user1, 395, 0, 0, 0); //if (user2.AgentMoney_history > Angent_Commission_require) // AddMoney(money, user2, 395, 0, 0, 0); }