| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- using Fuel01.Models;
- using Newtonsoft.Json;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Xml.Linq;
- namespace Fuel01
- {
- public static class DbUtil
- {
- public static T LoadFromJson<T>(string filename, DataSet ds) where T : class
- {
- if (!File.Exists(filename))
- {
- return null;
- }
- ds.Clear();
- var datas = File.ReadAllText(filename);
- var tmData = JsonConvert.DeserializeObject<DataSet1.tb_epreuveDataTable>(datas);
- return tmData as T;
- }
- public static T LoadFromJson<T> (string filename, T ds)
- {
- if (!File.Exists(filename))
- {
- return default(T);
- }
- var datas = File.ReadAllText(filename);
- var tmData = JsonConvert.DeserializeObject<T>(datas);
- return tmData;
- }
- public static DataSet1.tb_prestaDataTable LoadPrestaFromJson(string filename,List<Produit> lprod)
- {
- if (!File.Exists(filename))
- {
- return default;
- }
- var datas = File.ReadAllText(filename);
- var tmData = JsonConvert.DeserializeObject<List<PrestaSta>>(datas);
- var prestas = new List<Presta>();
- foreach (var data in tmData)
- {
- if (data.autres != null)
- {
- foreach (var autre in data.autres)
- {
- var prod= lprod.FirstOrDefault(x=>x.lib_prod.Equals(autre.lib_prod))?.key_prod;
- if (prod != null)
- {
- var presta = new Presta();
- presta.sta_pr = data.sta_pr;
- presta.prod_pr = prod;
- presta.kind_pr = "Service";
- presta.unite_pr = autre.unite_pr;
- presta.pu_pr = double.Parse(autre.pu_pr);
- presta.tva_pr = double.Parse(autre.tva_pr);
- presta.ttc_pr = double.Parse(autre.ttc_pr);
- prestas.Add(presta);
- }
- }
- }
- if (data.carburants != null)
- {
- foreach (var autre in data.carburants)
- {
- var prod = lprod.FirstOrDefault(x => x.lib_prod.Equals(autre.lib_prod))?.key_prod;
- if (prod != null)
- {
- var presta = new Presta();
- presta.sta_pr = data.sta_pr;
- presta.prod_pr = prod;
- presta.kind_pr = "Carburant";
- presta.unite_pr = autre.unite_pr;
- presta.pu_pr = double.Parse(autre.pu_pr);
- presta.tva_pr = double.Parse(autre.tva_pr);
- presta.ttc_pr = double.Parse(autre.ttc_pr);
- prestas.Add(presta);
- }
- }
- }
- }
- var json = JsonConvert.SerializeObject(prestas, Formatting.Indented);
- var returnData = JsonConvert.DeserializeObject<DataSet1.tb_prestaDataTable>(json);
- return returnData;
- }
- public static T LoadFromJson<T>(string filename)
- {
- if (!File.Exists(filename))
- {
- return default(T);
- }
- var datas = File.ReadAllText(filename);
- var tmData = JsonConvert.DeserializeObject<T>(datas);
- return tmData;
- }
- public static bool SaveToJson(object o,string filename)
- {
- try
- {
- var result = JsonConvert.SerializeObject(o, Formatting.Indented);
- File.WriteAllText(filename, result);
- return true;
- }
- catch
- {
- return false;
- }
- }
- public static bool SaveToJson<T>(string filename, T ds)
- {
- try
- {
- var result = JsonConvert.SerializeObject(ds, Formatting.Indented);
- File.WriteAllText(filename, result);
- return true;
- }
- catch
- {
- return false;
- }
- }
-
- public static List<Produit> GetProduits()
- {
- XDocument xRoot = XDocument.Load(Program.folder + @"\param\produit.xml");
- var data = from item in xRoot.Descendants("tb_prod")
- orderby item.Element("type_prod").Value, item.Element("lib_prod").Value
- select new Produit()
- {
- key_prod = item.Element("key_prod").Value,
- lib_prod = item.Element("lib_prod").Value,
- type_prod = item.Element("type_prod").Value
- };
- return data.ToList();
- }
- }
- }
|