using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OracleClient;
using WX.CRM.Common;
namespace WX.CRM.DAL.Wx
{
public class WX_ALIVEIMEI_DAL
{
///
/// 心跳日志上传
///
/// imei
/// 微信username
/// 返回批次号
public string AliveUpload(string v_imei, string v_username, string v_version, string v_uin, ref ValidationErrors errors)
{
string uin = string.Empty;
try
{
var param1 = new List()
{
new OracleParameter() { ParameterName = "v_imei", OracleType = OracleType.VarChar, Value =v_imei },
new OracleParameter() { ParameterName = "v_username", OracleType = OracleType.VarChar, Value =v_username },
string.IsNullOrEmpty(v_version) ? new OracleParameter() { ParameterName = "v_version", OracleType = OracleType.VarChar, Value = DBNull.Value } : new OracleParameter() { ParameterName = "v_version", OracleType = OracleType.VarChar, Value = v_version },
string.IsNullOrEmpty(v_version) ? new OracleParameter() { ParameterName = "v_uin", OracleType = OracleType.VarChar, Value = DBNull.Value } : new OracleParameter() { ParameterName = "v_uin", OracleType = OracleType.VarChar, Value = v_uin },
new OracleParameter(){ParameterName="v_data",OracleType=OracleType.Cursor,Direction = ParameterDirection.Output}
};
DataSet ds = OracleHelper.DataQueray(CommandType.StoredProcedure, "PACK_WXALIVE.aliveUpload", param1.ToArray());
uin = ds.Tables[0].Rows[0]["uin"].ToString();
}
catch (Exception ex)
{
errors.Add(ex.ToString());
LogHelper.Error("心跳出现错误:" + ex.ToString());
}
return uin;
}
///
/// 微信服务心跳
///
/// 微信号
/// 版本号
/// IMEI
/// 手机型号
///
///
public void ServiceAliveUpload(string v_alias, string v_version, string v_imei, string v_phonemode, ref ValidationErrors errors)
{
try
{
var param1 = new List()
{
string.IsNullOrEmpty(v_alias) ? new OracleParameter() { ParameterName = "v_alias", OracleType = OracleType.VarChar, Value = DBNull.Value } : new OracleParameter() { ParameterName = "v_alias", OracleType = OracleType.VarChar, Value = v_alias },
string.IsNullOrEmpty(v_version) ? new OracleParameter() { ParameterName = "v_version", OracleType = OracleType.VarChar, Value = DBNull.Value } : new OracleParameter() { ParameterName = "v_version", OracleType = OracleType.VarChar, Value = v_version },
string.IsNullOrEmpty(v_imei) ? new OracleParameter() { ParameterName = "v_imei", OracleType = OracleType.VarChar, Value = DBNull.Value } : new OracleParameter() { ParameterName = "v_imei", OracleType = OracleType.VarChar, Value = v_imei },
string.IsNullOrEmpty(v_phonemode) ? new OracleParameter() { ParameterName = "v_phonemode", OracleType = OracleType.VarChar, Value = DBNull.Value } : new OracleParameter() { ParameterName = "v_phonemode", OracleType = OracleType.VarChar, Value = v_phonemode },
};
OracleHelper.ExecuteNonQuery(CommandType.StoredProcedure, "PACK_WXALIVE.ServiceAliveUpload", param1.ToArray());
}
catch (Exception ex)
{
errors.Add(ex.ToString());
LogHelper.Error("心跳出现错误:" + ex.ToString());
}
}
#region 查询离线通知
public DataSet UnlineNoticeGet()
{
try
{
OracleParameter[] p = new[]
{
new OracleParameter{ParameterName = "v_data",OracleType = OracleType.Cursor,Direction = ParameterDirection.Output}
};
var ds = OracleHelper.DataQueray(CommandType.StoredProcedure, "PACK_WXALIVE.UnlineNoticeGet", p);
return ds;
}
catch (Exception)
{
throw;
}
}
public bool UnlineNoticeLook(decimal userid)
{
bool isSucced = true;
try
{
OracleParameter[] p = new[]
{
new OracleParameter{ParameterName = "v_userid", OracleType = OracleType.Number, Value = userid }
};
OracleHelper.ExecuteNonQuery(CommandType.StoredProcedure, "PACK_WXALIVE.UnlineNoticeLook", p);
isSucced = true;
}
catch (Exception ex)
{
isSucced = false;
LogHelper.Error(ex.ToString());
}
return isSucced;
}
#endregion
///
/// 获取工作微信的订单文件上传位置
///
///
///
public DataSet JobWxGet(string jobusername)
{
try
{
OracleParameter[] p = new[]
{
new OracleParameter{ ParameterName = "v_jobusername", OracleType = OracleType.VarChar, Value = jobusername },
new OracleParameter{ ParameterName = "v_data",OracleType = OracleType.Cursor,Direction = ParameterDirection.Output }
};
var ds = OracleHelper.DataQueray(CommandType.StoredProcedure, "PACK_WX_UPLOAD_ORDER.JobWxGet", p);
return ds;
}
catch (Exception)
{
throw;
}
}
public bool JobUpdate(decimal userid)
{
bool isSucced = true;
try
{
OracleParameter[] p = new[]
{
new OracleParameter{ParameterName = "v_userid", OracleType = OracleType.Number, Value = userid }
};
OracleHelper.ExecuteNonQuery(CommandType.StoredProcedure, "PACK_WX_UPLOAD_ORDER.JobUpdate", p);
isSucced = true;
}
catch (Exception ex)
{
isSucced = false;
LogHelper.Error(ex.ToString());
}
return isSucced;
}
}
}