Tnotice.java 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package openapi.restcontroller.wechatapp.tnotice;
  2. import net.sf.json.JSONObject;
  3. import openapi.base.Controller;
  4. import openapi.base.SQLFactory;
  5. import openapi.base.data.Row;
  6. import openapi.base.data.Rows;
  7. import openapi.base.data.RowsMap;
  8. import openapi.base.data.db.DBConnect;
  9. import java.util.Arrays;
  10. public class Tnotice extends Controller {
  11. public Tnotice(JSONObject content) {
  12. super(content);
  13. }
  14. public String query() {
  15. /**
  16. * 创建数据库连接
  17. */
  18. DBConnect drpConnect = new DBConnect();
  19. /**
  20. *排序条件设置
  21. */
  22. String[] sortmsg = {"t1.useddate"};
  23. String sort = "t1.useddate desc";
  24. if (content.containsKey("sort") && Arrays.asList(sortmsg).contains(content.getString("sort"))) {
  25. sort = content.getString("sort");
  26. }
  27. /**
  28. * SQL公告查询参数设置并查询
  29. */
  30. SQLFactory factory = new SQLFactory(this, "公告查询", pageSize, pageNumber, sort);
  31. factory.addParameter("hrid", hrid);
  32. factory.addParameter("siteid", siteid);
  33. if (getUserType().equals("经销商主账号")) {
  34. factory.addParameter_SQL("fsendto", "'所有经销商主账号','所有经销商账号'");
  35. } else if (getUserType().equals("经销商辅助账号")) {
  36. factory.addParameter_SQL("fsendto", "'所有经销商账号'");
  37. } else {
  38. factory.addParameter_SQL("fsendto", "'所有非经销商账号'");
  39. }
  40. Rows rows = drpConnect.runSqlQuery(factory.getSQL());
  41. if (rows.isEmpty()) {
  42. return getReturnObject_suc_page(rows, true, 0, sortmsg).toString();
  43. }
  44. /**
  45. * 获取公告id批查条件
  46. */
  47. String idwhere = rows.getInWhere("tnoticeid");
  48. /**
  49. *公告附件查询参数设置,并将结果存放置map
  50. */
  51. SQLFactory docinfofactory = new SQLFactory(this, "公告附件查询");
  52. docinfofactory.addParameter_SQL("tnoticeid", idwhere);
  53. docinfofactory.addParameter("siteid", siteid);
  54. RowsMap docinfomap = drpConnect.runSqlQuery(docinfofactory.getSQL()).toRowsMap("tnoticeid");
  55. /**
  56. *公告图片查询参数设置,并将结果存放置map
  57. */
  58. SQLFactory picfactory = new SQLFactory(this, "公告图片查询");
  59. picfactory.addParameter_SQL("tnoticeid", idwhere);
  60. picfactory.addParameter("siteid", siteid);
  61. RowsMap picmap = drpConnect.runSqlQuery(picfactory.getSQL()).toRowsMap("tnoticeid");
  62. /**
  63. * 遍历公告,设置公告附件、公告图片
  64. */
  65. for (Row row : rows) {
  66. String tnoticeid = row.getString("tnoticeid");
  67. row.put("docinfos", docinfomap.get(tnoticeid));
  68. row.put("pics", picmap.get(tnoticeid));
  69. }
  70. return getReturnObject_suc_page(rows, true, 0, sortmsg).toString();
  71. }
  72. }