예제 #1
0
        public async Task <ApiResult <bool> > Create(CreateOrderPlan bundle)
        {
            var json = JsonConvert.SerializeObject(bundle);

            var httpContent = new StringContent(json, Encoding.UTF8, "application/json");
            var url         = $"/api/OrderPlan";
            var result      = await Create <bool>(url, httpContent);

            return(result);
        }
예제 #2
0
        public async Task <IActionResult> Create([FromBody] CreateOrderPlan request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var result = await _orderPlanService.Create(request);

            if (!result.IsSuccessed)
            {
                return(BadRequest(result));
            }
            return(Ok(result));
        }
예제 #3
0
        public async Task <ApiResult <bool> > Create(CreateOrderPlan bundle)
        {
            var order = _context.OrderPlans.Include(x => x.OrderDetails);

            var orderDetails = new List <OrderDetail>();

            if (bundle.Pack.Length > 0)
            {
                var i = 0;
                foreach (var item in bundle.Pack)
                {
                    orderDetails.Add(new OrderDetail()
                    {
                        Amount      = bundle.Amount[i],
                        IdMaterials = bundle.IdMaterials[i],
                        Unit        = item
                    });

                    i++;
                }
            }

            var oderPlan = new OrderPlan()
            {
                Name          = bundle.Name,
                ExpectedDate  = bundle.ExpectedDate,
                CreatedDate   = DateTime.Now,
                Note          = bundle.Note,
                IdResponsible = bundle.IdResponsible,
                OrderDetails  = orderDetails
            };
            var user = await _userManager.FindByNameAsync(bundle.NameCreator);

            oderPlan.IdCreator = user.Id;

            var code = await _context.ManageCodes.FirstOrDefaultAsync(x => x.Name == bundle.Code);

            var stt = 1;

Location:
            var location = code.Location + stt;

            var str = code.Name + location;

            var checkCode = await _context.OrderPlans.AnyAsync(x => x.Code == str);

            if (checkCode)
            {
                stt++;
                goto Location;
            }

            code.Location = location;
            _context.ManageCodes.Update(code);
            await _context.SaveChangesAsync();

            oderPlan.Code = str;

            _context.OrderPlans.Add(oderPlan);
            await _context.SaveChangesAsync();

            return(new ApiSuccessResult <bool>());
        }
예제 #4
0
        public async Task <IActionResult> Create(CreateOrderPlan bundle)
        {
            var result = await _orderPlanApiClient.Create(bundle);

            return(Ok(result));
        }