using ExportMap.cs;
using ExportMap.Models;
using Npgsql;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Linq;
using System.Web;
namespace ExportMap.db
{
public class TaskDBHelper
{
///
/// 根据停牌获取用户ID
///
public static int SelectUserIdByToken(string token)
{
string sql = "select create_user from lf.sys_token where token=@token order by create_time desc limit 1;";
DbParameter dp1 = new NpgsqlParameter("@token", token);
object obj = Tools.DBHelper.GetScalar(sql, dp1);
return null == obj ? 0 : int.Parse(obj.ToString());
}
///
/// 根据ID查询
///
public static SysTask SelectById(int id)
{
string sql = string.Format("select * from lf.sys_task where id = {0} order by id desc", id);
DataTable dt = Tools.DBHelper.GetDataTable(sql);
List list = ModelHandler.FillModel(dt);
return null == list || list.Count == 0 ? null : list[0];
}
///
/// 根据ID集合查询
///
public static List SelectByIds(List ids)
{
string sql = string.Format("select * from lf.sys_task where id in ({0}) order by id desc", string.Join(",", ids.ToArray()));
DataTable dt = Tools.DBHelper.GetDataTable(sql);
List list = ModelHandler.FillModel(dt);
return list;
}
///
/// 插入任务
///
public static int Insert(SysTask task)
{
string sql = "insert into lf.sys_task (name, status, type, descr, err, ip, pid, gids, depcode, dircode, create_user) values (@name, @status, @type, @descr, @err, @ip, @pid, @gids, @depcode, @dircode, @create_user) returning id";
List list = Tools.GetParams(sql, task);
object obj = Tools.DBHelper.GetScalar(sql, list.ToArray());
return obj == null ? 0 : Convert.ToInt32(obj);
}
///
/// 更新任务
///
public static int Update(SysTask task)
{
string sql = "update lf.sys_task set name=@name, status=@status, type=@type, descr=@descr, err=@err, ip=@ip, pid=@pid, gids=@gids, depcode=@depcode, dircode=@dircode, update_user=@update_user, update_time=now() where id=@id";
List list = Tools.GetParams(sql, task);
object obj = Tools.DBHelper.GetScalar(sql, list.ToArray());
return obj == null ? 0 : Convert.ToInt32(obj);
}
///
/// 创建任务实体类
///
public static SysTask CreateTask(XYZArgs args, string type, string descr)
{
SysTask task = new SysTask();
task.name = args.name;
task.status = 1;
task.type = type;
task.descr = descr;
task.ip = Tools.GetLocalIP();
task.gids = string.Join(",", args.ids.ToArray());
task.depcode = args.depcode;
task.dircode = args.dircode;
task.create_user = args.userId;
return task;
}
///
/// 创建任务实体类
///
public static SysTask CreateTask(XYZArgs args, SysMeta meta, string type, string descr)
{
SysTask task = new SysTask();
task.name = meta.name;
task.status = 1;
task.type = type;
task.descr = descr;
task.ip = Tools.GetLocalIP();
task.gids = meta.id.ToString();
task.depcode = args.depcode;
task.dircode = args.dircode;
task.create_user = args.userId;
return task;
}
}
}