report.java 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package restcontroller.system.report;
  2. import beans.user.User;
  3. import com.alibaba.fastjson.JSONObject;
  4. import common.Controller;
  5. import common.YosException;
  6. import common.annotation.API;
  7. import common.annotation.CACHEING_CLEAN;
  8. import common.data.Rows;
  9. import common.data.SQLFactory;
  10. import restcontroller.R;
  11. public class report extends Controller {
  12. public report(JSONObject content) throws YosException {
  13. super(content);
  14. }
  15. @API(title = "应用报表、打印列表查询", apiversion = R.ID20221213094401.v1.class)
  16. public String queryReportList() throws YosException {
  17. long systemappid = content.getLong("systemappid");
  18. SQLFactory sqlFactory = new SQLFactory(this, "应用报表查询");
  19. sqlFactory.addParameter("systemappid", systemappid);
  20. sqlFactory.addParameter("siteid", siteid);
  21. sqlFactory.addParameter_in("roleids", User.getUserRoleIDs(this, userid));
  22. Rows rows = dbConnect.runSqlQuery(sqlFactory.getSQL());
  23. return getSucReturnObject().setData(rows).toString();
  24. }
  25. @API(title = "应用报表、打印请求预览页面", apiversion = R.ID20221213094501.v1.class)
  26. @CACHEING_CLEAN(apiversions = R.ID20221114135403.v1.class)
  27. public String viewReport() throws YosException {
  28. long sys_reportid = content.getLongValue("sys_reportid");
  29. long dataid = content.getLongValue("dataid");
  30. Rows rows = dbConnect.runSqlQuery("select t1.*,t2.systemapp from sys_report t1 left join sys_systemapp t2 on t1.systemappid=t2.systemappid where sys_reportid=" + sys_reportid);
  31. if (rows.isEmpty()) {
  32. return getErrReturnObject().setErrMsg("找不到报表信息").toString();
  33. }
  34. String jimu_report_id = rows.get(0).getString("jimu_report_id");
  35. if (rows.get(0).getString("systemapp").equals("dispatch")) {
  36. dbConnect.runSqlUpdate("update sa_dispatch set isreport=1 where siteid='" + siteid + "' and sa_dispatchid=" + dataid);
  37. }
  38. return getSucReturnObject().setData("/yosreport/jmreport/view/" + jimu_report_id + "?token=" + getReportToken(sys_reportid, dataid)).toString();
  39. }
  40. }