From f3b15901b4835eff84947d9fb4bbda3db466ed9a Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 30 Aug 2023 16:32:11 +0800
Subject: [PATCH] 新增文件存储位置填报基础接口
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbFileStorageLocationController.java | 64 ++++++++
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.java | 24 +++
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.xml | 10 +
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbFileStorageLocationService.java | 33 ++++
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbFileStorageLocationServiceImpl.java | 192 ++++++++++++++++++++++++
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbFileStorageLocation.java | 125 +++++++++++++++
6 files changed, 448 insertions(+), 0 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbFileStorageLocationController.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbFileStorageLocationController.java
new file mode 100644
index 0000000..a3b4cd4
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbFileStorageLocationController.java
@@ -0,0 +1,64 @@
+package cn.gistack.sm.sjztmd.controller;
+
+import cn.gistack.sm.sjztmd.entity.TbFileStorageLocation;
+import cn.gistack.sm.sjztmd.service.ITbFileStorageLocationService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.tool.api.R;
+import org.springframework.web.bind.annotation.*;
+
+
+/**
+ * @ClassName TbFileStorageLocationController
+ * @Description TODO
+ * @author zhongrj
+ * @Date 2023/8/30
+ * @Version 1.0
+ */
+@Slf4j
+@Api(tags = "中台水库信息填报")
+@RestController
+@RequestMapping("/sjztmd/tbFileStorageLocation")
+@AllArgsConstructor
+public class TbFileStorageLocationController {
+
+ private final ITbFileStorageLocationService tbFileStorageLocationService;
+
+
+ /**
+ * 查询水库填报详情信息
+ * @param resGuid
+ * @return
+ */
+ @ApiOperation(value = "中台水库-查询水库填报详情信息", notes = "中台水库-查询水库填报详情信息")
+ @GetMapping(value = "/getDetailByGuid")
+ public R getDetailByCode(String resGuid) {
+ TbFileStorageLocation attResBase = tbFileStorageLocationService.getDetailByGuid(resGuid);
+ return R.data(attResBase);
+ }
+
+ /**
+ * 编辑
+ * @param tbFileStorageLocation
+ * @return
+ */
+ @ApiOperation(value = "水库信息-编辑", notes = "水库信息-编辑")
+ @PostMapping(value = "/edit")
+ public R edit(@RequestBody TbFileStorageLocation tbFileStorageLocation) {
+ return R.status(tbFileStorageLocationService.updateByGuid(tbFileStorageLocation));
+ }
+
+ /**
+ * 审核
+ * @param tbFileStorageLocation
+ * @return
+ */
+ @ApiOperation(value = "水库信息-审核", notes = "水库信息-审核")
+ @PostMapping(value = "/audit")
+ public R audit(@RequestBody TbFileStorageLocation tbFileStorageLocation) {
+ return R.status(tbFileStorageLocationService.auditByGuid(tbFileStorageLocation));
+ }
+
+}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbFileStorageLocation.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbFileStorageLocation.java
new file mode 100644
index 0000000..c6e92e4
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbFileStorageLocation.java
@@ -0,0 +1,125 @@
+package cn.gistack.sm.sjztmd.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.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 文件存储位置-填报
+ *
+ * @author zhongrj
+ * @date 2023-08-30
+ */
+@Data
+@TableName("\"tb_file_storage_location\"")
+@ApiModel(value = "文件存储位置", description = "文件存储位置")
+public class TbFileStorageLocation implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 主键
+ */
+ @JsonSerialize(using = ToStringSerializer.class)
+ @ApiModelProperty(value = "主键")
+ @TableId(value = "\"guid\"",type = IdType.ASSIGN_ID)
+ private String guid;
+
+ /**
+ * 水库编码
+ */
+ @ApiModelProperty(value = "水库编码")
+ @TableField("\"res_guid\"")
+ private String resGuid;
+
+ /**
+ * 始建期资料路径
+ */
+ @ApiModelProperty(value = "始建期资料路径")
+ @TableField("\"construction_period_data_path\"")
+ private String constructionPeriodDataPath;
+
+ /**
+ * 第一次除险加固资料路径
+ */
+ @ApiModelProperty(value = "第一次除险加固资料路径")
+ @TableField("\"first_reinforce_data_path\"")
+ private String firstReinforceDataPath;
+
+ /**
+ * 第二次除险加固资料路径
+ */
+ @ApiModelProperty(value = "第二次除险加固资料路径")
+ @TableField("\"second_reinforce_data_path\"")
+ private String secondReinforceDataPath;
+
+ /**
+ * 第三次除险加固资料路径
+ */
+ @ApiModelProperty(value = "第三次除险加固资料路径")
+ @TableField("\"third_reinforce_data_path\"")
+ private String thirdReinforceDataPath;
+
+ /**
+ * 日常运行管理资料路径
+ */
+ @ApiModelProperty(value = "日常运行管理资料路径")
+ @TableField("\"daily_operation_management_data_path\"")
+ private String dailyOperationManagementDataPath;
+
+ /**
+ * 整编图纸
+ */
+ @ApiModelProperty(value = "整编图纸 ")
+ @TableField("\"integrated_drawing_path\"")
+ private String integratedDrawingPath;
+
+ /**
+ * 水库鸟瞰图
+ */
+ @ApiModelProperty(value = "水库鸟瞰图 ")
+ @TableField("\"water_aerial_view\"")
+ private String waterAerialView;
+
+ /**
+ * 填报状态(0:填写中,1:审核中,2:审核通过)
+ */
+ @ApiModelProperty(value = "填报状态(0:填写中,1:审核中,2:审核通过) ")
+ @TableField("\"check_state\"")
+ @JsonSerialize(using = ToStringSerializer.class)
+ private Integer checkState;
+
+ /**
+ * 审核记录
+ */
+ @ApiModelProperty(value = "审核记录 ")
+ @TableField("\"check_log\"")
+ private String checkLog;
+
+ /**
+ * 创建时间
+ */
+ @ApiModelProperty(value = "创建时间 ")
+ @TableField("\"create_time\"")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ /**
+ * 操作记录
+ */
+ @ApiModelProperty(value = "操作记录 ")
+ @TableField("\"log\"")
+ private String log;
+
+}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.java
new file mode 100644
index 0000000..0d77161
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.java
@@ -0,0 +1,24 @@
+package cn.gistack.sm.sjztmd.mapper;
+
+import cn.gistack.sm.sjztmd.entity.TbFileStorageLocation;
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * TbFileStorageLocationMapper 接口
+ *
+ * @author zhongrj
+ * @date 2023-08-16
+ */
+@DS("zt")
+public interface TbFileStorageLocationMapper extends BaseMapper<TbFileStorageLocation> {
+
+ /**
+ * 查询水库填报详情信息
+ * @param resGuid
+ * @return
+ */
+ TbFileStorageLocation getDetailByResGuid(@Param("resGuid") String resGuid);
+}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.xml
new file mode 100644
index 0000000..1463298
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.gistack.sm.sjztmd.mapper.TbFileStorageLocationMapper">
+
+ <!--查询水库填报详情信息-->
+ <select id="getDetailByResGuid" resultType="cn.gistack.sm.sjztmd.entity.TbFileStorageLocation">
+ SELECT * FROM "tb_file_storage_location" WHERE "res_guid" = #{resGuid}
+ </select>
+
+</mapper>
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbFileStorageLocationService.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbFileStorageLocationService.java
new file mode 100644
index 0000000..e7e3d11
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbFileStorageLocationService.java
@@ -0,0 +1,33 @@
+package cn.gistack.sm.sjztmd.service;
+
+import cn.gistack.sm.sjztmd.entity.TbFileStorageLocation;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @ClassName ITbFileStorageLocationService
+ * @author zhongrj
+ * @date 2023/8/30
+ */
+public interface ITbFileStorageLocationService extends IService<TbFileStorageLocation> {
+
+ /**
+ * 查询水库填报详情信息
+ * @param guid
+ * @return
+ */
+ TbFileStorageLocation getDetailByGuid(String guid);
+
+ /**
+ * 编辑
+ * @param tbAttResWaterDelivery
+ * @return
+ */
+ boolean updateByGuid(TbFileStorageLocation tbAttResWaterDelivery);
+
+ /**
+ * 审核
+ * @param tbAttResWaterDelivery
+ * @return
+ */
+ boolean auditByGuid(TbFileStorageLocation tbAttResWaterDelivery);
+}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbFileStorageLocationServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbFileStorageLocationServiceImpl.java
new file mode 100644
index 0000000..40a6825
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbFileStorageLocationServiceImpl.java
@@ -0,0 +1,192 @@
+package cn.gistack.sm.sjztmd.service.impl;
+
+import cn.gistack.sm.sjztmd.entity.TbFileStorageLocation;
+import cn.gistack.sm.sjztmd.mapper.TbFileStorageLocationMapper;
+import cn.gistack.sm.sjztmd.service.ITbFileStorageLocationService;
+import cn.gistack.system.user.feign.IUserClient;
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+/**
+ * @ClassName TbFileStorageLocationServiceImpl
+ * @author zhongrj
+ * @date 2023/8/30
+ * @Version 1.0
+ */
+@Service
+@DS("zt")
+public class TbFileStorageLocationServiceImpl extends ServiceImpl<TbFileStorageLocationMapper, TbFileStorageLocation> implements ITbFileStorageLocationService {
+
+ @Autowired
+ private IUserClient userClient;
+
+ /**
+ * 查询水库填报详情信息
+ * @param guid
+ * @return
+ */
+ @Override
+ public TbFileStorageLocation getDetailByGuid(String guid) {
+ return baseMapper.getDetailByResGuid(guid);
+ }
+
+ /**
+ * 编辑
+ * @param tbFileStorageLocation
+ * @return
+ */
+ @Override
+ public boolean updateByGuid(TbFileStorageLocation tbFileStorageLocation) {
+ // 查询是否存在
+ TbFileStorageLocation detail = baseMapper.getDetailByResGuid(tbFileStorageLocation.getResGuid());
+ // 更新日志
+ setUpdateLog(detail,tbFileStorageLocation);
+ // 修改
+ int i = addOrUpdateByGuid(detail,tbFileStorageLocation);
+ if (i>0){
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * 审核
+ * @param tbFileStorageLocation
+ * @return
+ */
+ @Override
+ public boolean auditByGuid(TbFileStorageLocation tbFileStorageLocation) {
+ // 查询是否存在
+ TbFileStorageLocation detail = baseMapper.getDetailByResGuid(tbFileStorageLocation.getResGuid());
+ // 更新操作日志
+ setUpdateLog(detail,tbFileStorageLocation);
+ // 更新审核日志
+ setUpdateCheckLog(detail,tbFileStorageLocation);
+ if (null!=detail){
+ tbFileStorageLocation.setGuid(detail.getGuid());
+ }
+ // 驳回情况下将状态修改回0即已填写未提交状态
+ if (tbFileStorageLocation.getCheckState()==3){
+ tbFileStorageLocation.setCheckState(0);
+ }
+ // 更新数据
+ int i = baseMapper.updateById(tbFileStorageLocation);
+ if (i>0){
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * 更新
+ * @param tbFileStorageLocation
+ * @return
+ */
+ private int addOrUpdateByGuid(TbFileStorageLocation oldAbAttResBase,TbFileStorageLocation tbFileStorageLocation){
+ int i = 0;
+ if (null!=oldAbAttResBase){
+ tbFileStorageLocation.setGuid(oldAbAttResBase.getGuid());
+ // 更新
+ i = baseMapper.updateById(tbFileStorageLocation);
+ }else {
+ tbFileStorageLocation.setCreateTime(new Date());
+ i = baseMapper.insert(tbFileStorageLocation);
+ }
+ // 返回
+ return i;
+ }
+
+ /**
+ * @param oldAbAttResBase
+ * @param newTbFileStorageLocation
+ * 更新审核记录
+ */
+ private void setUpdateCheckLog(TbFileStorageLocation oldAbAttResBase,TbFileStorageLocation newTbFileStorageLocation) {
+ String fillName = "";
+ if (newTbFileStorageLocation.getCheckState()==2){
+ fillName = "审核";
+ }
+ if (newTbFileStorageLocation.getCheckState()==3){
+ fillName = "退回" + (null==newTbFileStorageLocation.getCheckLog()?"":":" + newTbFileStorageLocation.getCheckLog());
+ }
+
+ // 拼接
+ String time = new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date());
+ String userName = AuthUtil.getUser().getUserName();
+ String phone = userClient.userInfoById(AuthUtil.getUserId()).getData().getPhone();
+ StringBuilder builder = new StringBuilder();
+ builder.append(time)
+ .append(",")
+ .append(fillName)
+ .append(",")
+ .append(userName)
+ .append(",")
+ .append(phone)
+ .append(";");
+ // 判断是否存在
+ if (null==oldAbAttResBase){
+ // 填报
+ newTbFileStorageLocation.setCheckLog(builder.toString());
+ }else {
+ StringBuilder stringBuilder = new StringBuilder(null==oldAbAttResBase.getCheckLog()?"":oldAbAttResBase.getCheckLog());
+ stringBuilder.append(builder);
+ // 填报
+ newTbFileStorageLocation.setCheckLog(stringBuilder.toString());
+ }
+ }
+
+ /**
+ * @param oldAbAttResBase
+ * @param newTbFileStorageLocation
+ * 更新操作记录
+ */
+ private void setUpdateLog(TbFileStorageLocation oldAbAttResBase,TbFileStorageLocation newTbFileStorageLocation) {
+ String fillName = "";
+ if (newTbFileStorageLocation.getCheckState()==0){
+ fillName = "编辑";
+ }
+ if (newTbFileStorageLocation.getCheckState()==1){
+ fillName = "提交";
+ }
+ if (newTbFileStorageLocation.getCheckState()==2){
+ fillName = "审核";
+ }
+ if (newTbFileStorageLocation.getCheckState()==3){
+ fillName = "退回" + (null==newTbFileStorageLocation.getCheckLog()?"":":" + newTbFileStorageLocation.getCheckLog());
+ }
+ if (newTbFileStorageLocation.getCheckState()==4){
+ fillName = "编辑";
+ newTbFileStorageLocation.setCheckState(oldAbAttResBase.getCheckState());
+ }
+
+ // 拼接
+ String time = new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date());
+ String userName = AuthUtil.getUser().getUserName();
+ String phone = userClient.userInfoById(AuthUtil.getUserId()).getData().getPhone();
+ StringBuilder builder = new StringBuilder();
+ builder.append(time)
+ .append(",")
+ .append(fillName)
+ .append(",")
+ .append(userName)
+ .append(",")
+ .append(phone)
+ .append(";");
+ // 判断是否存在
+ if (null==oldAbAttResBase){
+ // 填报
+ newTbFileStorageLocation.setLog(builder.toString());
+ }else {
+ StringBuilder stringBuilder = new StringBuilder(null==oldAbAttResBase.getLog()?"":oldAbAttResBase.getLog());
+ stringBuilder.append(builder);
+ // 填报
+ newTbFileStorageLocation.setLog(stringBuilder.toString());
+ }
+ }
+}
--
Gitblit v1.9.3