public string GetVipCount15Days(string pRequest) { var rp = pRequest.DeserializeJSONTo <APIRequest <GeneralRP> >(); var para = rp.Parameters; var loggingSessionInfo = Default.GetBSLoggingSession(rp.CustomerID, "1"); var bll = new SysRetailRewardRuleBLL(loggingSessionInfo); var rd = new VipCountRD(); var rsp = new SuccessResponse <IAPIResponseData>(rd); rd.VipCountList = DataTableToObject.ConvertToList <VipCountInfo>(bll.GetRetailTraderVipCountByDays(rp.Parameters.RetailTraderId, 15).Tables[0]).ToArray(); var dsMain = bll.GetRetailTraderEarnings(para.RetailTraderId, "All", 0, 0); if (dsMain.Tables[0].Rows.Count > 0) { rd.Bonus = Convert.ToDecimal(dsMain.Tables[0].Rows[0]["Bonus"]); rd.SalesMoney = Convert.ToDecimal(dsMain.Tables[0].Rows[0]["SalesMoney"]); } var dsMonth = bll.GetRetailTraderEarnings(para.RetailTraderId, "Month", 0, 0); if (dsMonth.Tables[0].Rows.Count > 0) { rd.Bonus_Month = Convert.ToDecimal(dsMonth.Tables[0].Rows[0]["Bonus"]); rd.SalesMoney_Month = Convert.ToDecimal(dsMonth.Tables[0].Rows[0]["SalesMoney"]); } var dsDaily = bll.GetRetailTraderEarnings(para.RetailTraderId, "Daily", 0, 0); if (dsDaily.Tables[0].Rows.Count > 0) { rd.Bonus_Day = Convert.ToDecimal(dsDaily.Tables[0].Rows[0]["Bonus"]); rd.SalesMoney_Day = Convert.ToDecimal(dsDaily.Tables[0].Rows[0]["SalesMoney"]); } return(rsp.ToJSON()); }
/// <summary> /// 商品列表带分润价格 /// </summary> /// <param name="pRequest"></param> /// <returns></returns> public string GetItemList(string pRequest) { var rp = pRequest.DeserializeJSONTo <APIRequest <GetItemListRP> >(); var loggingSessionInfo = Default.GetBSLoggingSession(rp.CustomerID, "1"); var bll = new SysRetailRewardRuleBLL(loggingSessionInfo); var rd = new GetItemListRD(); var rsp = new SuccessResponse <IAPIResponseData>(rd); rd.ItemList = DataTableToObject.ConvertToList <ItemInfo>(bll.GetItemListWithSharePrice(rp.CustomerID, rp.Parameters.RetailTraderID, rp.Parameters.PageIndex, rp.Parameters.PageSize, rp.Parameters.Sort, rp.Parameters.SortName).Tables[0]).ToArray(); return(rsp.ToJSON()); }
public string GetRetailTraderEarningsDetails(string pRequest) { var rp = pRequest.DeserializeJSONTo <APIRequest <GeneralRP> >(); var loggingSessionInfo = Default.GetBSLoggingSession(rp.CustomerID, "1"); var bll = new SysRetailRewardRuleBLL(loggingSessionInfo); var rd = new RetailTraderEarningsDetailsRD(); var rsp = new SuccessResponse <IAPIResponseData>(rd); var dsMain = bll.GetRetailTraderEarningsDetails(rp.Parameters.RetailTraderId); if (dsMain.Tables[0].Rows.Count > 0) { rd.BonusList = DataTableToObject.ConvertToList <BonusInfo>(dsMain.Tables[0]).ToArray(); } return(rsp.ToJSON()); }
public string GetRetailTraderEarnings(string pRequest) { var rp = pRequest.DeserializeJSONTo <APIRequest <RetailTraderEarningsRP> >(); var loggingSessionInfo = Default.GetBSLoggingSession(rp.CustomerID, "1"); var bll = new SysRetailRewardRuleBLL(loggingSessionInfo); var rd = new RetailTraderEarningsRD(); var rsp = new SuccessResponse <IAPIResponseData>(rd); var dsMain = bll.GetRetailTraderEarnings(rp.Parameters.RetailTraderId, rp.Parameters.Type, rp.Parameters.PageIndex, rp.Parameters.PageSize); if (dsMain.Tables[0].Rows.Count > 0) { rd.Bonus = Convert.ToDecimal(dsMain.Tables[0].Rows[0]["Bonus"]); rd.SalesMoney = Convert.ToDecimal(dsMain.Tables[0].Rows[0]["SalesMoney"]); } if (dsMain.Tables[1].Rows.Count > 0) { rd.ItemSalesInfoList = DataTableToObject.ConvertToList <ItemSalesInfo>(dsMain.Tables[1]).ToArray(); } return(rsp.ToJSON()); }
public string GetRetailTraderByID(string pRequest) { var rp = pRequest.DeserializeJSONTo <APIRequest <RetailTraderLoginRP> >(); if (rp.Parameters.RetailTraderID == null) { throw new APIException("缺少参数【RetailTraderID】或参数值为空") { ErrorCode = 135 }; } var loggingSessionInfo = Default.GetBSLoggingSession(rp.CustomerID, "1"); var bll = new RetailTraderBLL(loggingSessionInfo); var rd = new SaveRetailTraderRD(); var rsp = new SuccessResponse <IAPIResponseData>(rd); //获取分销商的信息,包括头像等loggingSessionInfo.ClientID var ds = bll.getRetailTraderInfoByLogin("", rp.Parameters.RetailTraderID, loggingSessionInfo.ClientID); var retailTraderInfo = new RetailTraderInfo(); //判断账号是否存在 if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { var tempDt = ds.Tables[0]; retailTraderInfo = DataTableToObject.ConvertToObject <RetailTraderInfo>(tempDt.Rows[0]);//直接根据所需要的字段反序列化 } //正确时返回分销商数据 rd.RetailTraderInfo = retailTraderInfo;//分销商 //获取奖励规则 SysRetailRewardRuleEntity[] ruleList = null; SysRetailRewardRuleBLL _SysRetailRewardRuleBLL = new SysRetailRewardRuleBLL(loggingSessionInfo); //先看该分销商自己是否有奖励规则 SysRetailRewardRuleEntity en = new SysRetailRewardRuleEntity(); en.IsTemplate = 0; en.CooperateType = retailTraderInfo.CooperateType; en.RetailTraderID = rp.Parameters.RetailTraderID; en.CustomerId = rp.CustomerID; en.IsDelete = 0; //获取奖励模板 ruleList = _SysRetailRewardRuleBLL.QueryByEntity(en, null); // SysRetailRewardRuleEntity en = new SysRetailRewardRuleEntity(); if (ruleList == null || ruleList.Count() == 0) { SysRetailRewardRuleEntity en2 = new SysRetailRewardRuleEntity(); en2.IsTemplate = 1; en2.CooperateType = retailTraderInfo.CooperateType; en2.IsDelete = 0; en2.CustomerId = rp.CustomerID; //加上这个,否则多个客户的奖励规则一起取了 //获取奖励模板 ruleList = _SysRetailRewardRuleBLL.QueryByEntity(en2, null); //这里不能用en了,用en会包含之前的RetailTraderID属性了 } StringBuilder sb = new StringBuilder(""); if (ruleList != null || ruleList.Count() != 0) { for (int i = 0; i < ruleList.Count(); i++) { if (ruleList[i].RetailTraderReward > 0) { sb.Append(ruleList[i].RewardTypeName); int temp = (int)ruleList[i].RetailTraderReward;//判断一下小数点后面是不是0,如果是0,就不要了 if (ruleList[i].RetailTraderReward > temp) { sb.Append(ruleList[i].RetailTraderReward); } else { sb.Append(temp); } if (ruleList[i].AmountOrPercent == 1) { sb.Append("元"); } else { sb.Append("%"); } if (ruleList[i].RewardTypeCode == "AttentThreeMonth") { sb.Append("(不包含首笔交易)"); } sb.Append(","); } } if (sb.ToString() != "") { sb.Replace(',', '。', sb.Length - 1, 1); } } else { if (retailTraderInfo.CooperateType == "TwoWay") { sb.Append(retailTraderInfo.UnitName).Append("门店帮您发放优惠券,也可向您的门店带来潜在的顾客。 "); } } rd.RewardNotic = sb.ToString();//奖励规则说明 return(rsp.ToJSON()); }
public string SaveRetailRewardRule(string pRequest) { var rp = pRequest.DeserializeJSONTo <APIRequest <SaveRetailRewardRuleRP> >(); var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; var bll = new SysRetailRewardRuleBLL(loggingSessionInfo); var rd = new SaveRetailRewardRuleRD(); var rsp = new SuccessResponse <IAPIResponseData>(rd); if (rp.Parameters.IsTemplate == null) { throw new APIException("缺少参数【IsTemplate】或参数值为空") { ErrorCode = 135 }; } //if (string.IsNullOrEmpty(rp.Parameters.CooperateType)) //{ // throw new APIException("缺少参数【CooperateType】或参数值为空") { ErrorCode = 135 }; //} if (rp.Parameters.IsTemplate == 0 && string.IsNullOrEmpty(rp.Parameters.RetailTraderID)) { throw new APIException("缺少参数【RetailTraderID】或参数值为空") { ErrorCode = 135 }; } if (rp.Parameters.SysRetailRewardRuleList == null) { throw new APIException("缺少参数【SysRetailRewardRuleList】或参数值为空") { ErrorCode = 135 }; } //如果是分销商,需要改变分销商的相关数据 RetailTraderBLL _RetailTraderBLL = new RetailTraderBLL(loggingSessionInfo); //先要删除相关的数据 //如果是模板的就设置该合作方式下的分销商的上次使用的相关数据为已经被删除isdelete=0 //如果是分销商,就删除该分销商下上次使用的相关数据。 //bll.UpdateSysRetailRewardRule(rp.Parameters.IsTemplate, rp.Parameters.CooperateType, rp.Parameters.RetailTraderID, loggingSessionInfo.ClientID); if (rp.Parameters.IsTemplate == 0)//非模板时 { bll.UpdateSysRetailRewardRule(rp.Parameters.IsTemplate, "", "", rp.Parameters.RetailTraderID, loggingSessionInfo.ClientID); RetailTraderEntity enRT = new RetailTraderEntity(); enRT.RetailTraderID = rp.Parameters.RetailTraderID; enRT.CooperateType = ""; //修改合作方式 enRT.SalesType = ""; //修改销售方式 _RetailTraderBLL.Update(enRT, null, false); //不更新空的 } else { bll.UpdateSysRetailRewardRule(rp.Parameters.IsTemplate, "", "", rp.Parameters.RetailTraderID, loggingSessionInfo.ClientID); } //获取分销商的信息,loggingSessionInfo.ClientID foreach (var item in rp.Parameters.SysRetailRewardRuleList) { if (rp.Parameters.IsTemplate == 0 && !string.IsNullOrEmpty(rp.Parameters.RetailTraderID))// { if (item.CooperateType != "Sales") { RetailTraderEntity enRT = new RetailTraderEntity(); enRT.RetailTraderID = rp.Parameters.RetailTraderID; enRT.CooperateType = item.CooperateType; //修改合作方式 _RetailTraderBLL.Update(enRT, null, false); //不更新空的 } else { RetailTraderEntity enRT = new RetailTraderEntity(); enRT.RetailTraderID = rp.Parameters.RetailTraderID; enRT.SalesType = item.CooperateType; //修改销售方式 _RetailTraderBLL.Update(enRT, null, false); //不更新空的 } } SysRetailRewardRuleEntity en = new SysRetailRewardRuleEntity(); en.RetailRewardRuleID = Guid.NewGuid().ToString(); //每次都创建新的 en.CooperateType = item.CooperateType; //合作方式 en.RewardTypeName = item.RewardTypeName; en.RewardTypeCode = item.RewardTypeCode; en.IsTemplate = rp.Parameters.IsTemplate;//是否模板 en.SellUserReward = item.SellUserReward; en.RetailTraderReward = item.RetailTraderReward; en.ItemSalesPriceRate = (item.ItemSalesPriceRate == null ? 0 : item.ItemSalesPriceRate);//销售设置 en.AmountOrPercent = item.AmountOrPercent; en.CreateTime = DateTime.Now; en.CreateBy = loggingSessionInfo.UserID; en.LastUpdateTime = DateTime.Now; en.LastUpdateBy = loggingSessionInfo.UserID; if (item.CooperateType == "Sales" && item.ItemSalesPriceRate == 0) { en.Status = "0"; } else { en.Status = "1"; } en.IsDelete = 0; en.CustomerId = loggingSessionInfo.ClientID; en.BeginTime = DateTime.Now;//开始时间 en.EndTime = null; en.RetailTraderID = rp.Parameters.RetailTraderID; //如果是模板的就不要加 bll.Create(en); //保存奖励规则 } return(rsp.ToJSON()); }
public string GetSysRetailRewardRule(string pRequest) { var rp = pRequest.DeserializeJSONTo <APIRequest <SaveRetailRewardRuleRP> >(); var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; var bll = new SysRetailRewardRuleBLL(loggingSessionInfo); var rd = new SaveRetailRewardRuleRD(); var rsp = new SuccessResponse <IAPIResponseData>(rd); if (rp.Parameters.IsTemplate != 0 && rp.Parameters.IsTemplate != 1) { throw new APIException("缺少参数【IsTemplate】或参数值为空") { ErrorCode = 135 }; } //if ( string.IsNullOrEmpty( rp.Parameters.CooperateType)) //{ // throw new APIException("缺少参数【CooperateType】或参数值为空") { ErrorCode = 135 }; //} if (rp.Parameters.IsTemplate == 0 && string.IsNullOrEmpty(rp.Parameters.RetailTraderID)) { throw new APIException("缺少参数【RetailTraderID】或参数值为空") { ErrorCode = 135 }; } SysRetailRewardRuleEntity[] ds = null; //如果是分销商,需要改变分销商的相关数据 if (rp.Parameters.IsTemplate == 1) { SysRetailRewardRuleEntity en = new SysRetailRewardRuleEntity(); en.IsTemplate = 1; en.CooperateType = rp.Parameters.CooperateType; en.IsDelete = 0; en.CustomerId = loggingSessionInfo.ClientID;//不要少写了CustomerId //获取奖励模板 ds = bll.GetSysRetailRewardRule(en); //ds=bll.QueryByEntity(en, null); } else { SysRetailRewardRuleEntity en = new SysRetailRewardRuleEntity(); en.IsTemplate = 0; //en.CooperateType=rp.Parameters.CooperateType; en.RetailTraderID = rp.Parameters.RetailTraderID; en.IsDelete = 0; en.CustomerId = loggingSessionInfo.ClientID;//不要少写了CustomerId //获取奖励模板 ds = bll.GetSysRetailRewardRule(en); //如果该分销商没有奖励规则,就取他所属的合作类型的奖励模板的数据 //if (ds == null || ds.Count() <= 0) //{ // SysRetailRewardRuleEntity en2 = new SysRetailRewardRuleEntity(); // en2.IsTemplate = 1; // en2.CooperateType = rp.Parameters.CooperateType; // en2.IsDelete = 0; // en2.CustomerId = loggingSessionInfo.ClientID;//不要少写了CustomerId // //获取奖励模板 // ds = bll.GetSysRetailRewardRule(en2); //} } rd.SysRetailRewardRuleList = ds; return(rsp.ToJSON()); }