示例#1
0
        public async Task <IActionResult> SelectOneDayMySchduleInfo([FromBody] SelectOneDayMySchduleInfoRequestDto requestDto)
        {
            if (string.IsNullOrEmpty(requestDto.TherapistGuid))
            {
                requestDto.TherapistGuid = UserID;
            }

            var response = await new ActuatingStationBiz().SelectOneDayMySchduleInfo(requestDto);

            return(Success(response));
        }
        /// <summary>
        /// 查看当天预约班次信息等 请求Dto
        /// </summary>
        /// <param name="requestDto"></param>
        /// <returns></returns>
        public async Task <IEnumerable <SelectOneDayMySchduleInfoResponseDto> > SelectOneDayMySchduleInfo(
            SelectOneDayMySchduleInfoRequestDto requestDto)
        {
            using (var conn = MySqlHelper.GetConnection())
            {
                string whereStr = whereStr = $" And b.schedule_date BETWEEN @BeginDate and  @EndDate ";// " And  b.schedule_date=@BeginDate ";

                if (requestDto.EndDate == null)
                {
                    requestDto.EndDate = requestDto.BeginDate;
                }
                var sql = $@"SELECT
	                                    b.schedule_date,
	                                    b.work_shift_guid,
	                                    c.work_shift_name,
	                                    d.therapist_guid,
	                                    d.therapist_name,
	                                    GROUP_CONCAT( CONCAT( e.start_time, '-', e.end_time ) ORDER BY e.start_time ) AS WorkShiftTimeDuration 
                                    FROM
	                                    t_merchant_schedule_template a
	                                    INNER JOIN t_merchant_schedule b ON a.schedule_template_guid = b.schedule_template_guid 
	                                    AND a.`enable` = b.`enable`
	                                    INNER JOIN t_merchant_work_shift c ON b.work_shift_guid = c.work_shift_guid
	                                    INNER JOIN t_merchant_therapist d ON b.target_guid = d.therapist_guid
	                                    INNER JOIN t_merchant_work_shift_detail e ON c.work_shift_guid = e.work_shift_guid 
                                    WHERE
	                                     d.therapist_guid = @TherapistGuid
	                                    AND a.`enable` = 1 
                                        {whereStr}
                                    GROUP BY
	                                    b.schedule_date,
	                                    b.work_shift_guid,
	                                    c.work_shift_name,
	                                    d.therapist_guid,
	                                    d.therapist_name 
                                    ORDER BY
	                                    b.schedule_date DESC  "    ;

                var result = await conn.QueryAsync <SelectOneDayMySchduleInfoResponseDto>(sql, new { BeginDate = requestDto.BeginDate.Value.Date, EndDate = requestDto.EndDate.Value.Date, requestDto.TherapistGuid });

                return(result);
            }
        }