MySurveyAction.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. package com.key.dwsurvey.action;
  2. import javax.servlet.http.HttpServletRequest;
  3. import javax.servlet.http.HttpServletResponse;
  4. import com.key.dwsurvey.service.SurveyDirectoryManager;
  5. import net.sf.json.JSONObject;
  6. import net.sf.json.JsonConfig;
  7. import org.apache.struts2.convention.annotation.*;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import com.key.common.base.action.CrudActionSupport;
  10. import com.key.common.base.entity.User;
  11. import com.key.common.base.service.AccountManager;
  12. import com.key.common.utils.web.Struts2Utils;
  13. import com.key.dwsurvey.entity.SurveyDirectory;
  14. /**
  15. * 我的问卷 action
  16. * @author KeYuan(keyuan258@gmail.com)
  17. *
  18. * https://github.com/wkeyuan/DWSurvey
  19. * http://dwsurvey.net
  20. *
  21. */
  22. @Namespace("/design")
  23. @InterceptorRefs({ @InterceptorRef("paramsPrepareParamsStack")})
  24. @Results({
  25. @Result(name=MySurveyAction.SUCCESS,location="/WEB-INF/page/content/diaowen-design/list.jsp",type=Struts2Utils.DISPATCHER),
  26. @Result(name="design",location="/design/my-survey-design.action?surveyId=${id}",type=Struts2Utils.REDIRECT),
  27. })
  28. @AllowedMethods({"surveyState","attrs"})
  29. public class MySurveyAction extends CrudActionSupport<SurveyDirectory, String>{
  30. @Autowired
  31. private SurveyDirectoryManager surveyDirectoryManager;
  32. @Autowired
  33. private AccountManager accountManager;
  34. @Override
  35. public String list() throws Exception {
  36. HttpServletRequest request=Struts2Utils.getRequest();
  37. page=surveyDirectoryManager.findByUser(page,entity);
  38. return SUCCESS;
  39. }
  40. public String delete() throws Exception {
  41. HttpServletResponse response=Struts2Utils.getResponse();
  42. String result="false";
  43. try{
  44. User user = accountManager.getCurUser();
  45. System.out.println("deleteId:"+id+":"+user);
  46. if(user!=null){
  47. String userId=user.getId();
  48. SurveyDirectory surveyDirectory=surveyDirectoryManager.getSurveyByUser(id,userId);
  49. if(surveyDirectory!=null){
  50. System.out.println("deleteId:"+id);
  51. surveyDirectoryManager.delete(id);
  52. result="true";
  53. }
  54. }
  55. }catch (Exception e) {
  56. result="false";
  57. }
  58. response.getWriter().write(result);
  59. return null;
  60. }
  61. //问卷壮态设置
  62. public String surveyState() throws Exception{
  63. HttpServletResponse resp=Struts2Utils.getResponse();
  64. String result="";
  65. try{
  66. User user= accountManager.getCurUser();
  67. if(user!=null){
  68. String userId=user.getId();
  69. SurveyDirectory surveyDirectory=surveyDirectoryManager.getSurveyByUser(id, userId);
  70. System.out.println(id+":"+entity.getSurveyState());
  71. if(surveyDirectory!=null){
  72. int surveyState=entity.getSurveyState();
  73. System.out.println("surveyState:"+surveyState);
  74. surveyDirectory.setSurveyState(surveyState);
  75. }
  76. }
  77. result="true";
  78. }catch(Exception e){
  79. e.printStackTrace();
  80. result="error";
  81. }
  82. resp.getWriter().write(result);
  83. return null;
  84. }
  85. public String attrs() throws Exception {
  86. HttpServletRequest request=Struts2Utils.getRequest();
  87. HttpServletResponse response=Struts2Utils.getResponse();
  88. try{
  89. SurveyDirectory survey=surveyDirectoryManager.getSurvey(id);
  90. JsonConfig cfg = new JsonConfig();
  91. cfg.setExcludes(new String[]{"handler","hibernateLazyInitializer"});
  92. JSONObject jsonObject=JSONObject.fromObject(survey,cfg);
  93. response.getWriter().write(jsonObject.toString());
  94. }catch(Exception e){
  95. e.printStackTrace();
  96. }
  97. return null;
  98. }
  99. @Override
  100. protected void prepareModel() throws Exception {
  101. entity=surveyDirectoryManager.getModel(id);
  102. }
  103. public void prepareSurveyState() throws Exception {
  104. prepareModel();
  105. }
  106. public void prepareExecute() throws Exception {
  107. prepareModel();
  108. }
  109. }