public async Task <IActionResult> Index(ProductTypesSearchModel parameters = null)
        {
            UserContext userContext = session.GetObjectFromJson <UserContext>(UserContext.SESSION_NAME.ToString());

            List <ProductTypes> productTypes = null;

            if (parameters != null)
            {
                ProductTypesManager.Criteria criteria = new ProductTypesManager.Criteria();
                criteria.name = parameters.productTypeName;
                productTypes  = await productTypesManager.ExcuteQuery(criteria);
            }
            else
            {
                productTypes = new List <ProductTypes>();
            }

            ViewData["searchParameters"] = parameters;
            return(View(productTypes));
        }
        public async Task <string> Verification(ProductTypes productTypes)
        {
            string result = "";

            ProductTypesManager.Criteria criteria = new ProductTypesManager.Criteria();
            criteria.name = productTypes.name;


            List <ProductTypes> tempProductTypeses = await productTypesManager.ExcuteQuery(criteria);

            if (tempProductTypeses != null && tempProductTypeses.Count > 0)
            {
                ProductTypes tempProductTypes = tempProductTypeses.FirstOrDefault();
                if ((productTypes.id <= 0 && tempProductTypeses.Count >= 1) ||
                    (productTypes.id > 0 && tempProductTypeses.Count > 1) ||
                    (tempProductTypeses.Count == 1 && tempProductTypes.id != productTypes.id))
                {
                    result = "產品名稱重複";
                }
            }

            return(result);
        }