skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbFileStorageLocationController.java
New file @@ -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)); } } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbFileStorageLocation.java
New file @@ -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; } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.java
New file @@ -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); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbFileStorageLocationMapper.xml
New file @@ -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> skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbFileStorageLocationService.java
New file @@ -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); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbFileStorageLocationServiceImpl.java
New file @@ -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()); } } }