diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index aad287b..42513e2 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -103,11 +103,10 @@
knife4j-openapi2-spring-boot-starter
4.4.0
-
- com.itextpdf
- html2pdf
- 1.17.2
-
+
+
+
+
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/BasicInformationController.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/BasicInformationController.java
index 1255ea7..0e6b02f 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/BasicInformationController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/BasicInformationController.java
@@ -20,6 +20,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.poi.xssf.usermodel.*;
import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -41,14 +42,11 @@ import java.util.*;
@RestController
@RequestMapping("/gysl/basicInformation")
public class BasicInformationController extends BaseController {
- /**
- * 服务对象
- */
- @Resource
/**
* 基本信息
*/
+ @Resource
private BasicInformationService basicInformationService;
/**
@@ -82,6 +80,12 @@ public class BasicInformationController extends BaseController {
@Resource
private QyrzInformationService qyrzInformationService;
+ /**
+ * 其他信息
+ */
+ @Resource
+ private ProjectOtherInfoService projectOtherInfoService;
+
/**
* 分页查询所有数据
*
@@ -94,7 +98,7 @@ public class BasicInformationController extends BaseController {
public AjaxResult selectAll(Page page, BasicInformationPageReq basicInformationPageReq) {
// 获取当前登录用户是否是企业端
try {
- if (SecurityUtils.hasRole("company")) {
+ if (SecurityUtils.hasRole("company") && !SecurityUtils.isAdmin(SecurityUtils.getUserId())) {
basicInformationPageReq.setTyshxydm(SecurityUtils.getUsername());
}
} catch (Exception ignored) {
@@ -111,7 +115,7 @@ public class BasicInformationController extends BaseController {
public AjaxResult fill(@RequestBody AuditRequest req) {
BasicInformation byId = basicInformationService.getById(req.getBasicInformation().getId());
if (byId.getStatus() != 1) {
- throw new ServiceException("暂不能提交!");
+ throw new ServiceException("暂不能提交!");
}
return success(basicInformationService.audit(req, 2));
}
@@ -125,7 +129,7 @@ public class BasicInformationController extends BaseController {
public AjaxResult audit(@RequestBody AuditRequest req) {
BasicInformation byId = basicInformationService.getById(req.getBasicInformation().getId());
if (byId.getStatus() == 1) {
- throw new ServiceException("请等待企业填报!");
+ throw new ServiceException("请等待企业填报!");
}
return success(basicInformationService.audit(req, 3));
}
@@ -162,8 +166,9 @@ public class BasicInformationController extends BaseController {
* 项目基本信息批量导入
*/
@ApiOperation(value = "项目基本信息批量导入")
-// @PreAuthorize("@ss.hasAnyRoles('admin,common')")
+ @PreAuthorize("@ss.hasAnyRoles('admin,common')")
@PostMapping(value = "/import", consumes = "multipart/form-data")
+ @Transactional(rollbackFor = Exception.class)
public AjaxResult importTemplateProject(@RequestPart("file") MultipartFile file) throws Exception {
ExcelUtil util = new ExcelUtil<>(BasicInformation.class);
List proList = util.importExcel(file.getInputStream());
@@ -171,10 +176,10 @@ public class BasicInformationController extends BaseController {
if (proList == null || proList.isEmpty()) {
throw new ServiceException("项目导入数据不能为空");
} else {
- basicInformationService.saveBatch(proList);
List list = mxService.list();
proList.forEach(x -> {
x.setStatus(1);
+ basicInformationService.save(x);
//添加项目规划信息
PlanInformation planInformation = new PlanInformation();
planInformation.setXmId(x.getId());
@@ -202,6 +207,7 @@ public class BasicInformationController extends BaseController {
projectOtherInfo.setZdname(y);
saveOther.add(projectOtherInfo);
});
+ projectOtherInfoService.saveBatch(saveOther);
//新增消息
Notice notice = new Notice();
notice.setType(2);
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/DpclglController.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/DpclglController.java
index b7808ee..a1fec8a 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/DpclglController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/controller/DpclglController.java
@@ -109,10 +109,7 @@ public class DpclglController extends BaseController {
@ApiOperation(value = "副编辑器内容生成pdf文件url")
@GetMapping("/unloadPdf")
public AjaxResult unloadPdf(@RequestParam(defaultValue = "文章标题") String htmlArticleTitle, @RequestParam(defaultValue = "文章内容") String htmlContent) throws Exception {
-
MultipartFile multipartFile = HtmlToPdfConverter.convertHtmlToPdf(htmlArticleTitle, htmlContent);
-
-
return AjaxResult.success(commonController.uploadFile(multipartFile));
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Mx.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Mx.java
index 1ba1a64..41dcdc4 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Mx.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Mx.java
@@ -37,27 +37,23 @@ public class Mx extends BaseModel implements Serializable {
* 1:关键要素;2:重要要素
*/
@ApiModelProperty(value = "1:关键要素;2:重要要素")
- @TableField("type")
private String type;
/**
* 要素名称
*/
@ApiModelProperty(value = "要素名称")
- @TableField("name")
private String name;
/**
* 具体指标
*/
@ApiModelProperty(value = "具体指标")
- @TableField("jtzb")
private String jtzb;
/**
* 详细要求
*/
@ApiModelProperty(value = "详细要求")
- @TableField("xxyq")
private String xxyq;
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Notice.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Notice.java
index a9a090d..04fddb3 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Notice.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Notice.java
@@ -20,8 +20,8 @@ import java.time.LocalDateTime;
*/
@Data
@EqualsAndHashCode(callSuper = false)
-@TableName("mx")
-@ApiModel(value = "Mx", description = "项目通知")
+@TableName("notice")
+@ApiModel(value = "notice", description = "项目通知")
public class Notice implements Serializable {
/**
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Pjpz.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Pjpz.java
index 433d60f..c48f9a1 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Pjpz.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Pjpz.java
@@ -37,14 +37,12 @@ public class Pjpz extends BaseModel implements Serializable {
* 评价要素
*/
@ApiModelProperty(value = "评价要素")
- @TableField("pjys")
private String pjys;
/**
* 评分规则
*/
@ApiModelProperty(value = "评分规则")
- @TableField("pfgz")
private String pfgz;
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/PlanInformation.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/PlanInformation.java
index 6fc015d..a595be9 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/PlanInformation.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/PlanInformation.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.gysl.entity.baseModel.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -25,47 +26,41 @@ import java.time.LocalDateTime;
@EqualsAndHashCode(callSuper = false)
@TableName("plan_information")
@ApiModel(value = "PlanInformation", description = "规划信息")
-public class PlanInformation implements Serializable {
+public class PlanInformation extends BaseModel implements Serializable {
private static final long serialVersionUID = 949116362621294280L;
- @ApiModelProperty(value = "${column.comment}")
@TableField("id")
@TableId(type = IdType.AUTO)
- private Integer id;
+ private Long id;
/**
* 项目id
*/
@ApiModelProperty(value = "项目id")
- @TableField("xm_id")
private Long xmId;
/**
* 总用地面积
*/
@ApiModelProperty(value = "总用地面积 ")
- @TableField("zydmj")
private BigDecimal zydmj;
/**
* 容积率
*/
@ApiModelProperty(value = "容积率")
- @TableField("rjl")
private BigDecimal rjl;
/**
* 总建筑面积
*/
@ApiModelProperty(value = "总建筑面积 ")
- @TableField("zjzmj")
private BigDecimal zjzmj;
/**
* 标准层建筑面积
*/
@ApiModelProperty(value = "标准层建筑面积")
- @TableField("bzcjzmj")
private BigDecimal bzcjzmj;
/**
@@ -73,21 +68,18 @@ public class PlanInformation implements Serializable {
*
*/
@ApiModelProperty(value = "计容积率建筑面积")
- @TableField(" jrjljzmj")
private BigDecimal jrjljzmj;
/**
* 建筑密度
*/
@ApiModelProperty(value = "建筑密度")
- @TableField("jzmd")
private BigDecimal jzmd;
/**
* 绿地率
*/
@ApiModelProperty(value = "绿地率")
- @TableField("ldl")
private BigDecimal ldl;
/**
@@ -95,7 +87,6 @@ public class PlanInformation implements Serializable {
*
*/
@ApiModelProperty(value = "建筑栋数")
- @TableField(" jzds")
private Integer jzds;
/**
@@ -103,7 +94,6 @@ public class PlanInformation implements Serializable {
*
*/
@ApiModelProperty(value = "地上建筑面积")
- @TableField(" dsjzmj")
private BigDecimal dsjzmj;
/**
@@ -111,21 +101,18 @@ public class PlanInformation implements Serializable {
*
*/
@ApiModelProperty(value = "地下建筑面积")
- @TableField(" dxjzmj")
private BigDecimal dxjzmj;
/**
* 最高建筑层数
*/
@ApiModelProperty(value = "最高建筑层数")
- @TableField("zgjzcs")
private Integer zgjzcs;
/**
* 最高建筑高度
*/
@ApiModelProperty(value = "最高建筑高度")
- @TableField("zgjzgd")
private BigDecimal zgjzgd;
/**
@@ -133,73 +120,23 @@ public class PlanInformation implements Serializable {
*
*/
@ApiModelProperty(value = "机动车停车位")
- @TableField(" jdctcw")
private Integer jdctcw;
/**
* 非机动车停车位
*/
@ApiModelProperty(value = "非机动车停车位")
- @TableField("fjdctcw")
private Integer fjdctcw;
/**
* 规划文件
*/
@ApiModelProperty(value = "规划文件")
- @TableField("ghwj")
private String ghwj;
/**
* 防火等级
*/
@ApiModelProperty(value = "防火等级")
- @TableField("fhdj")
private String fhdj;
-
- /**
- * 创建者id
- */
- @ApiModelProperty(value = "创建者id")
- @TableField("create_id")
- private Integer createId;
-
- /**
- * 创建时间
- */
- @ApiModelProperty(value = "创建时间")
- @TableField("create_time")
- @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
- @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- private LocalDateTime createTime;
-
- /**
- * 创建者
- */
- @ApiModelProperty(value = "创建者")
- @TableField("create_by")
- private String createBy;
-
- /**
- * 更新者ID
- */
- @ApiModelProperty(value = "更新者ID")
- @TableField("update_id")
- private Long updateId;
-
- /**
- * 更新者
- */
- @ApiModelProperty(value = "更新者")
- @TableField("update_by")
- private String updateBy;
-
- /**
- * 更新时间
- */
- @ApiModelProperty(value = "更新时间")
- @TableField("update_time")
- @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
- @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- private LocalDateTime updateTime;
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/WysmxInformation.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/WysmxInformation.java
index c6e0a7b..2e78238 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/WysmxInformation.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/WysmxInformation.java
@@ -34,7 +34,6 @@ public class WysmxInformation extends BaseModel implements Serializable {
* 项目id
*/
@ApiModelProperty(value = "项目id")
- @TableField("xm_id")
private Long xmId;
@ApiModelProperty("要素名称")
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmxl.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmxl.java
index abbb95d..228a3a8 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmxl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/entity/Xmxl.java
@@ -36,9 +36,7 @@ public class Xmxl extends BaseModel implements Serializable {
private String xmmc;
@ApiModelProperty("年度")
- @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy", timezone = "GMT+8")
- @DateTimeFormat(pattern = "yyyy")
- private LocalDate year;
+ private String year;
@ApiModelProperty("网页地址")
private String webUrl;
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/NoticeMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/NoticeMapper.java
index 6f79f67..1300b66 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/NoticeMapper.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/mapper/NoticeMapper.java
@@ -13,23 +13,5 @@ import com.ruoyi.gysl.entity.Notice;
* @since 2025-03-23 16:34:27
*/
public interface NoticeMapper extends BaseMapper {
-
-/**
-* 批量新增数据(MyBatis原生foreach方法)
-*
-* @param entities List 实例对象列表
-* @return 影响行数
-*/
-int insertBatch(@Param("entities") List entities);
-
-/**
-* 批量新增或按主键更新数据(MyBatis原生foreach方法)
-*
-* @param entities List 实例对象列表
-* @return 影响行数
-* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
-*/
-int insertOrUpdateBatch(@Param("entities") List entities);
-
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/BasicInformationServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/BasicInformationServiceImpl.java
index 4e9d039..477def4 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/BasicInformationServiceImpl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/service/impl/BasicInformationServiceImpl.java
@@ -268,7 +268,7 @@ public class BasicInformationServiceImpl extends ServiceImpl idList) {
- idList.forEach(x->{
+ idList.forEach(x -> {
//删除项目基本信息
lambdaUpdate()
- .eq(BasicInformation::getId,x)
+ .eq(BasicInformation::getId, x)
.remove();
//删除项目规划信息
planInformationService.lambdaUpdate()
@@ -359,11 +359,11 @@ public class BasicInformationServiceImpl extends ServiceImpl
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- insert into gysl.notice(typecontenttyshxydmcreate_idcreate_timecreate_byupdate_idupdate_byupdate_time)
- values
-
- (#{entity.type}#{entity.content}#{entity.tyshxydm}#{entity.createId}#{entity.createTime}#{entity.createBy}#{entity.updateId}#{entity.updateBy}#{entity.updateTime})
-
-
-
-
- insert into gysl.notice(typecontenttyshxydmcreate_idcreate_timecreate_byupdate_idupdate_byupdate_time)
- values
-
- (#{entity.type}#{entity.content}#{entity.tyshxydm}#{entity.createId}#{entity.createTime}#{entity.createBy}#{entity.updateId}#{entity.updateBy}#{entity.updateTime})
-
- on duplicate key update
-type = values(type) content = values(content) tyshxydm = values(tyshxydm) create_id = values(create_id) create_time = values(create_time) create_by = values(create_by) update_id = values(update_id) update_by = values(update_by) update_time = values(update_time)
-