Exemplo n.º 1
0
        /// <summary>
        /// 插入 教练收入 原始数据, 供后面教练收入统计用
        /// </summary>
        public string InsertCoachIncome(string courseId, int studentNumber)
        {
            var courseInfo = GetCourseInfo(courseId).FirstEntity <CoachCourse>();

            if (courseInfo == null)
            {
                return("未获取到课程信息, 不能结束课程");
            }

            //组装 教练收入数据
            var obj = new CoachIncome();

            obj.CoachId    = courseInfo.CoachId;
            obj.StudentId  = courseInfo.StudentId;
            obj.CourseId   = courseInfo.Id;
            obj.CourseType = courseInfo.Type;


            obj.OriginalMoney = GetCourseTotalMoney(courseId);  // 一节课总收入
            // 教练一节课实际收入=一节课总收入 * 教练分成比例
            obj.CoachRealIncome = obj.OriginalMoney
                                  * (courseInfo.CoachCommissionPercentage / 100);
            // 机构一节课实际收入=一节课总收入 *(1- 教练分成比例)* 机构分成比例(机构的分成比例是和我们悦动力的结算比例)
            obj.OrganizationRealIncome = obj.OriginalMoney
                                         * (1 - courseInfo.CoachCommissionPercentage / 100)
                                         * (courseInfo.OrganizationCommissionPercentage / 100);

            obj.CoachCommissionPercentage        = courseInfo.CoachCommissionPercentage;        //教练分成比例
            obj.OrganizationCommissionPercentage = courseInfo.OrganizationCommissionPercentage; //机构分成比例
            obj.RowState = RowState.Added;
            //插入 教练收入数据
            List <EntityBase> entites = new List <EntityBase>();

            entites.Add(obj);
            obj.TrySetNewEntity();
            var result = DbContext.GetInstance().Execute(CommandHelper.CreateSave(entites));

            if (result.IsSuccess == false)
            {
                return(result.Message);
            }

            return("");
        }
Exemplo n.º 2
0
        private Response SaveCoachIncome(CoachCourse coachCourse)
        {
            //获取教练的收入
            var     coach = CoachHelper.Instance.GetCoach(coachCourse.CoachId);
            decimal coachOriginalIncome = 0;
            decimal coachRealIncome     = 0;

            if (coachCourse.Type == CoachDic.PrivateCourse)
            {
                var coachUnitPrice = CoachHelper.Instance.GetCoachUnitPrice(CoachDic.DefaultCityId, coach.Grade);
                coachOriginalIncome = coachUnitPrice * 1;
                coachRealIncome     = coachUnitPrice * 1 * (coach.CommissionPercentage / 100);
            }
            else if (coachCourse.Type == CoachDic.BigCourse)
            {
                var bigUnitPrice = CoachHelper.Instance.GetBigCourseInfo(coachCourse.BigCourseId);
                if (bigUnitPrice != null)
                {
                    var studentNumber = CoachHelper.Instance.GetCoachCoursePersonInfoList(coachCourse.Id).Count;
                    coachOriginalIncome = bigUnitPrice.Price * studentNumber;
                    coachRealIncome     = bigUnitPrice.Price * studentNumber * (coach.CommissionPercentage / 100);
                }
            }
            //构造实体保持教练收入
            CoachIncome obj = new CoachIncome();

            obj.CoachId                   = coachCourse.CoachId;
            obj.CourseId                  = coachCourse.Id;
            obj.CourseType                = coachCourse.Type;
            obj.OriginalMoney             = coachOriginalIncome;
            obj.CoachCommissionPercentage = coach.CommissionPercentage;
            obj.CoachRealIncome           = coachRealIncome;
            obj.RowState                  = RowState.Added;
            List <EntityBase> entites = new List <EntityBase>();

            entites.Add(obj);
            obj.TrySetNewEntity();

            var result = DbContext.GetInstance().Execute(CommandHelper.CreateSave(entites));

            return(result);
        }