/// <summary>
        /// 添加到数据库
        /// </summary>
        /// <param name="oData"></param>
        /// <param name="coachWageSubList"></param>
        /// <exception cref="Comm.YYException.YYException"></exception>
        private void AddToDB(Models.RequestModel.CreateCoachWageRequest oData, IList <Sys.Models.CoachWages_Sub> coachWageSubList)
        {
            if (coachWageSubList == null || coachWageSubList.Count == 0)
            {
                return;
            }

            Sys.Models.CoachWages coachWage = new Sys.Models.CoachWages()
            {
                AddTime       = DateTime.Now,
                CoachFullName = oData.CurrentCoachFullName,
                CoachID       = oData.CurrentCoachId,
                VenueID       = oData.VenueID,
                WorkDate      = Convert.ToDateTime(oData.WorkDate),
                Price         = coachWageSubList.Sum(c => c.CoachPrice),
                State         = 0,
                Remark        = "待发工资录入",
            };

            bool isExist = false;// IsExist(coachWage.CoachID.Value, coachWage.VenueID.Value, coachWage.WorkDate.Value.ToString("yyyy-MM-dd"));

            if (isExist)
            {
                throw new Comm.YYException.YYException(string.Format("{0} {1} 工资已经录入", coachWage.CoachFullName, oData.WorkDate));
            }
            else
            {
                bool flag = PrePayCoachMoney(coachWage, coachWageSubList);
                if (!flag)
                {
                    throw new Comm.YYException.YYException(string.Format("{0} {1} 工资已经录入", coachWage.CoachFullName, oData.WorkDate));
                }
            }
        }
        /// <summary>
        /// 插入工资表 修改课程表
        /// </summary>
        /// <param name="coachWage"></param>
        /// <param name="coachWageSubList"></param>
        /// <returns></returns>
        private bool PrePayCoachMoney(Sys.Models.CoachWages coachWage, IList <Sys.Models.CoachWages_Sub> coachWageSubList)
        {
            System.Data.IDbConnection connection = Comm.Helper.DapperHelper.Instance;
            connection.Open();
            System.Data.IDbTransaction transaction = connection.BeginTransaction();

            using (connection)
            {
                try
                {
                    //插入工资主表
                    var coachWageId = connection.Insert <Sys.Models.CoachWages>(coachWage, transaction);

                    //更新这个排课表、约课表
                    coachWageSubList.ToList().ForEach((c) =>
                    {
                        c.WagesID = coachWageId;
                        //更新这个排课表
                        connection.Execute("UPDATE[dbo].[TeachingSchedule] SET [State] =@state WHERE PKID=@pkID", new
                        {
                            state = Convert.ToInt32(Sys.Models.StateEnum.TeachingSchedule.PayCoachMoney),
                            pkID  = c.PKID
                        }, transaction);

                        //更新约课表
                        connection.Execute("UPDATE[dbo].[Curriculum] SET [State] =@state WHERE CurriculumID=@curriculumID", new
                        {
                            state        = Convert.ToInt32(Sys.Models.StateEnum.Curriculum.PayCoachMoney),
                            curriculumID = c.CurriculumID
                        }, transaction);
                    });

                    //插入工资字表
                    connection.Insert <Sys.Models.CoachWages_Sub>(coachWageSubList, transaction);

                    transaction.Commit();
                }
                catch (Exception ex)
                {
                    logs.Error("预发工资失败", ex);
                    transaction.Rollback();
                    return(false);
                }
            }

            return(true);
        }