diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/controller/BmsDeclarationRecordsController.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/controller/BmsDeclarationRecordsController.java index 44e0d2a..694a97f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/controller/BmsDeclarationRecordsController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/controller/BmsDeclarationRecordsController.java @@ -2,6 +2,7 @@ package com.ruoyi.jjh.declaration.controller; import cn.hutool.core.io.FileUtil; import cn.hutool.core.util.ZipUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.constant.Constants; @@ -93,7 +94,7 @@ public class BmsDeclarationRecordsController extends BaseController { @PreAuthorize("@ss.hasAnyRoles('admin,other-gov,gov,ent')") @ApiOperation(value = "查询在线申报记录列表") @GetMapping("/list") - public TableDataInfo list(BmsDeclarationRecordsDto bmsDeclarationRecordsDto) { + public AjaxResult list(Page page,BmsDeclarationRecordsDto bmsDeclarationRecordsDto) { // 获取当前登录用户是否是企业端 boolean admin = false; boolean b = false; @@ -107,9 +108,8 @@ public class BmsDeclarationRecordsController extends BaseController { if (!admin && b) { bmsDeclarationRecordsDto.setCreditCode(str); } - startPage(); - List list = bmsDeclarationRecordsService.selectBmsDeclarationRecordsList(bmsDeclarationRecordsDto); - return getDataTable(list); + Page bmsDeclarationRecordsQueryVoPage = bmsDeclarationRecordsService.selectBmsDeclarationRecordsList(page,bmsDeclarationRecordsDto); + return success(bmsDeclarationRecordsQueryVoPage); } /** @@ -180,9 +180,9 @@ public class BmsDeclarationRecordsController extends BaseController { @Log(title = "在线申报记录", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, BmsDeclarationRecordsDto bmsDeclarationRecordsDto) { - List list = bmsDeclarationRecordsService.selectBmsDeclarationRecordsList(bmsDeclarationRecordsDto); + Page bmsDeclarationRecordsQueryVoPage = bmsDeclarationRecordsService.selectBmsDeclarationRecordsList(new Page<>(),bmsDeclarationRecordsDto); ExcelUtil util = new ExcelUtil(BmsDeclarationRecordsQueryVo.class); - util.exportExcel(response, list, "在线申报记录数据"); + util.exportExcel(response, bmsDeclarationRecordsQueryVoPage.getRecords(), "在线申报记录数据"); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/entity/dto/BmsDeclarationRecordsDto.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/entity/dto/BmsDeclarationRecordsDto.java index 0938ac9..e4a8dd2 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/entity/dto/BmsDeclarationRecordsDto.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/entity/dto/BmsDeclarationRecordsDto.java @@ -18,7 +18,7 @@ import java.util.List; * @create: 2023-08-28 17:54 */ @Data -@EqualsAndHashCode(callSuper = true) +//@EqualsAndHashCode(callSuper = true) public class BmsDeclarationRecordsDto extends BmsDeclarationRecords { @@ -26,6 +26,10 @@ public class BmsDeclarationRecordsDto extends BmsDeclarationRecords { @Excel(name = "申报任务标题") private String enterpriseDirectory; + private Integer pageSize; + + private Integer pageNum; + @ApiModelProperty(value = "申报单位") @Excel(name = "申报单位") diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/mapper/BmsDeclarationRecordsMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/mapper/BmsDeclarationRecordsMapper.java index ae32e04..6a065d6 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/mapper/BmsDeclarationRecordsMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/mapper/BmsDeclarationRecordsMapper.java @@ -1,6 +1,7 @@ package com.ruoyi.jjh.declaration.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.jjh.declaration.entity.BmsDeclarationRecords; import com.ruoyi.jjh.declaration.entity.dto.ApprovalDeclarationRecordsQueryDto; import com.ruoyi.jjh.declaration.entity.dto.BmsDeclarationRecordsDto; @@ -33,7 +34,7 @@ public interface BmsDeclarationRecordsMapper extends BaseMapper selectBmsDeclarationRecordsList(BmsDeclarationRecordsDto bmsDeclarationRecordsDto); + public Page selectBmsDeclarationRecordsList(Page page,@Param("req") BmsDeclarationRecordsDto bmsDeclarationRecordsDto); public List selectBmsDeclarationRecordsZwList(BmsDeclarationRecordsDto bmsDeclarationRecordsDto); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/IBmsDeclarationRecordsService.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/IBmsDeclarationRecordsService.java index 04999ca..bd2d28e 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/IBmsDeclarationRecordsService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/IBmsDeclarationRecordsService.java @@ -1,5 +1,6 @@ package com.ruoyi.jjh.declaration.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.jjh.declaration.entity.BmsDeclarationRecords; import com.ruoyi.jjh.declaration.entity.dto.ApprovalDeclarationRecordsQueryDto; @@ -8,6 +9,7 @@ import com.ruoyi.jjh.declaration.entity.dto.BmsDeclarationRecordsDto; import com.ruoyi.jjh.declaration.entity.vo.ApprovalDeclarationRecordsQueryVo; import com.ruoyi.jjh.declaration.entity.vo.BmsDeclarationRecordsQueryVo; import com.ruoyi.jjh.declaration.entity.vo.DeclarationRecordsVo; +import com.ruoyi.jjh.ent.entity.JMemorandum; import com.ruoyi.jjh.ent.entity.JProject; import com.ruoyi.jjh.ent.entity.JSmartDeclaration; @@ -34,7 +36,7 @@ public interface IBmsDeclarationRecordsService extends IService selectBmsDeclarationRecordsList(BmsDeclarationRecordsDto bmsDeclarationRecordsDto); + public Page selectBmsDeclarationRecordsList(Page page, BmsDeclarationRecordsDto bmsDeclarationRecordsDto); public List selectBmsDeclarationRecordsZwList(BmsDeclarationRecordsDto bmsDeclarationRecordsDto); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/impl/BmsDeclarationRecordsServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/impl/BmsDeclarationRecordsServiceImpl.java index 26de699..c0ad164 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/impl/BmsDeclarationRecordsServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/declaration/service/impl/BmsDeclarationRecordsServiceImpl.java @@ -4,16 +4,13 @@ import cn.hutool.core.date.DateTime; import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.jjh.declaration.component.TimingRemindService; -import com.ruoyi.jjh.declaration.entity.BmsApprovalInfo; -import com.ruoyi.jjh.declaration.entity.BmsDeclarationRecords; -import com.ruoyi.jjh.declaration.entity.BmsEnterpriseBasicInfo; -import com.ruoyi.jjh.declaration.entity.BmsProcessInfo; -import com.ruoyi.jjh.declaration.entity.BmsTemplateRecord; +import com.ruoyi.jjh.declaration.entity.*; import com.ruoyi.jjh.declaration.entity.dto.ApprovalDeclarationRecordsQueryDto; import com.ruoyi.jjh.declaration.entity.dto.BmsApprovalInfoUpdateDto; import com.ruoyi.jjh.declaration.entity.dto.BmsDeclarationRecordsDto; @@ -21,12 +18,7 @@ import com.ruoyi.jjh.declaration.entity.vo.ApprovalDeclarationRecordsQueryVo; import com.ruoyi.jjh.declaration.entity.vo.BmsDeclarationRecordsQueryVo; import com.ruoyi.jjh.declaration.entity.vo.DeclarationRecordsVo; import com.ruoyi.jjh.declaration.mapper.BmsDeclarationRecordsMapper; -import com.ruoyi.jjh.declaration.service.IBmsApprovalInfoService; -import com.ruoyi.jjh.declaration.service.IBmsDeclarationRecordsService; -import com.ruoyi.jjh.declaration.service.IBmsEnterpriseBasicInfoService; -import com.ruoyi.jjh.declaration.service.IBmsProcessInfoService; -import com.ruoyi.jjh.declaration.service.IBmsTemplateRecordService; -import com.ruoyi.jjh.declaration.service.ICommonService; +import com.ruoyi.jjh.declaration.service.*; import com.ruoyi.jjh.ent.entity.JProject; import com.ruoyi.jjh.ent.entity.JSmartDeclaration; import com.ruoyi.jjh.ent.service.JProjectService; @@ -106,7 +98,6 @@ public class BmsDeclarationRecordsServiceImpl extends ServiceImpl selectBmsDeclarationRecordsList(BmsDeclarationRecordsDto bmsDeclarationRecordsDto) { - return baseMapper.selectBmsDeclarationRecordsList(bmsDeclarationRecordsDto); + public Page selectBmsDeclarationRecordsList(Page page, BmsDeclarationRecordsDto bmsDeclarationRecordsDto) { + return baseMapper.selectBmsDeclarationRecordsList(page, bmsDeclarationRecordsDto); } + @Override public List selectBmsDeclarationRecordsZwList(BmsDeclarationRecordsDto bmsDeclarationRecordsDto) { return baseMapper.selectBmsDeclarationRecordsZwList(bmsDeclarationRecordsDto); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/controller/JPolicyFileController.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/controller/JPolicyFileController.java index 48e5afe..5b28d60 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/controller/JPolicyFileController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/controller/JPolicyFileController.java @@ -1,23 +1,31 @@ package com.ruoyi.jjh.ent.controller; +import com.alibaba.excel.EasyExcel; +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.jjh.declaration.entity.BmsDeclarationRecords; import com.ruoyi.jjh.ent.entity.JPolicyFile; import com.ruoyi.jjh.ent.entity.request.JPolicyFileRequest; +import com.ruoyi.jjh.ent.service.JMemorandumService; import com.ruoyi.jjh.ent.service.JPolicyFileService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; /** * 政策文件(j_policy_file)表控制层 @@ -36,6 +44,9 @@ public class JPolicyFileController extends BaseController { @Resource private JPolicyFileService jPolicyFileService; + @Resource + private JMemorandumService jMemorandumService; + /** * 分页查询所有数据 * @@ -49,6 +60,79 @@ public class JPolicyFileController extends BaseController { return success(jPolicyFileService.page(page, jPolicyFileRequest)); } + @ApiOperation(value = "获取某个模板的已填报数据并且导出") + @GetMapping("/getYtb") + public void getYtb(HttpServletResponse response, Long templateRecordId) { + List ytb = jMemorandumService.getYtb(templateRecordId); + List> data = new ArrayList<>(); + //单选的value + List value1 = new ArrayList<>(); + + List> list = new ArrayList<>(); + List head0 = new ArrayList<>(); + head0.add("企业名称"); + List head1 = new ArrayList<>(); + head1.add("统一社会信用代码"); + list.add(head0); + list.add(head1); + for (int i = 0; i < ytb.size(); i++) { + JSONArray js1 = JSONObject.parse(ytb.get(i).getTemplateJson()).getJSONArray("fields"); + JSONArray op1 = JSONObject.parse(js1.get(0).toString()).getJSONArray("options"); + if (i == 0) { + for (Object s1 : op1) { + List head2 = new ArrayList<>(); + JSONObject parse = JSONObject.parse(s1.toString()); + head2.add(parse.get("label").toString()); + value1.add(parse.get("value").toString()); + list.add(head2); + } + } + JSONArray jsonArray = JSONObject.parse(js1.get(0).toString()).getJSONArray("defaultValue"); + for (Object o : jsonArray) { + int i1 = value1.indexOf(o.toString()); + if (i1 != -1) { + if (i1==0) { + data.add(Arrays.asList(ytb.get(i).getMatter(), ytb.get(i).getCreditCode(), "是", "", "", "", "")); + } + if (i1==1) { + data.add(Arrays.asList(ytb.get(i).getMatter(), ytb.get(i).getCreditCode(), "", "是", "", "", "")); + } + if (i1==2) { + data.add(Arrays.asList(ytb.get(i).getMatter(), ytb.get(i).getCreditCode(), "", "", "是", "", "")); + } + if (i1==3) { + data.add(Arrays.asList(ytb.get(i).getMatter(), ytb.get(i).getCreditCode(), "", "", "", "是", "")); + } + if (i1==4) { + data.add(Arrays.asList(ytb.get(i).getMatter(), ytb.get(i).getCreditCode(), "", "", "", "", "是")); + } + } + } + } + + + String fileName = "数据导出" + ".xlsx"; + try { + fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20"); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException("文件名编码失败", e); + } + // 创建 Excel 写入流 + // 设置响应头,告诉浏览器下载文件 + // 设置响应头,告诉浏览器下载文件 + response.setContentType("application/vnd.ms-excel"); + response.setHeader("Content-Disposition", "attachment; filename=" + fileName); + try (ServletOutputStream outputStream = response.getOutputStream()) { + // 使用 EasyExcel 写数据到响应流 + EasyExcel.write(outputStream) + // 这里放入动态头 + .head(list).sheet("模板") + // 当然这里数据也可以用 List> 去传入 + .doWrite(data); + } catch (IOException e) { + throw new RuntimeException(e); + } + } /** * 通过主键查询单条数据 diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/mapper/JMemorandumMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/mapper/JMemorandumMapper.java index ce9592b..0590ba3 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/mapper/JMemorandumMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/mapper/JMemorandumMapper.java @@ -2,6 +2,7 @@ package com.ruoyi.jjh.ent.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.jjh.declaration.entity.BmsDeclarationRecords; import com.ruoyi.jjh.ent.entity.JMemorandum; import com.ruoyi.jjh.ent.entity.request.JMemorandumRequest; import org.apache.ibatis.annotations.Param; @@ -34,5 +35,8 @@ public interface JMemorandumMapper extends BaseMapper { * @return 所有数据 */ List selectIdToAll(@Param("req") JMemorandumRequest jMemorandumRequest); + + + List getYtb(@Param("templateRecordId") Long templateRecordId); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/JMemorandumService.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/JMemorandumService.java index 1584635..6f59092 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/JMemorandumService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/JMemorandumService.java @@ -2,6 +2,7 @@ package com.ruoyi.jjh.ent.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.jjh.declaration.entity.BmsDeclarationRecords; import com.ruoyi.jjh.ent.entity.JMemorandum; import com.ruoyi.jjh.ent.entity.request.JMemorandumRequest; @@ -33,5 +34,7 @@ public interface JMemorandumService extends IService { * @return 所有数据 */ List selectIdToAll(JMemorandumRequest jMemorandumRequest); + + List getYtb(Long templateRecordId); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/impl/JMemorandumServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/impl/JMemorandumServiceImpl.java index 0f47334..77095ab 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/impl/JMemorandumServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/jjh/ent/service/impl/JMemorandumServiceImpl.java @@ -2,6 +2,7 @@ package com.ruoyi.jjh.ent.service.impl; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.jjh.declaration.entity.BmsDeclarationRecords; import com.ruoyi.jjh.ent.entity.JMemorandum; import com.ruoyi.jjh.ent.entity.request.JMemorandumRequest; import com.ruoyi.jjh.ent.mapper.JMemorandumMapper; @@ -47,5 +48,10 @@ public class JMemorandumServiceImpl extends ServiceImpl getYtb(Long templateRecordId) { + return baseMapper.getYtb(templateRecordId); + } + } diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index e673aef..632a266 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -16,8 +16,8 @@ ruoyi: # 日志配置 logging: level: - com.ruoyi: info - org.springframework: info + com.ruoyi: error + org.springframework: error # 用户配置 user: diff --git a/ruoyi-admin/src/main/resources/mapper/jjh/declaration/BmsDeclarationRecordsMapper.xml b/ruoyi-admin/src/main/resources/mapper/jjh/declaration/BmsDeclarationRecordsMapper.xml index ad4a22a..8689bd9 100644 --- a/ruoyi-admin/src/main/resources/mapper/jjh/declaration/BmsDeclarationRecordsMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/jjh/declaration/BmsDeclarationRecordsMapper.xml @@ -177,42 +177,43 @@ FROM bms_declaration_records AS a LEFT JOIN bms_enterprise_basic_info b ON a.credit_code = b.tyshxydm - inner join bms_template_record f on a.template_record_id = f.id + left join bms_template_record f on a.template_record_id = f.id LEFT JOIN bms_template_info c on a.template_id = c.id left join sys_dict_data e on a.status = e.dict_value and e.dict_type='bms_approval_status' - and f.enterprise_directory like - concat('%', #{enterpriseDirectory}, + and f.enterprise_directory like + concat('%', #{req.enterpriseDirectory}, '%') - and c.template_name like concat('%', - #{templateName}, '%') + and c.template_name like concat('%', + #{req.templateName}, '%') - and a.credit_code = #{creditCode} - and a.enterprise_id = #{enterpriseId} - and c.level = #{level} - and year = #{year} - and c.responsibility_unit = #{responsibilityUnit} - and a.status = #{status} - + and a.credit_code = #{req.creditCode} + and a.enterprise_id = #{req.enterpriseId} + and c.level = #{req.level} + and year = #{req.year} + and c.responsibility_unit = #{req.responsibilityUnit} + and a.status = #{req.status} + and a.status in - + #{item} - + and a.status in (0,10) - + and a.status not in (0,10) - and a.is_deleted = #{isDeleted} + and a.is_deleted = #{req.isDeleted} - + order by a.create_time desc - - order by FIELD(a.status, 0, 1, 2, 3,10,8,7,9,5),a.create_time desc, e.dict_sort desc + + order by FIELD(a.status, 0, 1, 2, 3,10,8,7,9,5),a.create_time desc, e.dict_sort desc, + a.id DESC +