public async Task <IActionResult> GetDisheMaintenanceAsync(GetDisheMaintenanceAsyncRequestDto request)
        {
            if (string.IsNullOrWhiteSpace(request.HospitalGuid))
            {
                var userModel = await new MealOperatorBiz().GetModelAsync(UserID);
                if (userModel == null)
                {
                    return(Failed(ErrorCode.DataBaseError, "无法获取医院所在信息!"));
                }
                request.HospitalGuid = userModel.HospitalGuid;
            }
            var response = await new MealMenuBiz().GetDisheMaintenanceAsync(request);

            return(Success(response));
        }
        public async Task <IActionResult> GetCheckedDisheMaintenanceAsync(GetCheckedDisheMaintenanceAsyncRequestDto request)
        {
            if (string.IsNullOrWhiteSpace(request.HospitalGuid))
            {
                var userModel = await new MealOperatorBiz().GetModelAsync(UserID);
                if (userModel == null)
                {
                    return(Failed(ErrorCode.DataBaseError, "无法获取医院所在信息!"));
                }
                request.HospitalGuid = userModel.HospitalGuid;
            }
            GetDisheMaintenanceAsyncRequestDto newDto = new GetDisheMaintenanceAsyncRequestDto
            {
                CategoryGuid = request.CategoryGuid,
                Date         = request.Date,
                HospitalGuid = request.HospitalGuid
            };
            var checkedMealMenuModelList = await new MealMenuBiz().GetDisheMaintenanceAsync(newDto);
            var allDisheModel            = await new MealDishesBiz().GetModelsByHospitalGuidAsync(request.HospitalGuid);
            //var valList = checkedMealMenuModelList.Where(a => a.DishesGuid.Any(n => allDisheModel.Any(t => t.DishesGuid.Contains(n, StringComparison.InvariantCultureIgnoreCase))));
            List <GetCheckedDisheMaintenanceAsyncResponseDto> reponse = new List <GetCheckedDisheMaintenanceAsyncResponseDto>();

            foreach (var model in allDisheModel)
            {
                var newModel = new GetCheckedDisheMaintenanceAsyncResponseDto
                {
                    DishesGuid = model.DishesGuid,
                    DishesName = model.DishesName,
                    IsChecked  = false
                };
                foreach (var item in checkedMealMenuModelList)
                {
                    if (model.DishesGuid.Equals(item.DishesGuid))
                    {
                        newModel.IsChecked = true;
                    }
                }
                reponse.Add(newModel);
            }
            return(Success(reponse));
        }
Esempio n. 3
0
        /// <summary>
        /// 菜品维护-查询
        /// </summary>
        /// <param name="hospitalGuid"></param>
        /// <param name="menuDate"></param>
        /// <returns></returns>
        public async Task <List <GetDisheMaintenanceAsyncResponseDto> > GetDisheMaintenanceAsync(GetDisheMaintenanceAsyncRequestDto request)
        {
            using (var conn = MySqlHelper.GetConnection())
            {
                var sql = @"SELECT
	                                    md.dishes_guid,
	                                    md.dishes_name 
                                    FROM
	                                    t_meal_menu AS mm
	                                    LEFT JOIN t_meal_dishes AS md ON mm.dishes_guid = md.dishes_guid 
                                    WHERE
	                                    mm.hospital_guid = @HospitalGuid
	                                    AND mm.menu_date = @Date
	                                    AND mm.category_guid =@CategoryGuid
	                                    AND mm.ENABLE = 1 
                                    GROUP BY
	                                    md.dishes_guid,
	                                    md.dishes_name  "    ;

                var res = await conn.QueryAsync <GetDisheMaintenanceAsyncResponseDto>(sql, new { request.HospitalGuid, Date = request.Date.Value.ToString("yyyy/MM/dd"), request.CategoryGuid });

                return(res?.ToList());
            }
        }