From 383b2d4d9eb40070c9ee12f683318b8db1d154f5 Mon Sep 17 00:00:00 2001 From: du <1725534722@qq.com> Date: Mon, 14 Apr 2025 14:26:05 +0800 Subject: [PATCH] bugfix --- pom.xml | 5 +- ruoyi-admin/pom.xml | 7 ++ .../gysl/controller/EnterpriseController.java | 13 ++- .../GyslProjectHandbookController.java | 110 ++++++++++++++++++ .../gysl/controller/XmpjqdController.java | 9 +- .../ruoyi/gysl/entity/BasicInformation.java | 3 - .../gysl/entity/GyslProjectHandbook.java | 58 +++++++++ .../ruoyi/gysl/entity/QyrzInformation.java | 2 + .../java/com/ruoyi/gysl/entity/Xmpjqd.java | 8 +- .../gysl/entity/request/XmpjqdPageReq.java | 14 +-- .../gysl/mapper/ProjectHandBookMapper.java | 15 +++ .../service/GyslProjectHandbookService.java | 15 +++ .../impl/GyslProjectHandbookServiceImpl.java | 19 +++ .../gysl/service/impl/XmpjqdServiceImpl.java | 1 + .../mapper/BasicInformationMapper.xml | 1 + .../mapper/GyslProjectHandbookMapper.xml | 6 + .../mapper/QyrzInformationMapper.xml | 20 +++- .../main/resources/mapper/XmpjqdMapper.xml | 92 +++++++-------- 18 files changed, 321 insertions(+), 77 deletions(-) create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/GyslProjectHandbookController.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/GyslProjectHandbook.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/ProjectHandBookMapper.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/gysl/service/GyslProjectHandbookService.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/GyslProjectHandbookServiceImpl.java create mode 100644 ruoyi-admin/src/main/resources/mapper/GyslProjectHandbookMapper.xml diff --git a/pom.xml b/pom.xml index d16a494..cf2d6ec 100644 --- a/pom.xml +++ b/pom.xml @@ -233,8 +233,11 @@ - + + central + https://repo.maven.apache.org/maven2 + public aliyun nexus diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml index 5afd3f6..0dfdfd6 100644 --- a/ruoyi-admin/pom.xml +++ b/ruoyi-admin/pom.xml @@ -16,6 +16,13 @@ + + + com.itextpdf + itext7-core + 8.0.4 + pom + org.apache.poi poi-ooxml diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/EnterpriseController.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/EnterpriseController.java index 3e02cd3..1f7cd2f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/EnterpriseController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/EnterpriseController.java @@ -17,7 +17,9 @@ import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.io.Serializable; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 入驻企业基本信息(Enterprise)表控制层 @@ -55,7 +57,7 @@ public class EnterpriseController extends BaseController { * @param id 主键 * @return 单条数据 */ - @GetMapping("{id}") + @GetMapping("/{id}") @ApiOperation(value = "通过主键查询单条数据", response = Enterprise.class) public AjaxResult selectOne(@PathVariable Serializable id) { return success(enterpriseService.getById(id)); @@ -98,7 +100,14 @@ public class EnterpriseController extends BaseController { if (proList == null || proList.isEmpty()) { throw new ServiceException("入驻企业信息数据不能为空"); } else { - proList.forEach(x->{ + List pl = new ArrayList<>(proList.stream() + .collect(Collectors.toMap( + Enterprise::getCode, // 以 email 作为键 + p -> p, // 值保留对象本身 + (existing, replacement) -> existing // 保留第一个出现的元素 + )) + .values()); + pl.forEach(x->{ x.setXmId(xmId); }); enterpriseService.saveBatch(proList); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/GyslProjectHandbookController.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/GyslProjectHandbookController.java new file mode 100644 index 0000000..54d9982 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/GyslProjectHandbookController.java @@ -0,0 +1,110 @@ +package com.ruoyi.gysl.controller; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.gysl.entity.GyslProjectHandbook; +import com.ruoyi.gysl.service.GyslProjectHandbookService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import javax.validation.Valid; +import java.io.Serializable; +import java.util.List; + +import static com.ruoyi.common.core.domain.AjaxResult.success; + +/** + * 项目手册(GyslProjectHandbook)表控制层 + * + * @author makejava + * @since 2025-04-14 13:56:59 + */ +@Api(tags = "项目手册") +@RestController +@RequestMapping("/gysl/handbook") +public class GyslProjectHandbookController { + /** + * 服务对象 + */ + @Resource + private GyslProjectHandbookService gyslProjectHandbookService; + + /** + * 分页查询所有数据 + * + * @param page 分页对象 + * @param gyslProjectHandbook 查询实体 + * @return 所有数据 + */ + @GetMapping("/page") + @ApiOperation(value = "分页查询所有数据", response = GyslProjectHandbook.class) + public AjaxResult selectAll(Page page, GyslProjectHandbook gyslProjectHandbook) { + return success(gyslProjectHandbookService.page(page, new QueryWrapper<>(gyslProjectHandbook))); + } + + /** + * 通过主键查询单条数据 + * + * @param id 主键 + * @return 单条数据 + */ + @GetMapping("/{id}") + @ApiOperation(value = "通过主键查询单条数据", response = GyslProjectHandbook.class) + public AjaxResult selectOne(@PathVariable Serializable id) { + return success(gyslProjectHandbookService.getById(id)); + } + + /** + * 新增数据 + * + * @param gyslProjectHandbook 实体对象 + * @return 新增结果 + */ + @PostMapping("/add") + @ApiOperation(value = "新增数据") + public AjaxResult insert(@RequestBody @Valid GyslProjectHandbook gyslProjectHandbook) { + return success(gyslProjectHandbookService.save(gyslProjectHandbook)); + } + + /** + * 修改数据 + * + * @param gyslProjectHandbook 实体对象 + * @return 修改结果 + */ + @PostMapping("/edit") + @ApiOperation("修改数据") + public AjaxResult update(@RequestBody @Valid GyslProjectHandbook gyslProjectHandbook) { + return success(gyslProjectHandbookService.updateById(gyslProjectHandbook)); + } + + /** + * 删除数据 + * + * @param idList 主键结合 + * @return 删除结果 + */ + @ApiOperation("删除数据") + @DeleteMapping("/delete") + public AjaxResult delete(@RequestParam("idList") List idList) { + return success(gyslProjectHandbookService.removeByIds(idList)); + } + + + /** + * 导出项目手册 + */ + @ApiOperation(value = "导出项目手册") + @PostMapping(value = "/export") + public void export(HttpServletResponse response, @RequestParam Integer id) + throws Exception { + + + } +} + diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/XmpjqdController.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/XmpjqdController.java index 127c046..b7809fb 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/XmpjqdController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/XmpjqdController.java @@ -27,7 +27,7 @@ import java.util.List; @Api(tags ="项目评价清单(包括详情页)" ) @RestController @RequestMapping("/gysl/xmpjqd") -public class XmpjqdController extends BaseController { +public class XmpjqdController { /** * 服务对象 */ @@ -45,10 +45,11 @@ public class XmpjqdController extends BaseController { Page page = new Page<>(); page.setSize(req.getSize()); page.setCurrent(req.getCurrent()); - return success(xmpjqdService.page(page, req)); + return AjaxResult.success(xmpjqdService.page(page, req)); } /** + * 。 * 通过主键查询单条项目评价清单 * * @param id 主键 @@ -57,7 +58,7 @@ public class XmpjqdController extends BaseController { @ApiOperation(value = "通过主键查询单条项目评价清单",response = XmpjqdOneResponse.class) @GetMapping("/{id}") public AjaxResult selectOne(@PathVariable Long id) { - return success(xmpjqdService.selectOnePj(id)); + return AjaxResult.success(xmpjqdService.selectOnePj(id)); } /** @@ -69,7 +70,7 @@ public class XmpjqdController extends BaseController { @ApiOperation(value = "通过主键查询单条项目画像",response = XmhxResponse.class) @GetMapping("/oneXmhx/{id}") public AjaxResult oneXmhx(@PathVariable Long id) { - return success(xmpjqdService.oneXmhx(id)); + return AjaxResult.success(xmpjqdService.oneXmhx(id)); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/BasicInformation.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/BasicInformation.java index 4f142cc..5494950 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/BasicInformation.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/BasicInformation.java @@ -148,11 +148,8 @@ public class BasicInformation extends BaseModel { private String fj; @ApiModelProperty("经度") - @Excel(name = "经度", type = Excel.Type.EXPORT) private String longitude; - - @Excel(name = "纬度", type = Excel.Type.EXPORT) @ApiModelProperty("纬度") private String latitude; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/GyslProjectHandbook.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/GyslProjectHandbook.java new file mode 100644 index 0000000..67f3898 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/GyslProjectHandbook.java @@ -0,0 +1,58 @@ +package com.ruoyi.gysl.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.ruoyi.gysl.entity.baseModel.BaseModel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import javax.validation.constraints.NotBlank; + +/** + * 项目手册(GyslProjectHandbook)表实体类 + * + * @author makejava + * @since 2025-04-14 13:56:59 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("gysl_project_handbook") +@ApiModel(value="项目手册") +public class GyslProjectHandbook extends BaseModel { + + @TableId(type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value ="手册名称" ) + @NotBlank(message = "手册名称不能为空!") + private String name; + + @ApiModelProperty(value ="副标题" ) + @NotBlank(message = "副标题不能为空!") + private String subtitle; + + + @ApiModelProperty(value ="封面图片" ) + @NotBlank(message = "封面图片不能为空!") + private String coverImg; + + + @ApiModelProperty(value ="项目id" ) + @NotBlank(message = "请选择项目id!") + private String xmId; + + + @ApiModelProperty(value ="封尾图片" ) + @NotBlank(message = "封尾图片不能为空!") + private String tailingImg; + + + @ApiModelProperty(value ="封尾标题" ) + @NotBlank(message = "封尾图片不能为空!") + private String tail; +} + diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/QyrzInformation.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/QyrzInformation.java index d1fea36..99ed6d0 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/QyrzInformation.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/QyrzInformation.java @@ -2,6 +2,7 @@ package com.ruoyi.gysl.entity; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.ruoyi.gysl.entity.baseModel.BaseModel; @@ -29,6 +30,7 @@ public class QyrzInformation extends BaseModel implements Serializable { private Long xmId; @ApiModelProperty("入住企业数") + @TableField(exist = false) private Integer rzqys; @ApiModelProperty("入驻企业行业类型") diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmpjqd.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmpjqd.java index d34a6c2..5bef975 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmpjqd.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmpjqd.java @@ -33,14 +33,10 @@ public class Xmpjqd implements Serializable { private String name; @ApiModelProperty(value = "项目建设开始时间 yyyy-MM") - @DateTimeFormat(pattern = "yyyy-MM") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM", timezone = "GMT+8") - private LocalDate begainTime; + private String begainTime; @ApiModelProperty(value = "项目建设结束时间 yyyy-MM") - @DateTimeFormat(pattern = "yyyy-MM") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM", timezone = "GMT+8") - private LocalDate endTime; + private String endTime; @ApiModelProperty(value = "现状分类") private Integer xzfl; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/request/XmpjqdPageReq.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/request/XmpjqdPageReq.java index cee1c5f..1b653c3 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/request/XmpjqdPageReq.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/request/XmpjqdPageReq.java @@ -28,15 +28,11 @@ public class XmpjqdPageReq { @ApiModelProperty(value = "项目名称") private String name; - @ApiModelProperty(value = "项目建设开始时间 yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8") - private LocalDate begainTime; - - @ApiModelProperty(value = "项目建设结束时间 yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8") - private LocalDate endTime; + @ApiModelProperty(value = "项目建设开始时间 yyyy-MM") + private String begainTime; + + @ApiModelProperty(value = "项目建设结束时间 yyyy-MM") + private String endTime; private Integer current = 1; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/ProjectHandBookMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/ProjectHandBookMapper.java new file mode 100644 index 0000000..2377ee6 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/ProjectHandBookMapper.java @@ -0,0 +1,15 @@ +package com.ruoyi.gysl.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.gysl.entity.GyslProjectHandbook; + +/** + * 项目手册(gysl_project_handbook)表数据库访问层 + * + * @author makejava + * @since 2025-02-24 09:25:51 + */ +public interface ProjectHandBookMapper extends BaseMapper { + +} + diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/GyslProjectHandbookService.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/GyslProjectHandbookService.java new file mode 100644 index 0000000..549433a --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/GyslProjectHandbookService.java @@ -0,0 +1,15 @@ +package com.ruoyi.gysl.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.gysl.entity.GyslProjectHandbook; + +/** + * 项目手册(GyslProjectHandbook)表服务接口 + * + * @author makejava + * @since 2025-04-14 13:56:59 + */ +public interface GyslProjectHandbookService extends IService { + +} + diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/GyslProjectHandbookServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/GyslProjectHandbookServiceImpl.java new file mode 100644 index 0000000..5d61590 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/GyslProjectHandbookServiceImpl.java @@ -0,0 +1,19 @@ +package com.ruoyi.gysl.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.gysl.entity.GyslProjectHandbook; +import com.ruoyi.gysl.mapper.ProjectHandBookMapper; +import com.ruoyi.gysl.service.GyslProjectHandbookService; +import org.springframework.stereotype.Service; + +/** + * 项目手册(GyslProjectHandbook)表服务实现类 + * + * @author makejava + * @since 2025-04-14 13:56:59 + */ +@Service("gyslProjectHandbookService") +public class GyslProjectHandbookServiceImpl extends ServiceImpl implements GyslProjectHandbookService { + +} + diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/XmpjqdServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/XmpjqdServiceImpl.java index 45ae25f..a90af10 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/XmpjqdServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/XmpjqdServiceImpl.java @@ -52,6 +52,7 @@ public class XmpjqdServiceImpl extends ServiceImpl impleme Page page1 = xmpjqdMapper.page(page, req); for (int i = 0; i < page1.getRecords().size(); i++) { page1.getRecords().get(i).setPjdj(i + 1); + page1.getRecords().get(i).setCount((int) page1.getTotal()); } return page1; } diff --git a/ruoyi-admin/src/main/resources/mapper/BasicInformationMapper.xml b/ruoyi-admin/src/main/resources/mapper/BasicInformationMapper.xml index 087540d..667d9d6 100644 --- a/ruoyi-admin/src/main/resources/mapper/BasicInformationMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/BasicInformationMapper.xml @@ -337,6 +337,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND a.is_fmqd = #{req.isFmqd} + order by create_time desc - select * from gysl_qyrz_information - - - AND xm_id = #{req.xmId} - - + select *, + (select count(*) from gysl_enterprise + + + AND xm_id = #{req.xmId} + + + ) as rzqys + from gysl_qyrz_information + + + AND xm_id = #{req.xmId} + + diff --git a/ruoyi-admin/src/main/resources/mapper/XmpjqdMapper.xml b/ruoyi-admin/src/main/resources/mapper/XmpjqdMapper.xml index a5a549c..059d735 100644 --- a/ruoyi-admin/src/main/resources/mapper/XmpjqdMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/XmpjqdMapper.xml @@ -1,35 +1,75 @@ + + + + + + - - - -