Beispiel #1
0
        /// <summary>
        /// 群发消息发送完成后,更新数据库D:\EG_Project_Simgle\QYWechat\trunk\Standard\trunk\EG.WeChat.Standard\EG.WeChat.Web\Controllers\QY\QYConfigController.cs
        /// </summary>
        /// <param name="messageid"></param>
        /// <param name="userId"></param>
        /// <param name="pSendType"></param>
        /// <param name="targetUsers"></param>
        /// <returns></returns>
        private bool UpdateGsMessageAfterSend(string messageid, string userId, int pSendType, string targetUsers, string pLog)
        {
            int imessageid = -1;

            if (!int.TryParse(messageid, out imessageid))
            {
                return(false);
            }
            if (imessageid < 1)
            {
                return(false);
            }

            WXGsMessageDA pDa = new WXGsMessageDA();

            return(pDa.UpdateGsMessage(imessageid, userId, DateTime.Now, pSendType, targetUsers, 3, pLog));
        }
Beispiel #2
0
        /// <summary>
        /// 获取所有群发消息
        /// </summary>
        public List <T> GetAllGsMessage <T>()
        {
            List <T> pList = new List <T>();

            this.ExecuteTryCatch(() =>
            {
                WXGsMessageDA pDa = new WXGsMessageDA();
                //获取从服务器当天时间算起,的两个月时间内的群发消息,例如:当天为10月,即是获得9、10月的消息记录
                string strDateFilter = GetTargetDateFilter(WXGsMessageDA.FIELD_NAME_MTIME, 1);
                DataTable dt         = pDa.GetGsMessage(strDateFilter, m_sdk.WXType);
                if (dt == null || dt.Rows.Count == 0)
                {
                    EGExceptionOperator.ThrowX <Exception>("缺少群发消息数据", EGActionCode.缺少目标数据);
                }

                pList = CommonFunction.GetEntitiesFromDataTable <T>(dt);
            });
            return(pList);
        }
Beispiel #3
0
        /// <summary>
        /// 创建群发消息,并加入到待审核队列
        /// </summary>
        /// <param name="pUserID">用戶編號</param>
        /// <param name="mediaId">媒體ID</param>
        /// <param name="sendType">發送對象類型</param>
        /// <param name="sendTarget">發送目標對象</param>
        /// <param name="content">內容</param>
        /// <param name="messageType">內容類型</param>
        public void CreateGsMessage(string pUserID, string mediaId, int sendType, string sendTarget, string content, string messageType, int wx_type, int agendid, int safe)
        {
            this.ExecuteTryCatch(() =>
            {
                bool iResult      = false;
                WXGsMessageDA pDa = new WXGsMessageDA();
                if (messageType == "text")
                {
                    iResult = pDa.InsertGsMessage(pUserID, DateTime.Now, sendType, sendTarget, messageType, content, 1, wx_type, agendid, safe);
                }
                else
                {
                    iResult = pDa.InsertGsMessage(pUserID, DateTime.Now, sendType, sendTarget, messageType, mediaId, 1, wx_type, agendid, safe);
                }

                if (!iResult)
                {
                    EGExceptionOperator.ThrowX <Exception>("群发消息加入队伍错误", EGActionCode.数据库表保存错误);
                }
            });
        }
Beispiel #4
0
        /// <summary>
        /// 获取所有群发消息
        /// </summary>
        public List <T> GetGsMessage <T>(string pFilter)
        {
            List <T> pList = new List <T>();

            this.ExecuteTryCatch(() =>
            {
                WXGsMessageDA pDa = new WXGsMessageDA();
                //转换前端查询目标
                List <object> pQueryItems = CommonFunction.FromJsonTo <List <object> >(pFilter);
                //转换查询字典
                IDictionary <string, object> pDic = WXGsMessageDA.CreateDicItems(pQueryItems);
                //查询获取dATATABLE
                DataTable dt = pDa.GetGsMessage(pDic, m_sdk.WXType);
                if (dt == null || dt.Rows.Count == 0)
                {
                    EGExceptionOperator.ThrowX <Exception>("缺少群发消息数据", EGActionCode.缺少目标数据);
                }

                pList = CommonFunction.GetEntitiesFromDataTable <T>(dt);
            });
            return(pList);
        }