using DataLoader.Model; using Npgsql; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Data.Common; using System.IO; using System.Linq; using System.Reflection; namespace DataLoader.CS { public class Importor { private static PostgreHelper _ph = null; public static PostgreHelper Helper { get { if (_ph == null) _ph = new PostgreHelper(DbEnum.langfang); return _ph; } } private static readonly string insertMeta = "insert into lf.sys_meta(name, dirid, depid, verid, type, sizes, cs, scale, resolution, gather, batch, descr, create_user) values @name, @dirid, @depid, @verid, @type, @sizes, @cs, @scale, @resolution, @gather, @batch, @descr, @create_user) returning id"; private static readonly string insertMetaFile = "insert into lf.sys_meta_file(name, metaid, fileid, guid, path, sizes, create_user) values (@name, @metaid, @fileid, @guid, @path, @sizes, @create_user)"; public static int CountFilesByGuid(string guid) { string sql = "select count(*) from lf.sys_meta_file where guid=@guid"; DbParameter dp = new NpgsqlParameter("@guid", guid); int rows = Helper.GetCount(sql, dp); return rows; } public static int InsertMeta(SysMeta meta) { // string sql = "INSERT INTO public.data_files(mid, guid, name, ext, path, subs, remark) VALUES (@mid, @guid, @name, @ext, @path, @subs, @remark) returning id"; List list = Tool.GetParams(insertMeta, meta); object obj = Helper.GetScalar(insertMeta, list.ToArray()); return obj == null ? 0 : Convert.ToInt32(obj); } public static int InsertMetaFile(SysMetaFile metaFile) { List list = Tool.GetParams(insertMetaFile, metaFile); object obj = Helper.ExecuteNonQuery(insertMetaFile, list.ToArray()); return obj == null ? 0 : Convert.ToInt32(obj); } public static void Import(ObservableCollection viewDatas, string source, string target) { string[] files = Directory.GetFiles(source); } } }