Search in sources :

Example 31 with PageParameter

use of com.bc.pmpheep.back.plugin.PageParameter in project pmph by BCSquad.

the class FileDownLoadController method exportSituationSchool.

/**
 * Description:申报情况统计页面按申报单位统计导出统计结果
 *
 * @author:lyc
 * @date:2018年1月9日上午10:29:21
 * @param
 * @return void
 */
@LogDetail(businessType = BUSSINESS_TYPE, logRemark = "申报情况统计页面按申报单位统计导出统计结果")
@RequestMapping(value = "/result/exportSituationSchool", method = RequestMethod.GET)
public void exportSituationSchool(Long materialId, String schoolName, Integer state, HttpServletRequest request, HttpServletResponse response) {
    PageParameter<DeclarationSituationSchoolResultVO> pageParameter = new PageParameter<>(1, 50000);
    DeclarationSituationSchoolResultVO declarationSituationSchoolResultVO = new DeclarationSituationSchoolResultVO();
    declarationSituationSchoolResultVO.setMaterialId(materialId);
    declarationSituationSchoolResultVO.setSchoolName(schoolName);
    pageParameter.setParameter(declarationSituationSchoolResultVO);
    Workbook workbook = null;
    List<DeclarationSituationSchoolResultVO> list = null;
    String sheetName = "";
    if (state.intValue() == 1) {
        list = decPositionService.listChosenDeclarationSituationSchoolResultVOs(pageParameter).getRows();
        sheetName = "申报情况按单位统计(按当选数排序)";
    } else if (state.intValue() == 2) {
        list = decPositionService.listPresetDeclarationSituationSchoolResultVOs(pageParameter).getRows();
        sheetName = "申报情况按单位统计(按申报数排序)";
    } else {
        throw new CheckedServiceException(CheckedExceptionBusiness.MATERIAL, CheckedExceptionResult.ILLEGAL_PARAM, "未知的排序方式");
    }
    if (list.size() == 0) {
        list.add(new DeclarationSituationSchoolResultVO());
    }
    try {
        workbook = excelHelper.fromBusinessObjectList(list, sheetName);
    } catch (CheckedServiceException | IllegalArgumentException | IllegalAccessException e) {
        logger.warn("数据表格化的时候失败");
    }
    Material material = materialService.getMaterialById(materialId);
    String fileName = returnFileName(request, material.getMaterialName() + ".xls");
    response.setCharacterEncoding("utf-8");
    response.setContentType("application/force-download");
    response.setHeader("Content-Disposition", "attachment;fileName=" + fileName);
    try (OutputStream out = response.getOutputStream()) {
        workbook.write(out);
        out.flush();
        out.close();
    } catch (Exception e) {
        logger.warn("文件下载时出现IO异常: {}", e.getMessage());
        throw new CheckedServiceException(CheckedExceptionBusiness.FILE, CheckedExceptionResult.FILE_DOWNLOAD_FAILED, "文件在传输时中断");
    }
}
Also used : BufferedOutputStream(java.io.BufferedOutputStream) OutputStream(java.io.OutputStream) PageParameter(com.bc.pmpheep.back.plugin.PageParameter) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) Material(com.bc.pmpheep.back.po.Material) Workbook(org.apache.poi.ss.usermodel.Workbook) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) UnsupportedEncodingException(java.io.UnsupportedEncodingException) IOException(java.io.IOException) DeclarationSituationSchoolResultVO(com.bc.pmpheep.back.vo.DeclarationSituationSchoolResultVO) LogDetail(com.bc.pmpheep.annotation.LogDetail) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 32 with PageParameter

use of com.bc.pmpheep.back.plugin.PageParameter in project pmph by BCSquad.

the class FileDownLoadController method exportResultBook.

/**
 * Description:申报结果统计页面按书名统计导出统计结果
 *
 * @author:lyc
 * @date:2018年1月9日下午2:42:26
 * @param
 * @return void
 */
@LogDetail(businessType = BUSSINESS_TYPE, logRemark = "申报结果统计页面按书名统计导出统计结果")
@RequestMapping(value = "/result/exportResultBook", method = RequestMethod.GET)
public void exportResultBook(Long materialId, String bookName, HttpServletRequest request, HttpServletResponse response) {
    PageParameter<DeclarationResultBookVO> pageParameter = new PageParameter<>(1, 50000);
    DeclarationResultBookVO declarationResultBookVO = new DeclarationResultBookVO();
    declarationResultBookVO.setMaterialId(materialId);
    declarationResultBookVO.setBookName(bookName);
    pageParameter.setParameter(declarationResultBookVO);
    Workbook workbook = null;
    List<DeclarationResultBookVO> list = null;
    list = decPositionService.listDeclarationResultBookVOs(pageParameter).getRows();
    if (list.size() == 0) {
        list.add(new DeclarationResultBookVO());
    }
    try {
        workbook = excelHelper.fromBusinessObjectList(list, "申报结果按书名统计");
    } catch (CheckedServiceException | IllegalArgumentException | IllegalAccessException e) {
        logger.warn("数据表格化的时候失败");
    }
    Material material = materialService.getMaterialById(materialId);
    String fileName = returnFileName(request, material.getMaterialName() + ".xls");
    response.setCharacterEncoding("utf-8");
    response.setContentType("application/force-download");
    response.setHeader("Content-Disposition", "attachment;fileName=" + fileName);
    try (OutputStream out = response.getOutputStream()) {
        workbook.write(out);
        out.flush();
        out.close();
    } catch (Exception e) {
        logger.warn("文件下载时出现IO异常: {}", e.getMessage());
        throw new CheckedServiceException(CheckedExceptionBusiness.FILE, CheckedExceptionResult.FILE_DOWNLOAD_FAILED, "文件在传输时中断");
    }
}
Also used : BufferedOutputStream(java.io.BufferedOutputStream) OutputStream(java.io.OutputStream) PageParameter(com.bc.pmpheep.back.plugin.PageParameter) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) Material(com.bc.pmpheep.back.po.Material) DeclarationResultBookVO(com.bc.pmpheep.back.vo.DeclarationResultBookVO) Workbook(org.apache.poi.ss.usermodel.Workbook) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) UnsupportedEncodingException(java.io.UnsupportedEncodingException) IOException(java.io.IOException) LogDetail(com.bc.pmpheep.annotation.LogDetail) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 33 with PageParameter

use of com.bc.pmpheep.back.plugin.PageParameter in project pmph by BCSquad.

the class FileDownLoadController method surveyQuestionExcel.

/**
 * <pre>
 * 功能描述:导出填空题调查结果Excel 使用示范:
 *
 * @user tyc
 * @param request
 * @param response
 *            2018.01.08 18:31
 */
@ResponseBody
@LogDetail(businessType = BUSSINESS_TYPE, logRemark = "导出填空题调查结果")
@RequestMapping(value = "/excel/surveyQuestionExcel", method = RequestMethod.GET)
public void surveyQuestionExcel(HttpServletRequest request, HttpServletResponse response, @RequestParam("surveyId") Long surveyId, @RequestParam("questionId") Long questionId) {
    Workbook workbook = null;
    List<SurveyQuestionFillVO> surveyQuestionFillVO = null;
    try {
        PageParameter<SurveyQuestionFillVO> pageParameter = new PageParameter<>(1, 50000);
        pageParameter.setParameter(new SurveyQuestionFillVO(surveyId, questionId));
        surveyQuestionFillVO = surveyQuestionAnswerService.listFillQuestion(pageParameter).getRows();
        if (CollectionUtil.isEmpty(surveyQuestionFillVO)) {
            surveyQuestionFillVO.add(new SurveyQuestionFillVO());
        }
        workbook = excelHelper.fromBusinessObjectList(surveyQuestionFillVO, "填空题调查结果");
    } catch (CheckedServiceException | IllegalArgumentException | IllegalAccessException e) {
        logger.warn("数据表格化的时候失败");
    }
    response.setCharacterEncoding("utf-8");
    response.setContentType("application/force-download");
    String name = "填空题调查结果";
    String fileName = returnFileName(request, name + ".xls");
    response.setHeader("Content-Disposition", "attachment;fileName=" + fileName);
    try (OutputStream out = response.getOutputStream()) {
        workbook.write(out);
        out.flush();
        out.close();
    } catch (Exception e) {
        logger.warn("文件下载时出现IO异常:{}", e.getMessage());
        throw new CheckedServiceException(CheckedExceptionBusiness.FILE, CheckedExceptionResult.FILE_DOWNLOAD_FAILED, "文件在传输时中断");
    }
}
Also used : BufferedOutputStream(java.io.BufferedOutputStream) OutputStream(java.io.OutputStream) PageParameter(com.bc.pmpheep.back.plugin.PageParameter) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) Workbook(org.apache.poi.ss.usermodel.Workbook) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) UnsupportedEncodingException(java.io.UnsupportedEncodingException) IOException(java.io.IOException) SurveyQuestionFillVO(com.bc.pmpheep.back.vo.SurveyQuestionFillVO) LogDetail(com.bc.pmpheep.annotation.LogDetail) ResponseBody(org.springframework.web.bind.annotation.ResponseBody) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 34 with PageParameter

use of com.bc.pmpheep.back.plugin.PageParameter in project pmph by BCSquad.

the class FileDownLoadController method exportSituationBook.

/**
 * Description:申报情况统计页面按书名统计导出统计结果
 *
 * @author:lyc
 * @date:2018年1月9日上午11:41:10
 * @param
 * @return void
 */
@LogDetail(businessType = BUSSINESS_TYPE, logRemark = "申报情况统计页面按书名统计导出统计结果")
@RequestMapping(value = "/result/exportSituationBook", method = RequestMethod.GET)
public void exportSituationBook(Long materialId, String bookName, HttpServletRequest request, HttpServletResponse response) {
    PageParameter<DeclarationSituationBookResultVO> pageParameter = new PageParameter<>(1, 50000);
    DeclarationSituationBookResultVO declarationSituationBookResultVO = new DeclarationSituationBookResultVO();
    declarationSituationBookResultVO.setMaterialId(materialId);
    declarationSituationBookResultVO.setBookName(bookName);
    pageParameter.setParameter(declarationSituationBookResultVO);
    Workbook workbook = null;
    List<DeclarationSituationBookResultVO> list = null;
    list = decPositionService.listDeclarationSituationBookResultVOs(pageParameter).getRows();
    if (list.size() == 0) {
        list.add(new DeclarationSituationBookResultVO());
    }
    try {
        workbook = excelHelper.fromBusinessObjectList(list, "申报情况按书名统计");
    } catch (CheckedServiceException | IllegalArgumentException | IllegalAccessException e) {
        logger.warn("数据表格化的时候失败");
    }
    Material material = materialService.getMaterialById(materialId);
    String fileName = returnFileName(request, material.getMaterialName() + ".xls");
    response.setCharacterEncoding("utf-8");
    response.setContentType("application/force-download");
    response.setHeader("Content-Disposition", "attachment;fileName=" + fileName);
    try (OutputStream out = response.getOutputStream()) {
        workbook.write(out);
        out.flush();
        out.close();
    } catch (Exception e) {
        logger.warn("文件下载时出现IO异常: {}", e.getMessage());
        throw new CheckedServiceException(CheckedExceptionBusiness.FILE, CheckedExceptionResult.FILE_DOWNLOAD_FAILED, "文件在传输时中断");
    }
}
Also used : BufferedOutputStream(java.io.BufferedOutputStream) OutputStream(java.io.OutputStream) DeclarationSituationBookResultVO(com.bc.pmpheep.back.vo.DeclarationSituationBookResultVO) PageParameter(com.bc.pmpheep.back.plugin.PageParameter) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) Material(com.bc.pmpheep.back.po.Material) Workbook(org.apache.poi.ss.usermodel.Workbook) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) UnsupportedEncodingException(java.io.UnsupportedEncodingException) IOException(java.io.IOException) LogDetail(com.bc.pmpheep.annotation.LogDetail) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 35 with PageParameter

use of com.bc.pmpheep.back.plugin.PageParameter in project pmph by BCSquad.

the class PmphUserServiceImpl method getPersonalCenter.

@Override
public Map<String, Object> getPersonalCenter(HttpServletRequest request, String state, String materialName, String groupName, String title, String bookname, String name, String authProgress, String topicBookname) {
    String sessionId = CookiesUtil.getSessionId(request);
    PmphUser sessionPmphUser = SessionUtil.getPmphUserBySessionId(sessionId);
    if (null == sessionPmphUser) {
        throw new CheckedServiceException(CheckedExceptionBusiness.MATERIAL, CheckedExceptionResult.NULL_PARAM, "请求用户不存在");
    }
    // 获取用户角色
    List<PmphRole> rolelist = roleService.getPmphRoleByUserId(sessionPmphUser.getId());
    // 用于装所有的数据map
    Map<String, Object> map = new HashMap<>();
    // 教师认证总数量
    Integer writerUserCount = writerUserService.getCount();
    // 机构认证数量orgList
    Integer orgerCount = orgUserService.getCount();
    // 小组
    PmphGroupListVO pmphGroup = new PmphGroupListVO();
    PageParameter<PmphGroupListVO> pageParameterPmphGroup = new PageParameter<>();
    pageParameterPmphGroup.setParameter(pmphGroup);
    // 小组结果
    PageResult<PmphGroupListVO> pageResultPmphGroup = pmphGroupService.getlistPmphGroup(pageParameterPmphGroup, sessionId);
    // 教材申报
    PageParameter<MaterialListVO> pageParameter2 = new PageParameter<>();
    MaterialListVO materialListVO = new MaterialListVO();
    materialListVO.setState(state);
    materialListVO.setMaterialName(materialName);
    pageParameter2.setParameter(materialListVO);
    // 教材申报的结果
    PageResult<MaterialListVO> pageResultMaterialListVO = materialService.listMaterials(pageParameter2, sessionId);
    // 文章审核
    PageParameter<CmsContentVO> pageParameter1 = new PageParameter<>();
    CmsContentVO cmsContentVO = new CmsContentVO();
    cmsContentVO.setTitle(title);
    cmsContentVO.setCategoryId(Const.CMS_CATEGORY_ID_1);
    pageParameter1.setParameter(cmsContentVO);
    // 文章审核的结果
    PageResult<CmsContentVO> pageResultCmsContentVO = cmsContentService.listCmsContent(pageParameter1, sessionId);
    map.put("cmsContent", pageResultCmsContentVO);
    // 图书纠错审核
    PageResult<BookCorrectionAuditVO> pageResultBookCorrectionAuditVO = bookCorrectionService.listBookCorrectionAudit(request, Const.PAGE_NUMBER, Const.PAGE_SIZE, bookname, null, null);
    map.put("bookCorrectionAudit", pageResultBookCorrectionAuditVO);
    // 图书评论审核
    PageParameter<BookUserCommentVO> pageParameter = new PageParameter<>();
    BookUserCommentVO bookUserCommentVO = new BookUserCommentVO();
    // 去除空格
    bookUserCommentVO.setName(name.replaceAll(" ", ""));
    pageParameter.setParameter(bookUserCommentVO);
    PageResult<BookUserCommentVO> pageResultBookUserCommentVO = bookUserCommentService.listBookUserCommentAdmin(pageParameter);
    map.put("bookUserComment", pageResultBookUserCommentVO);
    // 选题申报
    PageParameter<TopicDeclarationVO> pageParameter3 = new PageParameter<>();
    // 选题申报当前用户角色
    PmphIdentity pmphIdentity = pmphUserService.identity(sessionId);
    TopicDeclarationVO topicDeclarationVO = new TopicDeclarationVO();
    // 是否由主任受理
    if (pmphIdentity.getIsDirector()) {
        topicDeclarationVO.setIsDirectorHandling(true);
    }
    // 是否由运维人员受理
    if (pmphIdentity.getIsOpts()) {
        topicDeclarationVO.setIsOptsHandling(true);
    }
    // 是否由编辑受理
    if (pmphIdentity.getIsEditor()) {
        topicDeclarationVO.setIsEditorHandling(true);
    }
    for (PmphRole pmphRole : rolelist) {
        // 编辑
        if (2 == pmphRole.getId()) {
            topicDeclarationVO.setIsEditorHandling(true);
        }
        // 主任
        if (9 == pmphRole.getId()) {
            topicDeclarationVO.setIsDirectorHandling(true);
        }
    }
    String[] strs = authProgress.split(",");
    List<Long> progress = new ArrayList<>();
    for (String str : strs) {
        progress.add(Long.valueOf(str));
    }
    topicDeclarationVO.setBookname(topicBookname);
    pageParameter3.setParameter(topicDeclarationVO);
    // 
    if (sessionPmphUser.getIsAdmin()) {
        PageResult<TopicDeclarationVO> pageResultTopicDeclarationVO = topicService.listMyTopic(progress, pageParameter3, null);
        // topicService.listCheckTopic(progress, pageParameter3);
        map.put("topicList", pageResultTopicDeclarationVO);
    } else {
        if (2 == rolelist.get(0).getId() || 9 == rolelist.get(0).getId() || 1 == rolelist.get(0).getId()) {
            PageResult<TopicDeclarationVO> pageResultTopicDeclarationVO = topicService.listMyTopic(progress, pageParameter3, sessionPmphUser.getId());
            // topicService.listCheckTopic(progress, pageParameter3);
            map.put("topicList", pageResultTopicDeclarationVO);
        } else {
            PageResult<TopicDeclarationVO> pageResultTopicDeclarationVO = new PageResult<>();
            List<TopicDeclarationVO> list = new ArrayList<>();
            pageResultTopicDeclarationVO.setPageNumber(0);
            pageResultTopicDeclarationVO.setRows(list);
            pageResultTopicDeclarationVO.setPageTotal(0);
            pageResultTopicDeclarationVO.setStart(0);
            pageResultTopicDeclarationVO.setTotal(0);
            ;
            map.put("topicList", pageResultTopicDeclarationVO);
        }
    }
    // 获取用户上次登录时间
    List<SysOperation> listSysOperation = sysOperationService.getSysOperation(sessionPmphUser.getId());
    Timestamp loginTime = DateUtil.getCurrentTime();
    if (!listSysOperation.isEmpty()) {
        loginTime = listSysOperation.get(0).getOperateDate();
    }
    // 把其他模块的数据都装入map中返回给前端
    map.put("materialList", pageResultMaterialListVO);
    map.put("pmphGroup", pageResultPmphGroup);
    map.put("writerUserCount", writerUserCount);
    map.put("orgUserCount", orgerCount);
    // 把用户信息存入map
    map.put("pmphUser", sessionPmphUser);
    // 把用户角色存入map
    map.put("pmphRole", rolelist);
    // 把选题申报的当前身份存入map
    map.put("pmphIdentity", pmphIdentity);
    // 存入用户上次操作时间
    map.put("loginTime", loginTime);
    return map;
}
Also used : SysOperation(com.bc.pmpheep.back.po.SysOperation) CmsContentVO(com.bc.pmpheep.back.vo.CmsContentVO) HashMap(java.util.HashMap) MaterialListVO(com.bc.pmpheep.back.vo.MaterialListVO) ArrayList(java.util.ArrayList) PageParameter(com.bc.pmpheep.back.plugin.PageParameter) Timestamp(java.sql.Timestamp) BookCorrectionAuditVO(com.bc.pmpheep.back.vo.BookCorrectionAuditVO) PmphRole(com.bc.pmpheep.back.po.PmphRole) PmphUser(com.bc.pmpheep.back.po.PmphUser) PmphIdentity(com.bc.pmpheep.back.vo.PmphIdentity) CheckedServiceException(com.bc.pmpheep.service.exception.CheckedServiceException) TopicDeclarationVO(com.bc.pmpheep.back.vo.TopicDeclarationVO) PageResult(com.bc.pmpheep.back.plugin.PageResult) BookUserCommentVO(com.bc.pmpheep.back.vo.BookUserCommentVO) PmphGroupListVO(com.bc.pmpheep.back.vo.PmphGroupListVO)

Aggregations

PageParameter (com.bc.pmpheep.back.plugin.PageParameter)78 LogDetail (com.bc.pmpheep.annotation.LogDetail)43 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)43 ResponseBody (org.springframework.web.bind.annotation.ResponseBody)39 ResponseBean (com.bc.pmpheep.controller.bean.ResponseBean)37 BaseTest (com.bc.pmpheep.test.BaseTest)28 Test (org.junit.Test)28 PageResult (com.bc.pmpheep.back.plugin.PageResult)24 Rollback (org.springframework.test.annotation.Rollback)14 CheckedServiceException (com.bc.pmpheep.service.exception.CheckedServiceException)12 IOException (java.io.IOException)8 WriterUserManagerVO (com.bc.pmpheep.back.vo.WriterUserManagerVO)7 Workbook (org.apache.poi.ss.usermodel.Workbook)7 OrgVO (com.bc.pmpheep.back.vo.OrgVO)6 ArrayList (java.util.ArrayList)6 Material (com.bc.pmpheep.back.po.Material)5 OrgAndOrgUserVO (com.bc.pmpheep.back.vo.OrgAndOrgUserVO)5 BufferedOutputStream (java.io.BufferedOutputStream)5 OutputStream (java.io.OutputStream)5 UnsupportedEncodingException (java.io.UnsupportedEncodingException)5