public DiscountInfo MakePromotionType(DiscountInfo discountInfo, int PromType) { IPromotion MyProm = null; try { Type type = Type.GetType(ConvertToClass(PromType), true); MyProm = (IPromotion)Activator.CreateInstance(type); this.BindDb(MyProm); MyProm.PatientType = discountInfo.PatientType; MyProm.CardID = discountInfo.AccountID; MyProm.CostType = discountInfo.CostType; MyProm.PromType = PromType; return(MyProm.Calculation(discountInfo)); } catch (Exception err) { throw new Exception(err.Message); return(discountInfo); } }
/// <summary> /// /// </summary> /// <param name="PatientType">病人类型(1.门诊,2.住院)</param> /// <param name="CostType">病人收费类型</param> /// <param name="CardID">病人会员帐户ID</param> /// <param name="Amount">消费总金额</param> /// <param name="Detail">优惠明细"项目明细ID|金额|优惠金额"</param> /// <returns></returns> public decimal MakePromotionType(int PatientType, int CostType, int CardID, decimal Amount, DataTable Detail, DataTable dtPromClass, int PromType, out DataTable outdtPromClass, out DataTable outDetail) { IPromotion MyProm = null; try { Type type = Type.GetType(ConvertToClass(PromType), true); MyProm = (IPromotion)Activator.CreateInstance(type); this.BindDb(MyProm); MyProm.PatientType = PatientType; MyProm.CardID = CardID; MyProm.CostType = CostType; MyProm.PromType = PromType; return(MyProm.Calculation(Amount, dtPromClass, Detail, out outdtPromClass, out outDetail)); } catch (Exception err) { throw new Exception(err.Message); outdtPromClass = null; outDetail = null; return(-1M); } }