package com.sp2p.service; import java.sql.Connection; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import com.shove.base.BaseService; import com.shove.data.DataSet; import com.shove.data.dao.MySQL; import com.shove.vo.PageBean; import com.sp2p.dao.QuestionnaireDao; public class QuestionnaireService extends BaseService { private QuestionnaireDao questionnaireDao; public QuestionnaireDao getQuestionnaireDao() { return questionnaireDao; } public void setQuestionnaireDao(QuestionnaireDao questionnaireDao) { this.questionnaireDao = questionnaireDao; } /** * 查询所有问卷题目 * @return * @throws Exception */ public void queryQuestionnaire(PageBean<Map<String,Object>> pageBean) throws Exception{ Connection conn =MySQL.getConnection(); try { dataPage(conn, pageBean, "t_questionnaire", "*", "", ""); } catch (Exception e) { e.printStackTrace(); throw e; }finally{ conn.close(); } } /** * 查询所有问卷题目 * @return * @throws Exception */ public List<Map<String, Object>> queryQuestionnaire() throws Exception{ Connection conn =MySQL.getConnection(); List<Map<String, Object>> list = new ArrayList<Map<String,Object>>(); try { DataSet dataSet = MySQL.executeQuery(conn, "select * from t_questionnaire where status = 1"); dataSet.tables.get(0).rows.genRowsMap(); list = dataSet.tables.get(0).rows.rowsMap; } catch (Exception e) { e.printStackTrace(); throw e; }finally{ conn.close(); } return list!=null&&list.size()>0?list:null; } /** * 查询所有问卷题目 * @return * @throws Exception */ public List<Map<String, Object>> queryOption() throws Exception{ Connection conn =MySQL.getConnection(); List<Map<String, Object>> list = new ArrayList<Map<String,Object>>(); try { DataSet dataSet = MySQL.executeQuery(conn, "select * from t_option "); dataSet.tables.get(0).rows.genRowsMap(); list = dataSet.tables.get(0).rows.rowsMap; } catch (Exception e) { e.printStackTrace(); throw e; }finally{ conn.close(); } return list!=null&&list.size()>0?list:null; } /** * 查询一个的选项 * @param questionId * @return * @throws Exception */ public List<Map<String, Object>> queryOption(Long questionId) throws Exception{ Connection conn =MySQL.getConnection(); List<Map<String, Object>> list = new ArrayList<Map<String,Object>>(); try { list = questionnaireDao.queryOption(conn, questionId); } catch (Exception e) { throw e; }finally{ conn.close(); } return list!=null&&list.size()>0?list:null; } /** * 查找一个问题 * @param questionId * @return * @throws Exception */ public Map<String, String> queryQuestionnaire(Long questionId) throws Exception{ Connection conn =MySQL.getConnection(); Map<String, String> map = new HashMap<String, String>(); try { map = questionnaireDao.queryQuestionnaire(conn, questionId); } catch (Exception e) { throw e; }finally{ conn.close(); } return map!=null?map:null; } /** * * 添加问题 * @param question * @param maxSorce * @param status * @param options * @param scores * @param type * @param questionType * @return * @throws Exception */ public Long addQuestionnaire(String question,int maxSorce,int status,String options,String scores, Long type, Long questionType) throws Exception{ Connection conn =MySQL.getConnection(); Long result = 0l; String[] option = options.split(","); String[] score = scores.split(","); try { result = questionnaireDao.addQuestionnaire(question, maxSorce, status, conn,type,questionType); for (int i = 0; i < option.length; i++) { questionnaireDao.addOption(option[i], result, Integer.parseInt(score[i]), conn); } conn.commit(); } catch (Exception e) { conn.rollback(); throw e; }finally{ conn.close(); } return result; } /** * 修改问题 * @param maxScore * @param question * @param id * @param status * @param type * @param questionType * @return * @throws Exception */ public Long updateQuestionnaire(int maxScore ,String question, Long id,int status, Long type, Long questionType) throws Exception{ Connection conn =MySQL.getConnection(); Long result = 0l; try { result = questionnaireDao.updateQuestionnaire(maxScore, question, id, status, conn,type,questionType); conn.commit(); } catch (Exception e) { conn.rollback(); throw e; }finally{ conn.close(); } return result; } /** * 删除问题 * @param id * @return * @throws Exception */ public Long deleteQuestionnaire(String id) throws Exception{ Connection conn =MySQL.getConnection(); Long result = 0l; try { result = questionnaireDao.deleteQuestionnaire(id, conn); questionnaireDao.deleteOptionByParentID(id, conn); conn.commit(); } catch (Exception e) { conn.rollback(); throw e; }finally{ conn.close(); } return result; } /** * 删除选项 * @param id * @return * @throws Exception */ public Long deleteOption(Long id) throws Exception{ Connection conn =MySQL.getConnection(); Long result = 0l; try { result = questionnaireDao.deleteOption(id, conn); conn.commit(); } catch (Exception e) { conn.rollback(); throw e; }finally{ conn.close(); } return result; } /** * 添加问题选项 * @param score * @param option * @param questionId * @return * @throws Exception */ public Long addOption(int score ,String option, Long questionId) throws Exception{ Connection conn =MySQL.getConnection(); Long result = 0l; try { result = questionnaireDao.addOption(option, questionId, score, conn); conn.commit(); } catch (Exception e) { conn.rollback(); throw e; }finally{ conn.close(); } return result; } /** * 修改选项 * @param score * @param option * @param id * @return * @throws Exception */ public Long updateOption(int score ,String option, Long id) throws Exception{ Connection conn =MySQL.getConnection(); Long result = 0l; try { result = questionnaireDao.updateOption(id, score, option, conn); conn.commit(); } catch (Exception e) { conn.rollback(); throw e; }finally{ conn.close(); } return result; } }