using System; using System.Collections.Generic; using System.Data; using System.Data.OracleClient; using System.Linq; using WX.CRM.Common; namespace WX.CRM.DAL.TS { public class WX_TS_CMD_DAL { /// /// 提交发送朋友圈 /// /// 内容 /// 推送类型 /// 时间 /// 日期 /// /// public bool CreateFriendscircle(string v_txt, int v_timeType, string v_exe_date, string v_exe_time, string v_imgpath, ref ValidationErrors errors) { bool resut = false; try { var param1 = new List() { new OracleParameter() { ParameterName = "v_txt", OracleType = OracleType.NVarChar, Value =v_txt }, new OracleParameter() { ParameterName = "v_timeType", OracleType = OracleType.Number, Value =v_timeType }, new OracleParameter() { ParameterName = "v_exe_date", OracleType = OracleType.VarChar, Value =v_exe_date }, new OracleParameter() { ParameterName = "v_exe_time", OracleType = OracleType.VarChar, Value =v_exe_time }, new OracleParameter() { ParameterName = "v_imgpath", OracleType = OracleType.VarChar, Value =v_imgpath }, }; OracleHelper.ExecuteNonQuery(CommandType.StoredProcedure, "PACK_WX_TSCMD.CreateFriendscircle", param1.ToArray()); resut = true; } catch (Exception ex) { errors.Add(ex.ToString()); LogHelper.Error("CreateFriendscircle:" + ex.ToString()); } return resut; } /// /// 获取可推送cmd /// /// public DataTable GetCmdPici() { DataTable table = null; try { var para = new List(); para.Add(new OracleParameter() { ParameterName = "v_data", OracleType = OracleType.Cursor, Direction = ParameterDirection.Output }); table = OracleHelper.DataQueray(CommandType.StoredProcedure, "PACK_WX_TSCMD.GetCmdPici", para.ToArray()).Tables[0]; } catch (Exception ex) { LogHelper.Error(ex.ToString()); } return table; } /// /// 获取图片内容 /// /// 批次号 /// public DataTable GetFriendScircleImgList(decimal pici) { DataTable table = null; try { OracleParameter[] p2 = { new OracleParameter(){ ParameterName = "v_pici", OracleType = OracleType.Number, Value = pici}, new OracleParameter(){ ParameterName = "v_data", OracleType = OracleType.Cursor, Direction = ParameterDirection.Output } }; table = OracleHelper.DataQueray(CommandType.StoredProcedure, "PACK_WX_TSCMD.GetFriendScircleImgList", p2.ToArray()).Tables[0]; } catch (Exception ex) { LogHelper.Error(ex.ToString()); } return table; } /// /// 修改批次推送状态 /// /// 批次 /// 发送时间 /// 状态 /// 推送返回的消息 /// /// public bool UpdateSendStutas(decimal v_pici, DateTime v_senddate, int v_stutas, string v_msg, ref ValidationErrors errors) { bool resut = false; try { var param1 = new List() { new OracleParameter() { ParameterName = "v_pici", OracleType = OracleType.Number, Value =v_pici }, new OracleParameter() { ParameterName = "v_senddate", OracleType = OracleType.DateTime, Value =v_senddate }, new OracleParameter() { ParameterName = "v_stutas", OracleType = OracleType.Number, Value =v_stutas }, new OracleParameter() { ParameterName = "v_msg", OracleType = OracleType.VarChar, Value =v_msg } }; OracleHelper.ExecuteNonQuery(CommandType.StoredProcedure, "PACK_WX_TSCMD.UpdateSendStutas", param1.ToArray()); resut = true; } catch (Exception ex) { errors.Add(ex.ToString()); LogHelper.Error("UpdateSendResStutas:" + ex.ToString()); } return resut; } /// /// 发送朋友圈日志 /// /// /// /// /// /// public DataTable GetFirneScirccleLog(DateTime? stime, DateTime? etime, string v_alias, ref Pager pager) { OracleConnection conn = new OracleConnection(OracleHelper.AYCRMConn); if (conn.State == ConnectionState.Closed) conn.Open(); OracleTransaction trans = conn.BeginTransaction(); try { OracleParameter[] p2 = { new OracleParameter(){ ParameterName = "v_stime", OracleType = OracleType.DateTime, Value = stime}, new OracleParameter(){ ParameterName = "v_etime", OracleType = OracleType.DateTime, Value = etime}, new OracleParameter(){ ParameterName = "v_alias", OracleType = OracleType.VarChar, Value = v_alias}, new OracleParameter(){ ParameterName = "v_pageIndex", OracleType = OracleType.Number, Value = pager.page}, new OracleParameter(){ ParameterName = "v_pageSize", OracleType = OracleType.Number, Value = pager.rows}, new OracleParameter(){ ParameterName="v_total",OracleType=OracleType.Number,Direction = ParameterDirection.Output}, new OracleParameter(){ ParameterName = "v_data", OracleType = OracleType.Cursor, Direction = ParameterDirection.Output } }; var ds = OracleHelper.DataQueray(trans, CommandType.StoredProcedure, "PACK_WX_TSCMD.GetFirneScirccleLog", p2).Tables[0]; pager.totalRows = int.Parse(string.Format("{0}", p2.Single(m => m.ParameterName == "v_total").Value)); trans.Commit(); return ds; } catch (Exception) { trans.Rollback(); throw; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } } /// /// 获取朋友圈内容 /// /// /// public DataTable GetFriendScircleTxtByPici(decimal pici) { OracleConnection conn = new OracleConnection(OracleHelper.AYCRMConn); if (conn.State == ConnectionState.Closed) conn.Open(); OracleTransaction trans = conn.BeginTransaction(); try { OracleParameter[] p2 = { new OracleParameter(){ ParameterName = "v_pici", OracleType = OracleType.Number, Value = pici}, new OracleParameter(){ ParameterName = "v_data", OracleType = OracleType.Cursor, Direction = ParameterDirection.Output } }; var ds = OracleHelper.DataQueray(trans, CommandType.StoredProcedure, "PACK_WX_TSCMD.GetFriendScircleTxtByPici", p2).Tables[0]; trans.Commit(); return ds; } catch (Exception) { trans.Rollback(); throw; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } } } }