Example #1
0
 public JsonResult Add_organizor(AddMeetingModel addMeetingModel)
 {
     if (ModelState.IsValid)
     {
         MeetingInfo     meeting         = addMeetingModel.meeting;
         MeetingService  service         = new MeetingService();
         DelegateService delegateService = new DelegateService();
         Status          status          = Status.SUCCESS;
         //调用服务
         if ((status = service.create(ref meeting)) == Status.SUCCESS)
         {
             DeviceService            deviceService = new DeviceService();
             List <DeviceForDelegate> devices       = null;
             status = deviceService.getAllForDelegate(
                 meeting.meetingToStartTime,
                 meeting.meetingStartedTime,
                 out devices);
             status = delegateService.createMultiple(devices, meeting.meetingID, addMeetingModel.delegates);
             if (status != Status.SUCCESS)
             {
                 service.deleteMultipe(meeting.meetingID);
             }
         }
         return(Json(new RespondModel(status, ""), JsonRequestBehavior.AllowGet));
     }
     else
     {
         return(Json(
                    new RespondModel(
                        Status.ARGUMENT_ERROR,
                        ModelStateHelper.errorMessages(ModelState)),
                    JsonRequestBehavior.AllowGet));
     }
 }
        public IActionResult Post(AddMeetingModel model)
        {
            if (ModelState.IsValid)
            {
                if (!_roomService.GetRooms(model.StartTime, model.EndTime).Any(r => r.Id == model.RoomId))
                {
                    return(BadRequest("Room unavailable."));
                }

                var meeting = _meetingService.Add(new Meeting()
                {
                    Title        = model.Title,
                    Description  = model.Description,
                    StartTime    = model.StartTime,
                    EndTime      = model.EndTime,
                    Owner        = _userService.GetCurrentUser(HttpContext),
                    Participants = model.ParticipantIds.Select(pid => _userService.GetById(pid)).ToList(),
                    Room         = _roomService.GetRoomById(model.RoomId)
                });

                return(Created(Url.Action(nameof(Get), new { meeting.Id }), _meetingService.CheckForConflicts(meeting)));
            }
            return(BadRequest());
        }