コード例 #1
0
        public async Task <QueryResult <TResponse> > Handle(TQuery query, RequestContext context)
        {
            var handlerInfo = handlerFeatureInfoProvider.GetHandlerInfo(query.GetType().Name);

            if (handlerInfo == null)
            {
                return(await decoratedRequestHandler.Handle(query, context));
            }

            var allFeaturesEnabled = handlerInfo.Features.All(feature =>
            {
                return(featureSettingsHolder.Settings.FirstOrDefault(x => x.FeatureName == feature).Enabled(context));
            });

            if (!allFeaturesEnabled)
            {
                return(QueryResult <TResponse> .WithCode(default(TResponse), Msg.FeatureNotEnabled));
            }

            var usedFeatureHeaders = handlerInfo.Features.Select(featureName => $"{Header.Prefix}-{featureName}");

            foreach (var header in usedFeatureHeaders)
            {
                context.Add(header, handlerInfo.Name);
            }

            return(await decoratedRequestHandler.Handle(query, context));
        }
コード例 #2
0
 void AddMailSources(RequestContext context)
 {
     foreach (KeyValuePair <string, MailAddress> kv in DocumentSourcesMailAddress)
     {
         Assert.DoesNotThrow(() => context.Add(new DocumentSource(kv.Key, kv.Value)));
     }
 }
コード例 #3
0
ファイル: MimeFieldsFacts.cs プロジェクト: ywangmaxmd/nhin-d
 void AddMailSources(RequestContext context)
 {
     foreach (KeyValuePair <string, MailAddress> kv in DocumentSourcesMailAddress)
     {
         Assert.Null(Record.Exception(() => context.Add(new DocumentSource(kv.Key, kv.Value))));
     }
 }
コード例 #4
0
 public IActionResult Create([FromBody] Node node)
 {
     // var options = new DbContextOptionsBuilder<MemoryContext>()
     //     .UseInMemoryDatabase(databaseName: "meorydb")
     //     .Options;
     // using (_context = new MemoryContext(options))
     // {
     //     _context.Nodes.Add(node);
     //     _context.SaveChanges();
     // }
     if (node is null)
     {
         return(NotFound());
     }
     _context.Add(node);
     _context.SaveChanges();
     return(Ok(node));
 }
コード例 #5
0
        public async Task <IActionResult> Create([Bind("DepartmentsId,Department")] Departments departments)
        {
            if (ModelState.IsValid)
            {
                _context.Add(departments);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(departments));
        }
コード例 #6
0
        public async Task <IActionResult> Create([Bind("Id,Name,Content,Status,Date")] Request request)
        {
            if (ModelState.IsValid)
            {
                var status = new StatusChange()
                {
                    Date      = request.Date,
                    RequestId = request.Id,
                    Request   = request,
                    Status    = request.Status,
                    Comment   = "Создана новая заявка"
                };
                request.StatusChange.Add(status);
                _context.Add(status);
                _context.Add(request);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(request));
        }
コード例 #7
0
        public IActionResult Add(AddRequestModel model)
        {
            var request = new Request
            {
                OrderId   = model.OrderId,
                AccountId = accountContext.findIdByLogin(User.Identity.Name),
                Text      = model.Text,
                Date      = model.Date
            };

            requestContext.Add(request);
            requestContext.SaveChanges();
            return(RedirectToAction("Success", "Request"));
        }
コード例 #8
0
        public async Task <IActionResult> Create([Bind("Id,ClientId,NamaMahasiswa,NIMMahasiswa,DepartureDate,ReturnDate,Reason,Destination,Status")] Request request)
        {
            if (HttpContext.Session.GetString("Username") == null)
            {
                return(RedirectToAction("Login", "Account", new { area = "" }));
            }
            if (ModelState.IsValid)
            {
                _context.Add(request);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(request));
        }
コード例 #9
0
        public async Task <IActionResult> Create([Bind("Id,Name,Email,Password,Created,Phone")] Account account)
        {
            if (HttpContext.Session.GetString("Username") == null)
            {
                return(RedirectToAction("Login", "Account", new { area = "" }));
            }
            ViewBag.Username = HttpContext.Session.GetString("Username");
            if (ModelState.IsValid)
            {
                _context.Add(account);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(account));
        }
コード例 #10
0
ファイル: EventController.cs プロジェクト: nolan23/AdminIB
        public async Task <IActionResult> Create([Bind("Id,NamaEvent,StartDate,EndDate,Description,Penyelenggara,Keterangan")] Event @event)
        {
            if (HttpContext.Session.GetString("Username") == null)
            {
                return(RedirectToAction("Login", "Account", new { area = "" }));
            }
            ViewBag.Username = HttpContext.Session.GetString("Username");
            if (ModelState.IsValid)
            {
                _context.Add(@event);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(@event));
        }
コード例 #11
0
        public async Task <IActionResult> Create([Bind("RequestId,WorkRequest,Department")] Request request)
        {
            var depts = _context.Departments.ToList();

            if (ModelState.IsValid)
            {
                foreach (var item in depts)
                {
                    if (request.Department == item.DepartmentsId.ToString())
                    {
                        request.Department = item.Department;
                    }
                }
                if (request.Department == "IT")
                {
                    request.User       = this.User.Identity.Name;
                    request.Urgent     = true;
                    request.Pending    = true;
                    request.InProgress = false;
                    request.Closed     = false;
                    request.Created    = DateTime.Now;
                }
                else
                {
                    request.User       = this.User.Identity.Name;
                    request.Urgent     = false;
                    request.Pending    = true;
                    request.InProgress = false;
                    request.Closed     = false;
                    request.Created    = DateTime.Now;
                }
                _context.Add(request);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(request));
        }
コード例 #12
0
 public void MakeRequest(Request request)
 {
     _requestContext.Add(request);
 }
コード例 #13
0
        public bool LoadToDb(IFormFile file)
        {
            //RequestRepository repository = new RequestRepository(_context);
            OrderService orderService = new OrderService(_context);

            var result = string.Empty;

            //read json file to string
            using (var reader = new StreamReader(file.OpenReadStream()))
            {
                result = reader.ReadToEnd();
            }

            RequestsJson rqst;

            //convert json to list of requests
            try
            {
                rqst = JsonConvert.DeserializeObject <RequestsJson>(result);
            }
            catch (JsonReaderException exception)
            {
                Debug.WriteLine(exception.Message);
                return(false);
            }

            if (rqst != null && rqst.Requests != null)
            {
                foreach (RequestJson rq in rqst.Requests)
                {
                    Request request = new Request
                    {
                        ClientId  = int.Parse(rq.ClientId ?? ""),
                        Name      = rq.Name ?? "",
                        Price     = Double.Parse(rq.Price ?? "", CultureInfo.InvariantCulture),
                        Quantity  = int.Parse(rq.Quantity ?? ""),
                        RequestId = long.Parse(rq.RequestId ?? "", CultureInfo.InvariantCulture)
                    };

                    var order = _context.Orders.Where(m => m.ClientId == request.ClientId &&
                                                      m.RequestId == request.RequestId);

                    if (order.Count() != 0)
                    {
                        request.Order = order.First();
                        order.First().Amount += request.Price * request.Quantity;
                    }
                    else
                    {
                        Order newOrder = new Order
                        {
                            ClientId  = request.ClientId,
                            RequestId = request.RequestId,
                            Amount    = request.Price * request.Quantity
                        };
                        _context.Add(newOrder);

                        request.Order = newOrder;
                    }

                    _context.Requests.Add(request);
                    _context.SaveChanges();
                }
                return(true);
            }

            return(false);
        }