sendsms.cs

来自「该服务平台解决了计算机网络与移动网络之间信息交换问题」· CS 代码 · 共 515 行 · 第 1/2 页

CS
515
字号
        /// 根据业务类型得到用户手机号运营商信息
        /// </summary>
        /// <param name="mainOperationID"></param>
        /// <param name="childOperationID"></param>
        /// <returns></returns>
        public DataTable GetUserListByOperationID(int mainOperationID, int childOperationID)
        {
            String strSql = string.Format("SELECT UserInfo.Mobile, UserInfo.TradeID FROM UserInfo INNER JOIN " +
                "UserOperation ON UserInfo.UserID = UserOperation.UserID WHERE (UserOperation.MainOperationID = {0}) ", mainOperationID);
            if (childOperationID != 0)
                strSql += string.Format(" AND (UserOperation.ChildOperationID = {0})", childOperationID);
                //"AND (UserOperation.ChildOperationID = {1})", mainOperationID, childOperationID);
            DataSet ds = db.ExecuteDataSet(CommandType.Text, strSql);
            return ds.Tables[0];
        }
        /// <summary>
        /// 根据协会编号得到用户手机号运营商信息
        /// </summary>
        /// <param name="corporationID"></param>
        /// <returns></returns>
        public DataTable GetUserListByCorporationID(int corporationID)
        {
            String strSql = string.Format("SELECT UserInfo.Mobile, UserInfo.TradeID FROM UserInfo INNER JOIN " +
                "UserCorporation ON UserInfo.UserID = UserCorporation.UserID WHERE (UserCorporation.CorporationID = {0})", corporationID);
            DataSet ds = db.ExecuteDataSet(CommandType.Text, strSql);
            return ds.Tables[0];
        }*/
        #endregion
        /// <summary>
        /// 得到用户列表
        /// </summary>
        /// <param name="areaID"></param>
        /// <param name="countyID"></param>
        /// <param name="villageID"></param>
        /// <param name="traderID"></param>
        /// <param name="mainOperationID"></param>
        /// <param name="childOperationID"></param>
        /// <param name="corporationID"></param>
        /// <returns></returns>
        public DataTable GetUserList(int areaID,int countyID,int villageID,int traderID,
            ArrayList mainOperationID, ArrayList childOperationID, ArrayList corporationID)
        {
            #region
            //String strSql = "SELECT UserInfo.TradeID, UserInfo.Mobile FROM UserInfo INNER JOIN UserOperation " +
            //    "ON UserInfo.UserID = UserOperation.UserID INNER JOIN UserCorporation ON UserInfo.UserID = " +
            //    "UserCorporation.UserID WHERE (1=1)";
            //if (areaID != 0)
            //    strSql += string.Format(" AND (UserInfo.AreaID = {0})", areaID);
            //if (countyID != 0)
            //    strSql += string.Format(" AND (UserInfo.CountyID = {0})", countyID);
            //if (villageID != 0)
            //    strSql += string.Format(" AND (UserInfo.VillageID = {0})", villageID);
            //if (traderID != 0)
            //    strSql += string.Format(" AND (UserInfo.TradeID = {0})", traderID);
            //if (mainOperationID != 0)
            //    strSql += string.Format(" AND (UserOperation.MainOperationID = {0})", mainOperationID);
            //if (childOperationID != 0)
            //    strSql += string.Format(" AND (UserOperation.ChildOperationID = {0})", childOperationID);
            //if (corporationID != 0)
            //    strSql += string.Format(" AND (UserCorporation.CorporationID = {0})", corporationID);

            //DataSet ds = db.ExecuteDataSet(CommandType.Text, strSql);
            //return ds.Tables[0];
            #endregion
            DataSet coporationDataSet = new DataSet();
            DataSet OperationDataSet = new DataSet();

            String queryCorporationSql = "SELECT UserInfo.TradeID, UserInfo.Mobile, UserInfo.AreaID, UserInfo.CountyID, " +
                "UserInfo.VillageID FROM UserCorporation INNER JOIN UserInfo ON UserCorporation.UserID = UserInfo.UserID " +
                "WHERE (UserInfo.IsValid <> 0)";
            String queryOperationSql = "SELECT UserInfo.TradeID, UserInfo.Mobile, UserInfo.AreaID, UserInfo.CountyID, " +
                    "UserInfo.VillageID FROM UserOperation INNER JOIN UserInfo ON UserOperation.UserID = UserInfo.UserID WHERE (UserInfo.IsValid <> 0)";
            String querySql = "SELECT UserInfo.TradeID, UserInfo.Mobile, UserInfo.AreaID, UserInfo.CountyID, " +
                    "UserInfo.VillageID FROM UserInfo WHERE (UserInfo.IsValid <> 0)";
            if (traderID != 0)
            {
                queryCorporationSql += string.Format(" AND (UserInfo.TradeID = {0})", traderID);
                queryOperationSql += string.Format(" AND (UserInfo.TradeID = {0})", traderID);
                querySql += string.Format(" AND UserInfo.TradeID = {0}", traderID);
            }

            if (areaID != 0)
            {
                queryOperationSql += string.Format(" AND (UserInfo.AreaID = {0})", areaID);
                queryCorporationSql += string.Format(" AND (UserInfo.AreaID = {0})", areaID);
                querySql += string.Format(" AND (UserInfo.AreaID = {0})", areaID);
            }    
            if (countyID != 0)
            {
                queryOperationSql += string.Format(" AND (UserInfo.CountyID = {0})", countyID);
                queryCorporationSql += string.Format(" AND (UserInfo.CountyID = {0})", countyID);
                querySql += string.Format(" AND (UserInfo.CountyID = {0})", countyID);
            }
            if (villageID != 0)
            {
                queryOperationSql += string.Format(" AND (UserInfo.VillageID = {0})", villageID);
                queryCorporationSql += string.Format(" AND (UserInfo.VillageID = {0})", villageID);
                querySql += string.Format(" AND (UserInfo.VillageID = {0})", villageID);
            }
            if (corporationID.Count == 1)
            {
                if (int.Parse(corporationID[0].ToString()) != 0)
                {
                    queryCorporationSql += String.Format("AND (UserCorporation.CorporationID = {0})", corporationID[0]);
                    db.LoadDataSet(CommandType.Text, queryCorporationSql, coporationDataSet, new string[] { "UserList" });
                }
                else
                {
                    //queryCorporationSql += String.Format("AND (UserCorporation.CorporationID = {0})", corporationID[0]);
                    db.LoadDataSet(CommandType.Text, queryCorporationSql, coporationDataSet, new string[] { "UserList" });
                }
            }
            if (corporationID.Count > 1)
            {
                string queryCorporation = String.Format("AND (UserCorporation.CorporationID = {0})", corporationID[0]);
                for (int i = 1; i < corporationID.Count; i++)
                {
                    queryCorporation += String.Format(queryCorporation + " OR (UserCorporation.CorporationID = {0})", corporationID[i]);
                }
                string strSQL = queryCorporationSql + queryCorporation;
                db.LoadDataSet(CommandType.Text, strSQL, coporationDataSet, new string[] { "UserList" });
            }

            if (mainOperationID.Count == 1)
            {
                if (int.Parse(childOperationID[0].ToString()) != 0)
                {
                    queryOperationSql += String.Format(" AND (UserOperation.MainOperationID = {0}) AND (UserOperation.ChildOperationID = {1})", mainOperationID[0],
                        childOperationID[0]);
                }
                else
                {
                    queryOperationSql += String.Format(" AND (UserOperation.MainOperationID = {0})", mainOperationID[0]);
                }
                db.LoadDataSet(CommandType.Text, queryOperationSql, OperationDataSet, new string[] { "UserList" });
            }

            if (mainOperationID.Count > 1)
            {
                queryOperationSql += String.Format(" AND (UserOperation.MainOperationID = {0}) AND (UserOperation.ChildOperationID = {1})", mainOperationID[0],
                    childOperationID[0]);

                for (int i = 1; i < mainOperationID.Count; i++)
                {
                    if (int.Parse(childOperationID[i].ToString()) != 0)
                    {
                        queryOperationSql += String.Format(" OR (UserOperation.MainOperationID = {0}) AND (UserOperation.ChildOperationID = {1})",
                            mainOperationID[i], childOperationID[i]);
                    }
                    else
                    {
                        queryOperationSql += String.Format(" OR (UserOperation.MainOperationID = {0})",
                            mainOperationID[i]);
                    }
                }
                db.LoadDataSet(CommandType.Text, queryOperationSql, OperationDataSet, new string[] { "UserList" });
            }
            if (mainOperationID.Count == 0 && corporationID.Count == 0)
            {
                db.LoadDataSet(CommandType.Text, querySql, OperationDataSet, new string[] { "UserList" });
            }
            coporationDataSet.Merge(OperationDataSet);
            return coporationDataSet.Tables[0];
            
        }


        public void SendMsg(int smsID, int userTeamID, int deptID, int userID, String mobile)
        {
            DataAccess.TableAccessor.SMSInfo smsInfoAccessor = new DataAccess.TableAccessor.SMSInfo();
            DataAccess.TableAccessor.UserInfo userInfoAccessor = new DataAccess.TableAccessor.UserInfo();
            DataAccess.CookieAccessor cookieAccess = new CookieAccessor();
            DataAccess.SendingSMSToWin SendingSMS = new SendingSMSToWin();
            DataTable singleSMSInfo = smsInfoAccessor.GetSingleSMSInfoToSend(smsID);
            DataTable userInfoList = userInfoAccessor.GetUserInfoToSend();
            String msg = singleSMSInfo.Rows[0]["MessageContent"].ToString();
            if (userTeamID == 0)
            {
                for (int i = 0; i < userInfoList.Rows.Count; i++)
                {
                    String mobileInUserInfo = userInfoList.Rows[i]["Mobile"].ToString();
                    SendingSMS.MsgToMainDataBase(mobileInUserInfo, msg);
                }
            }
            else
            {

                if (userID == 0)
                {
                    userInfoList.DefaultView.RowFilter = String.Format("AreaID = {0} AND CorporationID = {1}", userTeamID, deptID);
                    for (int i = 0; i < userInfoList.DefaultView.Count; i++)
                    {
                        String mobileInUserInfo = userInfoList.DefaultView[0]["Mobile"].ToString();
                        SendingSMS.MsgToMainDataBase(mobileInUserInfo, msg);
                    }
                }
                else
                {
                    SendingSMS.MsgToMainDataBase(mobile, msg);
                }
            }
            int sendMan = cookieAccess.GetLoginUserOperationID();
            smsInfoAccessor.ChangeSMSFlag(smsID, 2);
            smsInfoAccessor.UpdateSendMan(smsID, sendMan);
        }

        public void SendMsg(int smsID)
        {
            DataAccess.TableAccessor.SMSInfo smsInfoAccessor = new DataAccess.TableAccessor.SMSInfo();
            DataAccess.TableAccessor.UserInfo userInfoAccessor = new DataAccess.TableAccessor.UserInfo();
            DataAccess.CookieAccessor cookieAccess = new CookieAccessor();
            DataAccess.SendingSMSToWin SendingSMS = new SendingSMSToWin();
            DataTable singleSMSInfo = smsInfoAccessor.GetSingleSMSInfoToSend(smsID);
            DataTable userInfoList = userInfoAccessor.GetUserInfoToSend();

            int userTeamID = (int)singleSMSInfo.Rows[0]["AreaID"];
            int deptID = (int)singleSMSInfo.Rows[0]["CorporationID"];
            String msg = singleSMSInfo.Rows[0]["MessageContent"].ToString();
            String sendSingleUserName = singleSMSInfo.Rows[0]["Name"].ToString();
            String sendSingleMobile = singleSMSInfo.Rows[0]["Mobile"].ToString();
            if (userTeamID == 0)
            {
                for (int i = 0; i < userInfoList.Rows.Count; i++)
                {
                    String mobile = userInfoList.Rows[i]["Mobile"].ToString();
                    SendingSMS.MsgToMainDataBase(mobile, msg);
                }
            }
            else
            {
                
                if (sendSingleUserName == "全部")
                {
                    userInfoList.DefaultView.RowFilter = String.Format("AreaID = {0} AND CorporationID = {1}", userTeamID, deptID);
                    for (int i = 0; i < userInfoList.DefaultView.Count; i++)
                    {
                        String mobile = userInfoList.DefaultView[i]["Mobile"].ToString();
                        SendingSMS.MsgToMainDataBase(mobile, msg);
                    }
                }
                else
                {
                    userInfoList.DefaultView.RowFilter = String.Format("AreaID = {0} AND CorporationID = {1}", userTeamID, deptID);
                    for (int i = 0; i < userInfoList.DefaultView.Count; i++)
                    {
                        String mobile = userInfoList.DefaultView[i]["Mobile"].ToString();
                        SendingSMS.MsgToMainDataBase(mobile, msg);
                    }
                }
            }
            int sendMan = cookieAccess.GetLoginUserOperationID();
            smsInfoAccessor.ChangeSMSFlag(smsID, 2);
            smsInfoAccessor.UpdateSendMan(smsID, sendMan);
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?