暂无描述

aleukhin 8686809791 1 1 月之前
.vs 38de83f01d 1 1 月之前
scrs 38de83f01d 1 1 月之前
wpf_connection3 38de83f01d 1 1 月之前
wrrer 8686809791 1 1 月之前
readme.md 38de83f01d 1 1 月之前
wpf_connection3.sln 38de83f01d 1 1 月之前

readme.md

ApiDataProvider.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

namespace wpf_connection3.model
{
    public class ApiDataProvider : DBDataProvider
    {
        private static string baseUrl = "http://localhost:5061";
        public override IEnumerable<Product> getProduct(int pageNum)
        {
            var client = new HttpClient();
            var body = client.GetStringAsync($"{baseUrl}/product?pageNum={pageNum}").Result;
            return JsonConvert.DeserializeObject<Product[]>(body);
        }

        public override void setOrder(string condition)
        {
            var client = new HttpClient();
            var jsonString = JsonConvert.SerializeObject(condition);

            var json = new StringContent(jsonString, Encoding.UTF8, "aplication/json");

            var body = client.PutAsync($"{baseUrl}/setOrder", json);
        }

        public override List<ProductType> getProductTypes()
        {
            var client = new HttpClient();
            var body = client.GetStringAsync($"{baseUrl}/productType").Result;
            return JsonConvert.DeserializeObject<List<ProductType>>(body);
        }

        public override void setMinCostForAgent(decimal minCost, int[] ids)
        {
            var client = new HttpClient();
            var jsonString = JsonConvert.SerializeObject(ids);
            var json = new StringContent(jsonString, Encoding.UTF8, "application/json");
            var body = client.PutAsync($"{baseUrl}/minCostForAgent/{minCost}", json);
        }

        public override int getArticleCheck(string article, int id)
        {
            var client = new HttpClient();
            var body = client.GetStringAsync($"{baseUrl}/articleCheck/{article}/{id}").Result;
            return JsonConvert.DeserializeObject<int>(body);
        }

        public override void saveProduct(Product product)
        {
            var client = new HttpClient();
            var jsonString = JsonConvert.SerializeObject(product);
            var json = new StringContent(jsonString, Encoding.UTF8, "application/json");
            if (product.ID != 0)
            {
                var body = client.PutAsync($"{baseUrl}/product", json);
            }
            else
            {
                var body = client.PostAsync($"{baseUrl}/product", json);
            }
        }

        public override int saleCount(int ID)
        {
            var client = new HttpClient();
            var body = client.GetStringAsync($"{baseUrl}/saleCount/{ID}").Result;
            return JsonConvert.DeserializeObject<int>(body);
        }

        public override void removeProductCostHistory(int ID)
        {
            var client = new HttpClient();
            var body = client.DeleteAsync($"{baseUrl}/removeProductCostHistory/{ID}");
        }

        public override List<ProductMaterial> getProductMaterials(int ID)
        {
            var client = new HttpClient();
            var body = client.GetStringAsync($"{baseUrl}/productMaterial/{ID}").Result;
            return JsonConvert.DeserializeObject<List<ProductMaterial>>(body);
        }

        public override void deleteProductMaterial(int productId, int materialId)
        {
            var client = new HttpClient();
            var body = client.DeleteAsync($"{baseUrl}/productMaterial/{productId}/{materialId}");
        }

        public override List<Material> getMaterials()
        {
            var client = new HttpClient();
            var body = client.GetStringAsync($"{baseUrl}/material").Result;
            return JsonConvert.DeserializeObject<List<Material>>(body);
        }

        public override void addProductMaterial(ProductMaterial material)
        {
            var client = new HttpClient();
            var jsonString = JsonConvert.SerializeObject(material);
            var json = new StringContent(jsonString, Encoding.UTF8, "application/json");
            var body = client.PostAsync($"{baseUrl}/productMaterial", json).Result;
        }
    }
}