using ASHermed.SinoInterface.Api.ContractModel.App;
using ASHermed.SinoInterface.Api.ContractModel.Coupon.Entity;
using ASHermed.SinoInterface.Api.ContractModel.Coupon.Model;
using System;
using System.Collections.Generic;
using System.Text;

namespace ASHermed.SinoInterface.Api.IService
{
    public interface ICouponService
    {
        /// <summary>
        /// 同步患者优惠券，更新优惠券过期信息
        /// </summary>
        /// <param name="patId"></param>
        void SynchronizationCouponStatus(int patId);
        List<CouponUserView> GetPatConponForPatId(List<int> patid, int language);
        void IssueCoupons(int patId, List<Online_Coupon> couponNames);
        List<Online_Coupon> GetCoupons(int patId);
        decimal CalculationPrice(CouponUserView couponUser, decimal orderprice, out bool ret);
        decimal GetOrderPrice(int apttype, int deptid, int docid, int language, string key, string type = "sino");
        bool VerificationCouponDoc(string docids, string deptids, string orderdocid, int apttype);
        bool VerificationCouponTime(DateTime starttime, int effectiveTime, DateTime effectiveDateTime);
        bool PediatricsConpon();

        List<ReceivedCoupon> FindReceivedByPhone(string phone,int fID);
        string ReceiveCoupon(ContractModel.App.Pub_Coupon_Flow pubCouponFlow);
    }
}
