/// <summary> /// 向down_files添加一个文件夹任务 /// </summary> /// <param name="inf"></param> /// <returns></returns> public static int Add(ref DnFolderInf inf) { StringBuilder sb = new StringBuilder(); sb.Append("insert into down_files("); sb.Append("f_uid"); sb.Append(",f_mac"); sb.Append(",f_pathLoc"); sb.Append(",f_fdID)"); sb.Append(" values("); sb.Append("@f_uid"); sb.Append(",@f_mac"); sb.Append(",@f_pathLoc"); sb.Append(",@f_fdID);"); // sb.Append("select @@IDENTITY"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddInt(ref cmd, "@f_uid", inf.uid); db.AddString(ref cmd, "@f_mac", inf.mac, 50); db.AddString(ref cmd, "@f_pathLoc", inf.pathLoc, 255); db.AddInt(ref cmd, "@f_fdID", inf.idSvr); inf.idF = Convert.ToInt32(db.ExecuteScalar(ref cmd)); return(inf.idF); }
/// <summary> /// 从xdb_folders中复制数据到down_folders中 /// 从xdb_files中复制数据到down_files中 /// </summary> /// <param name="fid">xdb_folders中的fd_id</param> public static int Add(ref DnFolderInf dfi) { StringBuilder sb = new StringBuilder(); sb.Append("insert into down_folders(fd_name"); sb.Append(",fd_uid"); sb.Append(",fd_mac"); sb.Append(",fd_pathLoc"); sb.Append(",fd_id_old)"); // sb.Append(" values(@fd_name"); sb.Append(",@fd_uid"); sb.Append(",@fd_mac"); sb.Append(",@fd_pathLoc"); sb.Append(",@fd_id_old)"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddString(ref cmd, "@fd_name", dfi.name, 255); db.AddInt(ref cmd, "@fd_uid", dfi.uid); db.AddString(ref cmd, "@fd_mac", dfi.mac, 255); db.AddString(ref cmd, "@fd_pathLoc", dfi.pathLoc, 255); db.AddInt(ref cmd, "@fd_id_old", dfi.fdID); cmd.Connection.Open(); cmd.ExecuteNonQuery(); //获取新插入的ID cmd.Parameters.Clear(); cmd.CommandText = "select @@IDENTITY;"; object fd_id = cmd.ExecuteScalar(); cmd.Connection.Close(); return(Convert.ToInt32(fd_id)); }
/// <summary> /// 删除文件 /// </summary> /// <param name="fid"></param> public void Delete(int fid, int uid, string mac) { string sql = "delete from down_files where f_id=@f_id and f_uid=@f_uid and f_mac=@f_mac;"; DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql); db.AddInt(ref cmd, "@f_id", fid); db.AddInt(ref cmd, "@f_uid", uid); db.AddString(ref cmd, "@f_mac", mac, 50); db.ExecuteNonQuery(ref cmd); }
public static void Update(string fid, string uid, string mac, string percent) { string sql = "update down_folders set fd_percent=@percent where fd_id=@fid and fd_uid=@uid and fd_mac=@mac"; DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql); db.AddString(ref cmd, "@percent", percent, 7); db.AddInt(ref cmd, "@fid", int.Parse(fid)); db.AddInt(ref cmd, "@uid", int.Parse(uid)); db.AddString(ref cmd, "@mac", mac, 50); db.ExecuteNonQuery(ref cmd); }
public void UpdateLengthLoc(int fid, int uid, string mac, string lenLoc, string percent) { string sql = "update down_files set f_lengthLoc=@lenLoc,f_percent=@f_percent where f_id=@f_id and f_uid=@f_uid and f_mac=@f_mac;"; DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql); db.AddString(ref cmd, "@lenLoc", lenLoc, 19); db.AddString(ref cmd, "@f_percent", percent, 6); db.AddInt(ref cmd, "@f_id", fid); db.AddInt(ref cmd, "@f_uid", uid); db.AddString(ref cmd, "@f_mac", mac, 50); db.ExecuteNonQuery(ref cmd); }
/// <summary> /// 获取所有未下载完的文件和文件夹列表 /// </summary> /// <returns></returns> public static string GetAll(int uid, string mac) { StringBuilder sb = new StringBuilder(); sb.Append("select "); sb.Append(" f_id"); sb.Append(",f_mac"); sb.Append(",f_pathLoc"); sb.Append(",f_pathSvr"); sb.Append(",f_lengthLoc"); sb.Append(",f_percent"); sb.Append(",fd_name"); sb.Append(",fd_id"); sb.Append(",fd_pathLoc"); sb.Append(",fd_id_old"); sb.Append(",fd_percent"); sb.Append(" from down_files as f"); sb.Append(" left join down_folders as fd"); sb.Append(" on fd.fd_id = f.f_fdID"); sb.Append(" where f_uid=@f_uid and f_mac=@f_mac and f_complete=0"); //string sql = "select * from down_files where f_uid=@f_uid and f_mac=@f_mac and f_complete=0;"; DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddInt(ref cmd, "@f_uid", uid); db.AddString(ref cmd, "@f_mac", mac, 50); DbDataReader r = db.ExecuteReader(ref cmd); JArray files = new JArray(); while (r.Read()) { DnFileInf f = new DnFileInf(); f.idSvr = r.GetInt32(0); f.mac = r.GetString(1); f.pathLoc = r.IsDBNull(2) ? string.Empty : r.GetString(2); f.pathSvr = r.IsDBNull(3) ? string.Empty : r.GetString(3); f.lengthLoc = r.IsDBNull(4) ? string.Empty : r.GetString(4); f.percent = r.IsDBNull(5) ? "0%" : r.GetString(5); f.name = Path.GetFileName(f.pathLoc); f.fdID = r.IsDBNull(7)? 0 : r.GetInt32(7); //文件夹 if (0 != f.fdID) { f.name = r.IsDBNull(6) ? string.Empty : r.GetString(6); f.fdTask = true; f.percent = r.IsDBNull(10) ? string.Empty : r.GetString(10); f.pathLoc = r.IsDBNull(8) ? string.Empty : r.GetString(8); } files.Add((JObject)JToken.FromObject(f)); } r.Close(); //JArray arrFiles = new JArray(); //foreach (DnFileInf f in files) //{ // arrFiles.Add((JObject)JToken.FromObject(f)); //} return(files.ToString()); }
/// <summary> /// 批量添加目录 /// </summary> /// <param name="con"></param> protected override void save_folders(DbHelper db) { StringBuilder sb = new StringBuilder(); sb.Append("insert into up6_folders("); sb.Append(" f_id"); sb.Append(",f_pid"); sb.Append(",f_pidRoot"); sb.Append(",f_uid"); sb.Append(",f_nameLoc"); sb.Append(",f_pathLoc"); sb.Append(",f_pathSvr"); sb.Append(",f_pathRel"); sb.Append(",f_complete"); sb.Append(") values ("); sb.Append(" :f_id"); sb.Append(",:f_pid"); sb.Append(",:f_pidRoot"); sb.Append(",:f_uid"); sb.Append(",:f_nameLoc"); sb.Append(",:f_pathLoc"); sb.Append(",:f_pathSvr"); sb.Append(",:f_pathRel"); sb.Append(",:f_complete"); sb.Append(")"); var cmd = db.connection.CreateCommand(); cmd.CommandText = sb.ToString(); cmd.CommandType = System.Data.CommandType.Text; db.AddString(ref cmd, ":f_id", string.Empty, 32); db.AddString(ref cmd, ":f_pid", string.Empty, 32); db.AddString(ref cmd, ":f_pidRoot", string.Empty, 32); db.AddInt(ref cmd, ":f_uid", 0); db.AddString(ref cmd, ":f_nameLoc", string.Empty, 255); db.AddString(ref cmd, ":f_pathLoc", string.Empty, 255); db.AddString(ref cmd, ":f_pathSvr", string.Empty, 255); db.AddString(ref cmd, ":f_pathRel", string.Empty, 255); db.AddBool(ref cmd, ":f_complete", true); cmd.Prepare(); foreach (var f in this.m_folders) { cmd.Parameters[":f_id"].Value = f.id; cmd.Parameters[":f_pid"].Value = f.pid; cmd.Parameters[":f_pidRoot"].Value = f.pidRoot; cmd.Parameters[":f_uid"].Value = f.uid; cmd.Parameters[":f_nameLoc"].Value = f.nameLoc; cmd.Parameters[":f_pathLoc"].Value = f.pathLoc; cmd.Parameters[":f_pathSvr"].Value = f.pathSvr; cmd.Parameters[":f_pathRel"].Value = f.pathRel; cmd.ExecuteNonQuery(); } cmd.Dispose(); }
/// <summary> /// 将文件设为已完成 /// </summary> /// <param name="fid"></param> public void Complete(int fid) { string sql = "update down_files set f_complete=1 where f_id=@f_id;"; DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql); db.AddInt(ref cmd, "@f_id", fid); db.ExecuteNonQuery(ref cmd); }
public static void Del(string idF, string idFD, string uid, string mac) { string sql = "delete from down_folders where fd_id=@fid and fd_mac=@mac and fd_uid=@uid;"; DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql); db.AddInt(ref cmd, "@fid", int.Parse(idFD)); db.AddString(ref cmd, "@mac", mac, 50); db.AddInt(ref cmd, "@uid", int.Parse(uid)); cmd.Connection.Open(); cmd.ExecuteNonQuery(); //删除down_files sql = "delete from down_files where f_id=@fid and f_mac=@mac and f_uid=@uid;"; cmd.CommandText = sql; cmd.Parameters[0].Value = int.Parse(idF); cmd.ExecuteNonQuery(); cmd.Connection.Close(); }
/// <summary> /// 删除文件 /// </summary> /// <param name="fid"></param> public override void Delete(string fid, int uid) { string sql = "delete from down_files where f_id=? and f_uid=?"; DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql); db.AddString(ref cmd, "@f_id", fid, 32); db.AddInt(ref cmd, "@f_uid", uid); db.ExecuteNonQuery(ref cmd); }
public override string read(string uid) { StringBuilder sb = new StringBuilder(); sb.Append("select "); sb.Append(" f_id"); //0 sb.Append(",f_fdTask"); //1 sb.Append(",f_nameLoc"); //2 sb.Append(",f_nameSvr"); //3 sb.Append(",f_pathLoc"); //4 sb.Append(",f_pathSvr"); //5 sb.Append(",f_pathRel"); //6 sb.Append(",f_md5"); //7 sb.Append(",f_lenLoc"); //8 sb.Append(",f_sizeLoc"); //9 sb.Append(",f_pos"); //10 sb.Append(",f_lenSvr"); //11 sb.Append(",f_perSvr"); //12 // sb.Append(" from up6_files"); // sb.Append(" where f_uid=:f_uid and f_complete=0 and f_deleted=0 and f_fdChild=0 and f_scan=0"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddInt(ref cmd, ":f_uid", int.Parse(uid)); DbDataReader r = db.ExecuteReader(cmd); while (r.Read()) { var f = new FileInf(); f.id = r.GetString(0); int fdTask = r.GetInt32(1); if (fdTask == 1) { f.fdTask = true; } f.nameLoc = r.GetString(2); f.nameSvr = r.GetString(3); f.pathLoc = r.GetString(4); f.pathSvr = r.GetString(5); f.pathRel = r.IsDBNull(6) ? string.Empty : r.GetString(6); f.md5 = r.IsDBNull(7) ? string.Empty : r.GetString(7); f.lenLoc = r.GetInt64(8); f.sizeLoc = r.GetString(9); f.offset = r.GetInt64(10); f.lenSvr = r.GetInt64(11); f.perSvr = r.GetString(12); this.files.Add(f); } r.Close(); return(this.to_json());// }
/// <summary> /// 批量添加目录 /// </summary> /// <param name="con"></param> protected virtual void save_folders(DbHelper db) { StringBuilder sb = new StringBuilder(); sb.Append("insert into up6_folders("); sb.Append(" f_id"); sb.Append(",f_pid"); sb.Append(",f_pidRoot"); sb.Append(",f_uid"); sb.Append(",f_nameLoc"); sb.Append(",f_pathLoc"); sb.Append(",f_pathSvr"); sb.Append(",f_pathRel"); sb.Append(",f_complete"); sb.Append(") values ("); sb.Append(" @f_id"); sb.Append(",@f_pid"); sb.Append(",@f_pidRoot"); sb.Append(",@f_uid"); sb.Append(",@f_nameLoc"); sb.Append(",@f_pathLoc"); sb.Append(",@f_pathSvr"); sb.Append(",@f_pathRel"); sb.Append(",@f_complete"); sb.Append(") ;"); var cmd = db.GetCommand(sb.ToString()); db.AddString(ref cmd, "@f_id", string.Empty, 32); db.AddString(ref cmd, "@f_pid", string.Empty, 32); db.AddString(ref cmd, "@f_pidRoot", string.Empty, 32); db.AddInt(ref cmd, "@f_uid", 0); db.AddString(ref cmd, "@f_nameLoc", string.Empty, 255); db.AddString(ref cmd, "@f_pathLoc", string.Empty, 255); db.AddString(ref cmd, "@f_pathSvr", string.Empty, 255); db.AddString(ref cmd, "@f_pathRel", string.Empty, 255); db.AddBool(ref cmd, "@f_complete", true); cmd.Prepare(); foreach (var f in this.m_folders) { cmd.Parameters["@f_id"].Value = f.id; cmd.Parameters["@f_pid"].Value = f.pid; cmd.Parameters["@f_pidRoot"].Value = f.pidRoot; cmd.Parameters["@f_uid"].Value = f.uid; cmd.Parameters["@f_nameLoc"].Value = f.nameLoc; cmd.Parameters["@f_pathLoc"].Value = f.pathLoc; cmd.Parameters["@f_pathSvr"].Value = f.pathSvr; cmd.Parameters["@f_pathRel"].Value = f.pathRel; cmd.ExecuteNonQuery(); } cmd.Dispose(); }
/// <summary> /// 从up7_files表中加载所有已经上传完毕的文件 /// </summary> /// <param name="uid"></param> /// <returns></returns> public string all_complete(int uid) { List <DnFileInf> fs = new List <DnFileInf>(); StringBuilder sb = new StringBuilder(); sb.Append("select "); sb.Append(" f_id"); //0 sb.Append(",f_fdTask"); //1 sb.Append(",f_nameLoc"); //2 sb.Append(",f_sizeLoc"); //3 sb.Append(",f_lenSvr"); //4 sb.Append(",f_pathSvr"); //5 sb.Append(",f_blockPath"); //6 sb.Append(",fd_files"); //7 sb.Append(" from up7_files "); sb.Append(" left join up7_folders on up7_folders.fd_id=up7_files.f_id"); // sb.Append(" where f_uid=@f_uid and f_deleted=0 and f_complete=1 and f_merged=1 and f_fdChild=0"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddInt(ref cmd, "@f_uid", uid); DbDataReader r = db.ExecuteReader(cmd); while (r.Read()) { DnFileInf f = new DnFileInf(); f.id = Guid.NewGuid().ToString("N"); f.f_id = r.GetString(0); f.fdTask = r.GetBoolean(1); f.nameLoc = r.GetString(2); f.sizeLoc = "0byte"; f.sizeSvr = r.GetString(3); f.lenSvr = r.GetInt64(4); f.pathSvr = r.GetString(5); f.blockPath = r.GetString(6); f.fileCount = r.IsDBNull(7) ? 0 : r.GetInt32(7); fs.Add(f); } r.Close(); if (fs.Count < 1) { return(string.Empty); } return(JsonConvert.SerializeObject(fs)); }
/// <summary> /// 从up6_files表中加载所有已经上传完毕的文件 /// </summary> /// <param name="uid"></param> /// <returns></returns> public override string all_complete(int uid) { List <DnFileInf> fs = new List <DnFileInf>(); StringBuilder sb = new StringBuilder(); sb.Append("select "); sb.Append(" f_id"); //0 sb.Append(",f_fdTask"); //1 sb.Append(",f_nameLoc"); //2 sb.Append(",f_sizeLoc"); //3 sb.Append(",f_lenSvr"); //4 sb.Append(",f_pathSvr"); //5 sb.Append(" from up6_files "); // sb.Append(" where f_uid=? and f_deleted=False and f_complete=TRUE and f_fdChild=FALSE and f_scan=TRUE"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddInt(ref cmd, "@f_uid", uid); DbDataReader r = db.ExecuteReader(cmd); while (r.Read()) { DnFileInf f = new DnFileInf(); f.id = Guid.NewGuid().ToString("N"); f.f_id = r.GetString(0); var ftk = r.GetValue(1).ToString().ToLower(); if (ftk == "true" || ftk == "1") { f.fdTask = true; } f.nameLoc = r.GetString(2); f.sizeLoc = r.GetString(3); f.sizeSvr = r.GetString(3); f.lenSvr = r.GetInt64(4); f.pathSvr = r.GetString(5); fs.Add(f); } r.Close(); if (fs.Count < 1) { return(string.Empty); } return(JsonConvert.SerializeObject(fs)); }
/// <summary> /// /// </summary> /// <param name="uid"></param> /// <returns></returns> public override string all_uncmp(int uid) { List <DnFileInf> files = new List <DnFileInf>(); StringBuilder sb = new StringBuilder(); sb.Append("select "); sb.Append(" f_id"); //0 sb.Append(",f_nameLoc"); //1 sb.Append(",f_pathLoc"); //2 sb.Append(",f_perLoc"); //3 sb.Append(",f_sizeSvr"); //7 sb.Append(",f_fdTask"); //10 // sb.Append(" from down_files"); // sb.Append(" where f_uid=? and f_complete=False"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddInt(ref cmd, "@f_uid", uid); DbDataReader r = db.ExecuteReader(cmd); while (r.Read()) { DnFileInf f = new DnFileInf(); f.id = r.GetString(0); f.nameLoc = r.GetString(1); f.pathLoc = r.GetString(2); f.perLoc = r.GetString(3); f.sizeSvr = r.GetString(4); int ftk = r.GetInt32(5); if (ftk == 1) { f.fdTask = true; } files.Add(f); } r.Close(); if (files.Count > 0) { return(JsonConvert.SerializeObject(files)); } return(string.Empty); }
public void Add(ref DnFileInf inf) { StringBuilder sql = new StringBuilder(); sql.Append("insert into down3_files("); sql.Append(" f_id"); sql.Append(",f_uid"); sql.Append(",f_mac"); sql.Append(",f_nameLoc"); sql.Append(",f_pathLoc"); sql.Append(",f_fileUrl"); sql.Append(",f_lenSvr"); sql.Append(",f_sizeLoc"); sql.Append(",f_sizeSvr"); sql.Append(",f_fdTask"); sql.Append(") values("); sql.Append(" @f_id"); sql.Append(",@f_uid"); sql.Append(",@f_mac"); sql.Append(",@f_nameLoc"); sql.Append(",@f_pathLoc"); sql.Append(",@f_fileUrl"); sql.Append(",@f_lenSvr"); sql.Append(",@f_sizeLoc"); sql.Append(",@f_sizeSvr"); sql.Append(",@f_fdTask"); sql.Append(");"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql.ToString()); db.AddString(ref cmd, "@f_id", inf.id, 32); db.AddInt(ref cmd, "@f_uid", inf.uid); db.AddString(ref cmd, "@f_mac", inf.mac, 50); db.AddString(ref cmd, "@f_nameLoc", inf.nameLoc, 255); db.AddString(ref cmd, "@f_pathLoc", inf.pathLoc, 255); db.AddString(ref cmd, "@f_fileUrl", inf.fileUrl, 255); db.AddInt64(ref cmd, "@f_lenSvr", inf.lenSvr); db.AddString(ref cmd, "@f_sizeLoc", inf.sizeLoc, 10); db.AddString(ref cmd, "@f_sizeSvr", inf.sizeSvr, 10); db.AddBool(ref cmd, "@f_fdTask", inf.fdTask); db.ExecuteNonQuery(ref cmd); }
public void process(string fid, int uid, string sizeLoc, string perLoc) { StringBuilder sb = new StringBuilder(); sb.Append("update down3_files set "); sb.Append(" f_sizeLoc =@sizeLoc"); sb.Append(",f_perLoc=@f_perLoc"); sb.Append(" where"); sb.Append(" f_id =@f_id and f_uid=@f_uid;"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddString(ref cmd, "@sizeLoc", sizeLoc, 10); db.AddString(ref cmd, "@f_perLoc", perLoc, 6); db.AddString(ref cmd, "@f_id", fid, 32); db.AddInt(ref cmd, "@f_uid", uid); db.ExecuteNonQuery(ref cmd); }
public override void process(string fid, int uid, string lenLoc, string perLoc) { StringBuilder sb = new StringBuilder(); sb.Append("update down_files set "); sb.Append(" f_lenLoc =?"); sb.Append(",f_perLoc=?"); sb.Append(" where"); sb.Append(" f_id =? and f_uid=?"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sb.ToString()); db.AddString(ref cmd, "@lenLoc", lenLoc, 19); db.AddString(ref cmd, "@f_perLoc", perLoc, 6); db.AddString(ref cmd, "@f_id", fid, 32); db.AddInt(ref cmd, "@f_uid", uid); db.ExecuteNonQuery(ref cmd); }
public int Add(ref DnFileInf inf) { StringBuilder sql = new StringBuilder(); sql.Append("insert into down_files("); sql.Append("f_uid"); sql.Append(",f_mac"); sql.Append(",f_pathLoc"); sql.Append(",f_pathSvr"); sql.Append(",f_lengthLoc"); sql.Append(",f_lengthSvr"); sql.Append(") values("); sql.Append("@f_uid"); sql.Append(",@f_mac"); sql.Append(",@f_pathLoc"); sql.Append(",@f_pathSvr"); sql.Append(",@f_lengthLoc"); sql.Append(",@f_lengthSvr"); sql.Append(");"); sql.Append("select @@IDENTITY"); DbHelper db = new DbHelper(); DbCommand cmd = db.GetCommand(sql.ToString()); db.AddInt(ref cmd, "@f_uid", inf.uid); db.AddString(ref cmd, "@f_mac", inf.mac, 50); db.AddString(ref cmd, "@f_pathLoc", inf.pathLoc, 255); db.AddString(ref cmd, "@f_pathSvr", inf.pathSvr, 255); db.AddString(ref cmd, "@f_lengthLoc", inf.lengthLoc, 19); db.AddString(ref cmd, "@f_lengthSvr", inf.lengthSvr, 19); object id = db.ExecuteScalar(ref cmd); inf.idSvr = Convert.ToInt32(id); //inf.idSvr = (int)db.ExecuteScalar(ref cmd); //cmd.Connection.Open(); //cmd.ExecuteNonQuery(); //cmd.Parameters.Clear(); //cmd.CommandText = "select @@IDENTITY"; //inf.idSvr = (int)cmd.ExecuteScalar(); //cmd.Connection.Close(); return(inf.idSvr); }