コード例 #1
0
        /// <summary>
        /// 转换实体方法
        /// </summary>
        /// <param name="item"></param>
        /// <param name="CardBuyToProfitRuleId"></param>
        /// <returns></returns>
        public VipCardProfitRuleEntity GetEntity(CardBuyToProfitRuleInfoInfo item)
        {
            VipCardProfitRuleEntity VipCardProfitRule = new VipCardProfitRuleEntity()
            {
                CardSalesProfitPct      = item.CardSalesProfitPct,
                FirstCardSalesProfitPct = item.FirstCardSalesProfitPct,
                FirstRechargeProfitPct  = item.FirstRechargeProfitPct,
                IsApplyAllUnits         = item.IsApplyAllUnits,
                IsConsumeRule           = 0,
                ProfitOwner             = item.ProfitOwner,
                RechargeProfitPct       = item.RechargeProfitPct,
                IsDelete                = item.IsDelete,
                VipCardTypeID           = item.VipCardTypeID,
                UnitCostRebateProfitPct = 0,
                RefId = item.CardBuyToProfitRuleId
            };

            return(VipCardProfitRule);
        }
コード例 #2
0
 /// <summary>
 /// 更新
 /// </summary>
 /// <param name="pEntity">实体实例</param>
 /// <param name="pTran">事务实例,可为null,如果为null,则不使用事务来更新</param>
 public void Update(VipCardProfitRuleEntity pEntity, IDbTransaction pTran)
 {
     _currentDAO.Update(pEntity, pTran);
 }
コード例 #3
0
 /// <summary>
 /// 创建一个新实例
 /// </summary>
 /// <param name="pEntity">实体实例</param>
 public void Create(VipCardProfitRuleEntity pEntity)
 {
     _currentDAO.Create(pEntity);
 }
コード例 #4
0
 /// <summary>
 /// 分页根据实体条件查询实体
 /// </summary>
 /// <param name="pQueryEntity">以实体形式传入的参数</param>
 /// <param name="pOrderBys">排序组合</param>
 /// <returns>符合条件的实体集</returns>
 public PagedQueryResult <VipCardProfitRuleEntity> PagedQueryByEntity(VipCardProfitRuleEntity pQueryEntity, OrderBy[] pOrderBys, int pPageSize, int pCurrentPageIndex)
 {
     return(_currentDAO.PagedQueryByEntity(pQueryEntity, pOrderBys, pPageSize, pCurrentPageIndex));
 }
コード例 #5
0
 /// <summary>
 /// 根据实体条件查询实体
 /// </summary>
 /// <param name="pQueryEntity">以实体形式传入的参数</param>
 /// <param name="pOrderBys">排序组合</param>
 /// <returns>符合条件的实体集</returns>
 public VipCardProfitRuleEntity[] QueryByEntity(VipCardProfitRuleEntity pQueryEntity, OrderBy[] pOrderBys)
 {
     return(_currentDAO.QueryByEntity(pQueryEntity, pOrderBys));
 }
コード例 #6
0
 /// <summary>
 /// 删除
 /// </summary>
 /// <param name="pEntity"></param>
 public void Delete(VipCardProfitRuleEntity pEntity)
 {
     _currentDAO.Delete(pEntity);
 }
コード例 #7
0
 /// <summary>
 /// 更新
 /// </summary>
 /// <param name="pEntity">实体实例</param>
 public void Update(VipCardProfitRuleEntity pEntity)
 {
     _currentDAO.Update(pEntity);
 }
コード例 #8
0
        protected override SetVipCardProfitRuleRD ProcessRequest(DTO.Base.APIRequest <SetVipCardProfitRuleRP> pRequest)
        {
            var rd        = new SetVipCardProfitRuleRD();
            var parameter = pRequest.Parameters;
            LoggingSessionInfo   loggingSessionInfo = new SessionManager().CurrentUserLoginInfo;
            VipCardProfitRuleBLL RuleService        = new VipCardProfitRuleBLL(loggingSessionInfo);
            IDbTransaction       tran = new TransactionHelper(loggingSessionInfo).CreateTransaction();

            #region  除分润规则
            foreach (var item in parameter.CardBuyToProfitRuleInfoDeleteList)
            {
                RuleService.Delete(item.CardBuyToProfitRuleId, tran);
            }
            #endregion

            #region 新增分润规则
            foreach (var item in parameter.CardBuyToProfitRuleInfoAddList)
            {
                VipCardProfitRuleEntity model = RuleService.GetEntity(item);
                model.CustomerID = loggingSessionInfo.ClientID;
                RuleService.Create(model, tran);
                //处理门店和续费充值方式
                RuleService.SetUnitAndProfitRule(item, model.CardBuyToProfitRuleId, loggingSessionInfo, tran);
            }
            #endregion

            #region 修改分润规则  如果修改了 充值分润 就新入一条数据 FirstRechargeProfitPct
            foreach (var item in parameter.CardBuyToProfitRuleInfoUpdateList)
            {
                var entity = RuleService.GetByID(item.CardBuyToProfitRuleId);
                if (entity == null)
                {
                    tran.Rollback();
                    throw new APIException("分润规则为【" + item.CardBuyToProfitRuleId + "】 的信息已被删除!无法操作该数据")
                          {
                              ErrorCode = 135
                          };
                }

                //业务逻辑:如果修改了 FirstRechargeProfitPct 字段就重新入一条数据
                if (entity.FirstRechargeProfitPct == item.FirstRechargeProfitPct) //只需要修改字段信息
                {
                    VipCardProfitRuleEntity model = RuleService.GetEntity(item);
                    model.CardBuyToProfitRuleId = item.CardBuyToProfitRuleId;
                    model.CustomerID            = loggingSessionInfo.ClientID;
                    model.IsDelete = item.IsDelete;
                    RuleService.Update(model, tran);
                }
                else //新增激励规则信息
                {
                    VipCardProfitRuleEntity model = RuleService.GetEntity(item);
                    model.CustomerID = loggingSessionInfo.ClientID;
                    RuleService.Delete(item.CardBuyToProfitRuleId, tran);
                    RuleService.Create(model, tran);
                    item.CardBuyToProfitRuleId = model.CardBuyToProfitRuleId;
                }
                //处理门店和续费充值方式
                RuleService.SetUnitAndProfitRule(item, item.CardBuyToProfitRuleId, loggingSessionInfo, tran);
            }
            #endregion
            tran.Commit();
            return(rd);
        }