Commit 62b1de02 authored by 刘林's avatar 刘林

Merge remote-tracking branch 'origin/develop_tzs_register' into develop_tzs_register

parents fb122634 c44db8b5
package com.yeejoin.amos.boot.module.common.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 反馈回复表
*
* @author system_generator
* @date 2025-05-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "FeedbackRepliesDto", description = "反馈回复表")
public class FeedbackRepliesDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "创建人id")
private String createUserId;
@ApiModelProperty(value = "创建人")
private String createUserName;
@ApiModelProperty(value = "创建时间(回复时间)")
private Date createDate;
@ApiModelProperty(value = "回复描述")
private String replyDescription;
@ApiModelProperty(value = "回复用户id")
private Integer replyUserId;
@ApiModelProperty(value = "回复用户姓名")
private String replyUserName;
@ApiModelProperty(value = "反馈建议表seq")
private String suggestionsSeq;
@ApiModelProperty(value = "已读状态(1:已读,0:未读)")
private String readStatus;
@ApiModelProperty(value = "回复单位code")
private String replyCompanyCode;
@ApiModelProperty(value = "回复单位名称")
private String replyCompanyName;
}
package com.yeejoin.amos.boot.module.common.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 反馈建议表
*
* @author system_generator
* @date 2025-05-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "FeedbackSuggestionsDto", description = "反馈建议表")
public class FeedbackSuggestionsDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "创建人id")
private String createUserId;
@ApiModelProperty(value = "创建人")
private String createUserName;
@ApiModelProperty(value = "创建时间(填报时间)")
private Date createDate;
@ApiModelProperty(value = "问题类型(字典值)")
private String problemType;
@ApiModelProperty(value = "问题描述")
private String problemDescription;
@ApiModelProperty(value = "管辖机构org_code")
private String superviseOrgCode;
@ApiModelProperty(value = "ed")
private String superviseOrgName;
@ApiModelProperty(value = "上报企业统一信用代码")
private String companyCode;
@ApiModelProperty(value = "上报企业名称")
private String companyName;
@ApiModelProperty(value = "上报人员id")
private Integer reporterUserId;
@ApiModelProperty(value = "上报人员姓名")
private String reporterUserName;
@ApiModelProperty(value = "联系人")
private String contactPerson;
@ApiModelProperty(value = "联系电话")
private String contactPhone;
@ApiModelProperty(value = "回复状态(1:回复,0:未回复)")
private String status;
}
package com.yeejoin.amos.boot.module.common.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 反馈回复表
*
* @author system_generator
* @date 2025-05-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tzs_feedback_replies")
public class FeedbackReplies extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 创建人id
*/
@TableField("create_user_id")
private String createUserId;
/**
* 创建人
*/
@TableField("create_user_name")
private String createUserName;
/**
* 创建时间(回复时间)
*/
@TableField("create_date")
private Date createDate;
/**
* 回复描述
*/
@TableField("reply_description")
private String replyDescription;
/**
* 回复用户id
*/
@TableField("reply_user_id")
private Integer replyUserId;
/**
* 回复用户姓名
*/
@TableField("reply_user_name")
private String replyUserName;
/**
* 反馈建议表seq
*/
@TableField("suggestions_seq")
private String suggestionsSeq;
/**
* 已读状态(1:已读,0:未读)
*/
@TableField("read_status")
private String readStatus;
/**
* 回复单位code
*/
@TableField("reply_company_code")
private String replyCompanyCode;
/**
* 回复单位名称
*/
@TableField("reply_company_name")
private String replyCompanyName;
}
package com.yeejoin.amos.boot.module.common.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 反馈建议表
*
* @author system_generator
* @date 2025-05-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tzs_feedback_suggestions")
public class FeedbackSuggestions extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 创建人id
*/
@TableField("create_user_id")
private String createUserId;
/**
* 创建人
*/
@TableField("create_user_name")
private String createUserName;
/**
* 创建时间(填报时间)
*/
@TableField("create_date")
private Date createDate;
/**
* 问题类型(字典值)
*/
@TableField("problem_type")
private String problemType;
/**
* 问题描述
*/
@TableField("problem_description")
private String problemDescription;
/**
* 管辖机构org_code
*/
@TableField("supervise_org_code")
private String superviseOrgCode;
/**
* ed
*/
@TableField("supervise_org_name")
private String superviseOrgName;
/**
* 上报企业统一信用代码
*/
@TableField("company_code")
private String companyCode;
/**
* 上报企业名称
*/
@TableField("company_name")
private String companyName;
/**
* 上报人员id
*/
@TableField("reporter_user_id")
private Integer reporterUserId;
/**
* 上报人员姓名
*/
@TableField("reporter_user_name")
private String reporterUserName;
/**
* 联系人
*/
@TableField("contact_person")
private String contactPerson;
/**
* 联系电话
*/
@TableField("contact_phone")
private String contactPhone;
/**
* 回复状态(1:回复,0:未回复)
*/
@TableField("status")
private String status;
}
package com.yeejoin.amos.boot.module.common.api.enums;
/**
* 反馈建议-问题类型枚举值
*/
public enum ProblemTypeEnum {
MAJOR_ACCIDENT_HAZARDS(101, "重大事故隐患问题"),
TWO_REGULATIONS_ISSUES(102, "两个规定问题"),
DUAL_PREVENTION_ISSUES(103, "双重预防问题"),
TWO_LISTS_ISSUES(104, "两个清单问题"),
TWO_GUIDELINES_ISSUES(105, "两个指南问题"),
BUSINESS_PROCESSING_ISSUES(106, "业务办理问题"),
ADMINISTRATIVE_GUIDANCE(107, "行政指导"),
TECHNICAL_SERVICES(108, "技术服务"),
OTHER_ISSUES(109, "其他问题"),
SUGGESTIONS(110, "建议");
private final int id;
private final String description;
ProblemTypeEnum(int id, String description) {
this.id = id;
this.description = description;
}
public int getId() {
return id;
}
public String getDescription() {
return description;
}
@Override
public String toString() {
return id + ": " + name() + " -> " + description;
}
/**
* 根据ID获取对应的枚举值
*/
public static ProblemTypeEnum getById(int id) {
for (ProblemTypeEnum category : ProblemTypeEnum.values()) {
if (category.getId() == id) {
return category;
}
}
throw new IllegalArgumentException("No ProblemTypeEnum found with ID: " + id);
}
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackReplies;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 反馈回复表 Mapper 接口
*
* @author system_generator
* @date 2025-05-15
*/
public interface FeedbackRepliesMapper extends BaseMapper<FeedbackReplies> {
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackSuggestions;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 反馈建议表 Mapper 接口
*
* @author system_generator
* @date 2025-05-15
*/
public interface FeedbackSuggestionsMapper extends BaseMapper<FeedbackSuggestions> {
}
package com.yeejoin.amos.boot.module.common.api.service;
/**
* 反馈回复表接口类
*
* @author system_generator
* @date 2025-05-15
*/
public interface IFeedbackRepliesService {}
package com.yeejoin.amos.boot.module.common.api.service;
/**
* 反馈建议表接口类
*
* @author system_generator
* @date 2025-05-15
*/
public interface IFeedbackSuggestionsService {}
<?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="com.yeejoin.amos.boot.module.common.api.mapper.FeedbackRepliesMapper">
</mapper>
<?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="com.yeejoin.amos.boot.module.common.api.mapper.FeedbackSuggestionsMapper">
</mapper>
package com.yeejoin.amos.boot.module.common.biz.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackReplies;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FeedbackRepliesServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
*
* @author system_generator
* @date 2025-05-15
*/
@RestController
@Api(tags = "反馈回复表")
@RequestMapping(value = "/feedback-replies")
public class FeedbackRepliesController extends BaseController {
@Autowired
FeedbackRepliesServiceImpl feedbackRepliesServiceImpl;
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<FeedbackReplies> save(@RequestBody FeedbackReplies feedbackReplies) {
feedbackReplies = feedbackRepliesServiceImpl.createWithModel(feedbackReplies);
return ResponseHelper.buildResponse(feedbackReplies);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<FeedbackReplies> updateBySequenceNbrFeedbackReplies(@RequestBody FeedbackReplies entity,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
entity.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(feedbackRepliesServiceImpl.updateWithModel(entity));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(feedbackRepliesServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<FeedbackReplies> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(feedbackRepliesServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "分页查询", notes = "分页查询")
public ResponseModel<Page<FeedbackReplies>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<FeedbackReplies> page = new Page<FeedbackReplies>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(feedbackRepliesServiceImpl.queryForFeedbackRepliesPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "列表全部数据查询", notes = "列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<FeedbackReplies>> selectForList() {
return ResponseHelper.buildResponse(feedbackRepliesServiceImpl.queryForFeedbackRepliesList());
}
}
package com.yeejoin.amos.boot.module.common.biz.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackSuggestions;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FeedbackSuggestionsServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
*
* @author system_generator
* @date 2025-05-15
*/
@RestController
@Api(tags = "反馈建议表")
@RequestMapping(value = "/feedback-suggestions")
public class FeedbackSuggestionsController extends BaseController {
@Autowired
FeedbackSuggestionsServiceImpl feedbackSuggestionsServiceImpl;
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<FeedbackSuggestions> save(@RequestBody FeedbackSuggestions suggestions) {
suggestions = feedbackSuggestionsServiceImpl.createWithModel(suggestions);
return ResponseHelper.buildResponse(suggestions);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<FeedbackSuggestions> updateBySequenceNbrFeedbackSuggestions(@RequestBody FeedbackSuggestions entity,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
entity.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(feedbackSuggestionsServiceImpl.updateWithModel(entity));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(feedbackSuggestionsServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<FeedbackSuggestions> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(feedbackSuggestionsServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "分页查询", notes = "分页查询")
public ResponseModel<Page<FeedbackSuggestions>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<FeedbackSuggestions> page = new Page<FeedbackSuggestions>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(feedbackSuggestionsServiceImpl.queryForFeedbackSuggestionsPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "列表全部数据查询", notes = "列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<FeedbackSuggestions>> selectForList() {
return ResponseHelper.buildResponse(feedbackSuggestionsServiceImpl.queryForFeedbackSuggestionsList());
}
}
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackReplies;
import com.yeejoin.amos.boot.module.common.api.mapper.FeedbackRepliesMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFeedbackRepliesService;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.List;
/**
* 反馈回复表服务实现类
*
* @author system_generator
* @date 2025-05-15
*/
@Service
public class FeedbackRepliesServiceImpl extends BaseService<FeedbackReplies,FeedbackReplies,FeedbackRepliesMapper> implements IFeedbackRepliesService {
/**
* 分页查询
*/
public Page<FeedbackReplies> queryForFeedbackRepliesPage(Page<FeedbackReplies> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<FeedbackReplies> queryForFeedbackRepliesList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackSuggestions;
import com.yeejoin.amos.boot.module.common.api.mapper.FeedbackSuggestionsMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFeedbackSuggestionsService;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.List;
/**
* 反馈建议表服务实现类
*
* @author system_generator
* @date 2025-05-15
*/
@Service
public class FeedbackSuggestionsServiceImpl extends BaseService<FeedbackSuggestions, FeedbackSuggestions, FeedbackSuggestionsMapper> implements IFeedbackSuggestionsService {
/**
* 分页查询
*/
public Page<FeedbackSuggestions> queryForFeedbackSuggestionsPage(Page<FeedbackSuggestions> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<FeedbackSuggestions> queryForFeedbackSuggestionsList() {
return this.queryForList("", false);
}
}
\ No newline at end of file
...@@ -50,4 +50,7 @@ public class ESDataChangeLogDto { ...@@ -50,4 +50,7 @@ public class ESDataChangeLogDto {
@Field(type = FieldType.Keyword) @Field(type = FieldType.Keyword)
private String changeId; private String changeId;
@Field(type = FieldType.Keyword)
private String columnType;
} }
...@@ -91,9 +91,40 @@ public class ChangeLogInsertListener { ...@@ -91,9 +91,40 @@ public class ChangeLogInsertListener {
JgBizChangeLog changeLog = saveLog(event); JgBizChangeLog changeLog = saveLog(event);
// 2.子表字段保存 // 2.子表字段保存
List<ESDataChangeLogDto> logs = saveColumnsChange2Es(fieldChangeMetas, requestContextModel, date, changeLog); List<ESDataChangeLogDto> logs = saveColumnsChange2Es(fieldChangeMetas, requestContextModel, date, changeLog);
// 3.异步记录履历日志
this.insertCertLog(changeLog, event);
log.info("es 操作日志数据入库成功:{}条", logs.size()); log.info("es 操作日志数据入库成功:{}条", logs.size());
} }
@Async
protected void insertCertLog(JgBizChangeLog changeLog, BaseBizDataChangeEvent event) {
try {
String equId = Stream.concat(
Optional.ofNullable(event.getBizRelationData().getProjectContraptionIds()).orElse(Collections.emptySet()).stream(),
Optional.ofNullable(event.getBizRelationData().getRecords()).orElse(Collections.emptySet()).stream()
).findFirst().orElse(null);
String businessTypeName = BusinessTypeEnum
.findNameByEnumName(changeLog.getBizType())
.map(name -> "设备编辑_" + name)
.orElse("设备编辑");
jgResumeInfoService.createWithModel(JgResumeInfoDto.builder()
.applyNo(event.getBizRelationData().getBizId())
.businessType(businessTypeName)
.businessId(event.getBizRelationData().getBizId())
.equId(equId)
.resumeType("1")
.changeLogId(String.valueOf(changeLog.getSequenceNbr()))
.approvalUnit(event.getBizRelationData().getUnitName())
.approvalUnitCode(event.getBizRelationData().getUnitCode())
.createUserName(event.getBizRelationData().getRecUserName())
.createUserId(event.getRequestContext().getExcutedUserId())
.status("正常")
.build());
} catch (Exception e){
log.error(e.getMessage(), e);
}
}
private List<ESDataChangeLogDto> saveColumnsChange2Es(List<FieldChangeMeta> fieldChangeMetas, RequestContextModel requestContextModel, Date date, JgBizChangeLog changeLog) { private List<ESDataChangeLogDto> saveColumnsChange2Es(List<FieldChangeMeta> fieldChangeMetas, RequestContextModel requestContextModel, Date date, JgBizChangeLog changeLog) {
List<ESDataChangeLogDto> logs = fieldChangeMetas.parallelStream().map(changeDataDto -> { List<ESDataChangeLogDto> logs = fieldChangeMetas.parallelStream().map(changeDataDto -> {
ESDataChangeLogDto changeLogDto = new ESDataChangeLogDto(); ESDataChangeLogDto changeLogDto = new ESDataChangeLogDto();
...@@ -108,6 +139,7 @@ public class ChangeLogInsertListener { ...@@ -108,6 +139,7 @@ public class ChangeLogInsertListener {
changeLogDto.setColumnFamily(changeDataDto.getColumnFamily()); changeLogDto.setColumnFamily(changeDataDto.getColumnFamily());
changeLogDto.setBizType(changeDataDto.getBizType()); changeLogDto.setBizType(changeDataDto.getBizType());
changeLogDto.setBatchId(changeLog.getSequenceNbr() + ""); changeLogDto.setBatchId(changeLog.getSequenceNbr() + "");
changeLogDto.setColumnType(changeDataDto.getColumnType());
return changeLogDto; return changeLogDto;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
if (!logs.isEmpty()) { if (!logs.isEmpty()) {
...@@ -124,27 +156,6 @@ public class ChangeLogInsertListener { ...@@ -124,27 +156,6 @@ public class ChangeLogInsertListener {
changeLog.setRecUserId(event.getRequestContext().getExcutedUserId()); changeLog.setRecUserId(event.getRequestContext().getExcutedUserId());
changeLog.setSequenceNbr(Long.parseLong(event.getRequestContext().getTraceId())); changeLog.setSequenceNbr(Long.parseLong(event.getRequestContext().getTraceId()));
bizChangeLogService.getBaseMapper().insert(changeLog); bizChangeLogService.getBaseMapper().insert(changeLog);
String equId = Stream.concat(
Optional.ofNullable(event.getBizRelationData().getProjectContraptionIds()).orElse(Collections.emptySet()).stream(),
Optional.ofNullable(event.getBizRelationData().getRecords()).orElse(Collections.emptySet()).stream()
).findFirst().orElse(null);
String businessTypeName = BusinessTypeEnum
.findNameByEnumName(changeLog.getBizType())
.map(name -> "设备编辑_" + name)
.orElse("设备编辑");
jgResumeInfoService.createWithModel(JgResumeInfoDto.builder()
.applyNo(event.getBizRelationData().getBizId())
.businessType(businessTypeName)
.businessId(event.getBizRelationData().getBizId())
.equId(equId)
.resumeType("1")
.changeLogId(String.valueOf(changeLog.getSequenceNbr()))
.approvalUnit(event.getBizRelationData().getUnitName())
.approvalUnitCode(event.getBizRelationData().getUnitCode())
.createUserName(event.getBizRelationData().getRecUserName())
.createUserId(event.getRequestContext().getExcutedUserId())
.status("正常")
.build());
return changeLog; return changeLog;
} }
} }
package com.yeejoin.amos.boot.module.jg.biz.edit.process.biz; package com.yeejoin.amos.boot.module.jg.biz.edit.process.biz;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
...@@ -36,7 +37,8 @@ public abstract class DefaultBizDataChangeHandler<U extends BaseBizDataChangeEve ...@@ -36,7 +37,8 @@ public abstract class DefaultBizDataChangeHandler<U extends BaseBizDataChangeEve
@Override @Override
public final void doSave(String bizId, String applyNo, ModelType model, Map<String, Object> changeData, ReginParams selectedOrgInfo) { public final void doSave(String bizId, String applyNo, ModelType model, Map<String, Object> changeData, ReginParams selectedOrgInfo) {
if (beforeCheck(bizId, applyNo, model, changeData)) { if (beforeCheck(bizId, applyNo, model, changeData)) {
JSONObject oData = new JSONObject(changeData); JSONObject oData = new JSONObject();
BeanUtil.copyProperties(changeData, oData);
// 删除原始提交的变更说明及附件放置后续存放到json // 删除原始提交的变更说明及附件放置后续存放到json
changeData.remove("changeReason"); changeData.remove("changeReason");
changeData.remove("changeAttachment"); changeData.remove("changeAttachment");
...@@ -53,14 +55,14 @@ public abstract class DefaultBizDataChangeHandler<U extends BaseBizDataChangeEve ...@@ -53,14 +55,14 @@ public abstract class DefaultBizDataChangeHandler<U extends BaseBizDataChangeEve
} }
} }
private void publish2OtherBiz(List<FieldChangeMeta> allChangeColumns, String applyNo, JSONObject changeData, ReginParams selectedOrgInfo) { private void publish2OtherBiz(List<FieldChangeMeta> allChangeColumns, String applyNo, JSONObject oData, ReginParams selectedOrgInfo) {
if (!allChangeColumns.isEmpty()) { if (!allChangeColumns.isEmpty()) {
BizRelationDataDto bizRelationDataDto = new BizRelationDataDto(); BizRelationDataDto bizRelationDataDto = new BizRelationDataDto();
bizRelationDataDto.setBizId(applyNo); bizRelationDataDto.setBizId(applyNo);
bizRelationDataDto.setBizType(canHandleBizType()); bizRelationDataDto.setBizType(canHandleBizType());
bizRelationDataDto.setRecords(getEqs(applyNo)); bizRelationDataDto.setRecords(getEqs(applyNo));
bizRelationDataDto.setChangeReason(changeData.getString("changeReason")); bizRelationDataDto.setChangeReason(oData.getString("changeReason"));
bizRelationDataDto.setChangeAttachment(JSONObject.toJSONString(changeData.get("changeAttachment"))); bizRelationDataDto.setChangeAttachment(JSONObject.toJSONString(oData.get("changeAttachment")));
bizRelationDataDto.setProjectContraptionIds(getProjectContraptionIds(applyNo)); bizRelationDataDto.setProjectContraptionIds(getProjectContraptionIds(applyNo));
bizRelationDataDto.setRecUserName(selectedOrgInfo.getUserModel().getUserName()); bizRelationDataDto.setRecUserName(selectedOrgInfo.getUserModel().getUserName());
bizRelationDataDto.setUnitCode(selectedOrgInfo.getCompany().getCompanyCode()); bizRelationDataDto.setUnitCode(selectedOrgInfo.getCompany().getCompanyCode());
......
...@@ -670,6 +670,8 @@ public class CommonEquipDataProcessService { ...@@ -670,6 +670,8 @@ public class CommonEquipDataProcessService {
fieldChangeMeta.setColumnFamily(group.value()); fieldChangeMeta.setColumnFamily(group.value());
fieldChangeMeta.setColumnLabel(fieldName); fieldChangeMeta.setColumnLabel(fieldName);
fieldChangeMeta.setChangeId(changeId); fieldChangeMeta.setChangeId(changeId);
// 字段类型前端渲染时使用
fieldChangeMeta.setColumnType(displayDefine.type().getSimpleName());
if (newVal instanceof String) { if (newVal instanceof String) {
fieldChangeMeta.setColumnOldValue((String) oldVal); fieldChangeMeta.setColumnOldValue((String) oldVal);
fieldChangeMeta.setColumnNewValue((String) newVal); fieldChangeMeta.setColumnNewValue((String) newVal);
......
package com.yeejoin.amos.boot.module.common.api.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 反馈回复表
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tzs_feedback_replies")
@ApiModel(value="FeedbackReplies对象", description="反馈回复表")
public class FeedbackReplies extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "创建人id")
private String createUserId;
@ApiModelProperty(value = "创建人")
private String createUserName;
@ApiModelProperty(value = "创建时间(回复时间)")
private LocalDateTime createDate;
@ApiModelProperty(value = "回复描述")
private String replyDescription;
@ApiModelProperty(value = "回复用户id")
private Integer replyUserId;
@ApiModelProperty(value = "回复用户姓名")
private String replyUserName;
@ApiModelProperty(value = "反馈建议表seq")
private String suggestionsSeq;
@ApiModelProperty(value = "已读状态(1:已读,0:未读)")
private String readStatus;
@ApiModelProperty(value = "回复单位code")
private String replyCompanyCode;
@ApiModelProperty(value = "回复单位名称")
private String replyCompanyName;
}
package com.yeejoin.amos.boot.module.common.api.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 反馈建议表
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tzs_feedback_suggestions")
@ApiModel(value="FeedbackSuggestions对象", description="反馈建议表")
public class FeedbackSuggestions extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "创建人id")
private String createUserId;
@ApiModelProperty(value = "创建人")
private String createUserName;
@ApiModelProperty(value = "创建时间(填报时间)")
private LocalDateTime createDate;
@ApiModelProperty(value = "问题类型(字典值)")
private String problemType;
@ApiModelProperty(value = "问题描述")
private String problemDescription;
@ApiModelProperty(value = "管辖机构org_code")
private String superviseOrgCode;
@ApiModelProperty(value = "ed")
private String superviseOrgName;
@ApiModelProperty(value = "上报企业统一信用代码")
private String companyCode;
@ApiModelProperty(value = "上报企业名称")
private String companyName;
@ApiModelProperty(value = "上报人员id")
private Integer reporterUserId;
@ApiModelProperty(value = "上报人员姓名")
private String reporterUserName;
@ApiModelProperty(value = "联系人")
private String contactPerson;
@ApiModelProperty(value = "联系电话")
private String contactPhone;
@ApiModelProperty(value = "回复状态(1:回复,0:未回复)")
private String status;
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackReplies;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 反馈回复表 Mapper 接口
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
public interface FeedbackRepliesMapper extends BaseMapper<FeedbackReplies> {
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackSuggestions;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 反馈建议表 Mapper 接口
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
public interface FeedbackSuggestionsMapper extends BaseMapper<FeedbackSuggestions> {
}
package com.yeejoin.amos.boot.module.common.api.service;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackReplies;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 反馈回复表 服务类
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
public interface IFeedbackRepliesService extends IService<FeedbackReplies> {
}
package com.yeejoin.amos.boot.module.common.api.service;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackSuggestions;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 反馈建议表 服务类
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
public interface IFeedbackSuggestionsService extends IService<FeedbackSuggestions> {
}
package com.yeejoin.amos.boot.module.common.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
/**
* <p>
* 反馈回复表 前端控制器
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
@RestController
@RequestMapping("/common/feedback-replies")
public class FeedbackRepliesController extends BaseController {
}
package com.yeejoin.amos.boot.module.common.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
/**
* <p>
* 反馈建议表 前端控制器
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
@RestController
@RequestMapping("/common/feedback-suggestions")
public class FeedbackSuggestionsController extends BaseController {
}
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackReplies;
import com.yeejoin.amos.boot.module.common.api.mapper.FeedbackRepliesMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFeedbackRepliesService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 反馈回复表 服务实现类
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
@Service
public class FeedbackRepliesServiceImpl extends ServiceImpl<FeedbackRepliesMapper, FeedbackReplies> implements IFeedbackRepliesService {
}
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.yeejoin.amos.boot.module.common.api.entity.FeedbackSuggestions;
import com.yeejoin.amos.boot.module.common.api.mapper.FeedbackSuggestionsMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFeedbackSuggestionsService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 反馈建议表 服务实现类
* </p>
*
* @author system_generator
* @since 2025-05-15
*/
@Service
public class FeedbackSuggestionsServiceImpl extends ServiceImpl<FeedbackSuggestionsMapper, FeedbackSuggestions> implements IFeedbackSuggestionsService {
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment