Esempio n. 1
0
        private async Task <TResponse <bool> > CanInsert(InsertProductModel request)
        {
            try
            {
                var product = await ReadOnlyRepository.QueryFirstOrDefaultAsync <ProductModel>(SqlQuery.PRODUCT_FIND_BY_NAME,
                                                                                               new
                {
                    request.Name
                });

                if (product.IsSuccess)
                {
                    if (product.Data != null)
                    {
                        return(await Fail <bool>(ErrorEnum.PRODUCT_HAS_EXIST.GetStringValue()));
                    }

                    return(await Ok(true));
                }

                return(await Fail <bool>(product.Message));
            }
            catch (Exception exception)
            {
                return(await Fail <bool>(exception));
            }
        }
Esempio n. 2
0
        public async Task <TResponse <bool> > Add(int userId,
                                                  InsertProductModel request,
                                                  int permissionId)
        {
            try
            {
                var checkValid = await _userService.CheckPermission(userId,
                                                                    permissionId);

                if (checkValid.IsSuccess)
                {
                    var canInsert = await CanInsert(request);

                    if (canInsert.IsSuccess)
                    {
                        var result = await WriteRepository.ExecuteAsync(SqlQuery.PRODUCT_INSERT,
                                                                        new
                        {
                            request.Name,
                            request.ImportPrice,
                            request.SellPrice,
                            request.MinCount,
                            request.MaxCount,
                            request.WarrantyMonth,
                            request.ProductUnitId,
                            request.ProductGroupId,
                            request.ProductStatusId,
                            request.ManufacturerId,
                            request.CountryId,
                            request.Description,
                            UserCreated = userId,
                            DateCreated = DateTime.Now,
                            UserUpdated = userId,
                            DateUpdated = DateTime.Now
                        });

                        if (result.IsSuccess)
                        {
                            if (result.Data > 0)
                            {
                                return(await Ok(true));
                            }

                            return(await Fail <bool>(ErrorEnum.BAD_REQUEST.GetStringValue()));
                        }

                        return(await Fail <bool>(result.Message));
                    }

                    return(await Fail <bool>(canInsert.Message));
                }

                return(await Fail <bool>(checkValid.Message));
            }
            catch (Exception exception)
            {
                return(await Fail <bool>(exception));
            }
        }
 public void 假設輸入資料為(Table table)
 {
     this.inputModel = table.CreateInstance <InsertProductModel>();
 }
Esempio n. 4
0
        public ActionResult Create(InsertProductModel product)
        {
            this.ProductService.InsertProduct(product);

            return(Json(ApiStatusEnum.Success.ToString()));
        }
Esempio n. 5
0
        public void InsertProduct(InsertProductModel insertProductModel)
        {
            var productModel = Mapper.Map <ProductModel>(insertProductModel);

            this.ProductRepository.InsertProduct(productModel);
        }
 public void 假設使用者輸入InsertProductModel資料(Table table)
 {
     this.model = table.CreateInstance <InsertProductModel>();
 }
 public async Task <ActionResult <bool> > Add(InsertProductModel request)
 {
     return(Ok(await _productService.Add(await GetUserId(),
                                         request,
                                         GetPermissionId())));
 }