我有一个约会应用程序,它从两个表中读取,即用户表和 SMS 订阅表。
users 表包含有关订阅者的所有个人详细信息,即他们的性别、姓名、宗教、职业等。
虽然订阅表具有订阅者应从系统接收自动文本的频率。收到的短信基本都是异性的联系方式。
我的问题是,如何生成一个查询,在任何给定时间发送异性的随机联系方式。
下面的代码仅对用户发起的请求执行查询。虽然我更感兴趣的是还包含向我的用户发送随机异性文本的查询,尤其是当用户未能自己提交请求时。我该怎么办呢,亲切的问候!
public void ExecuteSubscriptions() {
/* 609 */ this.var_returnMessage = "";
/* 610 */ String text = "";
/* 611 */ SqlConn lConn = null;
/* */ try
/* */ {
/* 615 */ String queryTmp = "select abs(DATEDIFF(datelastsent, NOW())) as gapTime, phone, request, SubscriptionFrequency from where abs(DATEDIFF(datelastsent, NOW())) > 0 ";
/* 616 */ lConn = new SqlConn(false, true);
/* 617 */ if ((lConn.sqlConnection != null) && (lConn.statement != null))
/* */ {
/* 619 */ ResultSet rs = lConn.statement.executeQuery(queryTmp);
/* */
/* 621 */ if (rs != null)
/* */ {
/* 623 */ String value = "";
/* */
/* 625 */ while (rs.next()) {
/* 626 */ value = rs.getString("SubscriptionFrequency").toUpperCase().substring(0, 2);
/* 627 */ String[] smsParts;
/* */ smsParts = rs.getString("request").split("");
/* 628 */ this.var_sender = rs.getString("phone");
/* 629 */ int var_num = Integer.parseInt(value);
/* 630 */ if (Integer.parseInt(rs.getString("gapTime")) >= var_num) {
/* 631 */ if ((!GetResults(CreateRequestQuery(smsParts, RequestTypes.NEWRESULTSONLY))) &&
/* 632 */ (!GetResults(CreateRequestQuery(smsParts, RequestTypes.MIXEDRESULTS)))) {
/* 633 */ this.var_totalResultsForUser = 0;
/* 634 */ this.var_returnMessage = "Dear Subscriber, at the moment there were no results matching your subscription criteria, try again later.";
/* */ }
/* */
/* 637 */ text = new StringBuilder().append("update subscriptions set datelastsent = NOW() where phone = '").append(rs.getString("phone")).append("' and request = '").append(rs.getString("request")).append("'").toString();
/* */ }
/* */
/* */ }
/* */
/* */ }
/* */
/* 645 */ if ((this.var_returnMessage != null) &&
/* 646 */ (EngineIgniter.SendMessage(this.var_sender, "KQ Solutions", this.var_returnMessage))) {
/* 647 */ this.var_dm.CreateEntity(text);
/* */ }
/* */ }
/* */ }
/* */ catch (Exception ex)
/* */ {
/* 653 */ this.var_dm.LogError(ex.getMessage(), "GENERIC");
/* */ }
/* */ }
/* */