/// <summary>
        ///     这个方法可以设置成虚方法。
        /// </summary>
        /// <param name="package"></param>
        /// <returns></returns>
        public virtual string Save(TriagePackage package)
        {
            if (!VerifyBeforeSave(package))
            {
                return("SaveTriageInfo1:验证失败");
            }

            return("SaveTriageInfo1:使用第一个实现来保存分诊信息");
        }
        /// <summary>
        ///     这个方法会在调用拦截的方法之后执行。
        /// </summary>
        /// <param name="__result">这个表示拦截的方法的实际的返回值,名字只能是这个</param>
        /// <param name="package">这里是原方法的参数</param>
        /// <returns></returns>
        //[HarmonyPostfix]
        public static bool Postfix(bool __result, TriagePackage package)
        {
            if (__result)
            {
                var stack  = new StackTrace();
                var frames = stack.GetFrames();

                if (frames.ToList().Exists(f => f.GetMethod().Name == "ReRegisterbtn_Click"))
                {
                    UIRepository.PrintStrategy.PrintTriage(package.PatientVisit.PVID.ToString());
                }
            }
            return(__result);
        }
 /// <summary>
 ///     这个方法会在调用拦截的方法之前执行,这个方法的返回值需要是void或者bool,如果返回了false,则表示不再执行原方法
 /// </summary>
 /// <param name="package">这里是原方法的参数</param>
 /// <returns></returns>
 //[HarmonyPrefix]
 public static bool Prefix(TriagePackage package)
 {
     //如果拦截的是实例方法,而不是静态方法,则方法的参数可以增加 实例的类型 __instance这样的参数。这样就可以访问得到实例对象。
     return(true);
 }
 public string Save(TriagePackage package)
 {
     return("SaveTriageInfo2:使用第二个实现来保存分诊信息");
 }
 /// <summary>
 ///     默认实现内的方法,如果是可能被改变的,比如说这种在分诊前验证的。可以设置成虚方法。
 ///     这样如果有后续扩展,可以直接继承SaveTriageInfo1这个类,然后仅仅继承这个方法,这样可以减少很多的工作量。
 /// </summary>
 /// <param name="package"></param>
 /// <returns></returns>
 protected virtual bool VerifyBeforeSave(TriagePackage package)
 {
     return(true);
 }