移出相关接口bug修复

This commit is contained in:
黎润豪 2026-03-11 17:25:39 +08:00
parent 272443062c
commit e00f210c07
6 changed files with 310 additions and 37 deletions

View File

@ -43,11 +43,13 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
@ -385,6 +387,11 @@ public class EOtIlldisdetailController extends BaseController {
throw new BusinessException("待办记录不存在");
}
// 校验当前用户是否为待办创建人
if (StringUtils.notEquals(user.getPrimaryKey(), taskListModel.getCreateUserid())) {
throw new BusinessException("非待办创建人无权作废待办");
}
// 保存作废意见
TSOpinion opinion = new TSOpinion();
opinion.setBizseq(taskListModel.getBizseqid());
@ -396,13 +403,8 @@ public class EOtIlldisdetailController extends BaseController {
opinionService.save(opinion);
// 作废工作流
taskListService.updateWorkFlow(user, opinion, taskListModel, FlowUtil.SERIOUS_ILLEGAL_NULLIFY, null, null);
// 删除Temp表数据
List<EOtIlldisdetailTemp> bizList = eOtIlldisdetailTempService.listByBizSeq(taskListModel.getBizseqid());
for (EOtIlldisdetailTemp tempRecord : bizList) {
eOtIlldisdetailTempService.removeById(tempRecord.getIllid());
}
taskListService.updateWorkFlow(user, opinion, taskListModel, FlowUtil.SERIOUS_ILLEGAL_NULLIFY,
new String[]{user.getPrimaryKey()}, new String[]{user.getEname()});
return RestResult.ok(taskListModel);
}
@ -434,7 +436,7 @@ public class EOtIlldisdetailController extends BaseController {
@ApiOperation("查询外单位严重违法列入已办记录")
@PostMapping("/enterFinishedList")
public RestResult<IPage<EOtIlldisdetailTemp>> enterFinishedList(HttpServletRequest request,
@RequestBody BaseQuery<TaskListTodoParam> baseQuery) {
@RequestBody BaseQuery<TaskListTodoParam> baseQuery) {
AICUser user = getLoginUser(request);
if (user == null) {
return RestResult.error(ResultCode.USER_NOT_LOGGED_IN);
@ -474,7 +476,7 @@ public class EOtIlldisdetailController extends BaseController {
@ApiOperation("查询外单位严重违法移出已办记录")
@PostMapping("/removeFinishedList")
public RestResult<IPage<EOtIlldisdetailTemp>> removeFinishedList(HttpServletRequest request,
@RequestBody BaseQuery<TaskListTodoParam> baseQuery) {
@RequestBody BaseQuery<TaskListTodoParam> baseQuery) {
AICUser user = getLoginUser(request);
if (user == null) {
return RestResult.error(ResultCode.USER_NOT_LOGGED_IN);
@ -556,9 +558,13 @@ public class EOtIlldisdetailController extends BaseController {
*/
@ApiOperation("根据待办ID获取待办详情")
@GetMapping("/getTaskDetail")
public RestResult<TaskDetailVo> getTaskDetail(@ApiParam("待办ID") @RequestParam String tasklistid) {
public RestResult<TaskDetailVo> getTaskDetail(@ApiParam("待办ID") @RequestParam String workflowid) {
// 查询待办信息
TSTaskList taskListModel = taskListService.selectByTasklistID(tasklistid);
TSTaskList one = taskListService.lambdaQuery().eq(TSTaskList::getWorkflowid, workflowid).last("limit 1").one();
if (one == null) {
throw new BusinessException("待办记录不存在");
}
TSTaskList taskListModel = taskListService.selectByTasklistID(one.getTasklistid());
if (taskListModel == null) {
throw new BusinessException("待办记录不存在");
}
@ -599,6 +605,7 @@ public class EOtIlldisdetailController extends BaseController {
tempRecord.setSerillrea(dto.getSerillrea());
tempRecord.setSerillreaCn(dto.getSerillreaCn());
tempRecord.setAbntime(dto.getAbntime());
tempRecord.setRegorg(dto.getRegorg());
tempRecord.setDecorg(dto.getDecorg());
tempRecord.setDecorgCn(dto.getDecorgCn());
tempRecord.setDedocnum(dto.getDedocnum());
@ -640,20 +647,14 @@ public class EOtIlldisdetailController extends BaseController {
if (StringUtils.isBlank(dto.getIllid())) {
throw new BusinessException("记录ID不能为空");
}
if (StringUtils.isBlank(dto.getRemexcpres())) {
throw new BusinessException("移出事由不能为空");
}
if (dto.getRemdate() == null) {
throw new BusinessException("移出日期不能为空");
}
// 查询移出事由对应的中文名称
Map<String, TRBaseCode> codeMap = baseCodeService.getBaseCodeMapFormCache("CD74");
TRBaseCode remexcpresCode = codeMap.get(dto.getRemexcpres());
if (remexcpresCode == null) {
throw new BusinessException("未找到移出事由代码为 " + dto.getRemexcpres() + " 的代码表记录");
}
String remexcpresCn = remexcpresCode.getName();
// // 查询移出事由对应的中文名称
// Map<String, TRBaseCode> codeMap = baseCodeService.getBaseCodeMapFormCache("CD74");
// TRBaseCode remexcpresCode = codeMap.get(dto.getRemexcpres());
// if (remexcpresCode == null) {
// throw new BusinessException("未找到移出事由代码为 " + dto.getRemexcpres() + " 的代码表记录");
// }
// String remexcpresCn = remexcpresCode.getName();
// 查询原始记录
EOtIlldisdetail originalRecord = eOtIlldisdetailService.getById(dto.getIllid());
@ -672,8 +673,8 @@ public class EOtIlldisdetailController extends BaseController {
tempRecord.setUniscid(originalRecord.getUniscid());
tempRecord.setRegno(originalRecord.getRegno());
tempRecord.setEntname(originalRecord.getEntname());
tempRecord.setRemexcpres(dto.getRemexcpres());
tempRecord.setRemexcpresCn(remexcpresCn);
// tempRecord.setRemexcpres(dto.getRemexcpres());
// tempRecord.setRemexcpresCn(remexcpresCn);
tempRecord.setRemdate(dto.getRemdate());
tempRecord.setRecorg(dto.getRecorg());
tempRecord.setRecorgCn(dto.getRecorgCn());
@ -797,4 +798,42 @@ public class EOtIlldisdetailController extends BaseController {
List<TSOpinion> opinionList = opinionService.selectByAuditingID(workflowid);
return RestResult.ok(opinionList);
}
/**
* 修改暂存的业务数据
*
* @param modifyDto 业务记录
* @return 修改结果
*/
@ApiOperation("修改暂存的业务数据")
@PostMapping("modify/temp")
public RestResult<?> modifyTemp(@RequestBody @Valid EOtIlldisdetailTempModifyDto modifyDto) {
String bizseq = modifyDto.getBizseq();
String bizType = modifyDto.getBizType();
if (!StringUtils.equalsAny(modifyDto.getBizType(), CommonConstants.FALSE_0, CommonConstants.TRUE_1) || StringUtils.isBlank(bizseq)) {
return RestResult.error(ResultCode.PARAM_IS_BLANK);
}
EOtIlldisdetailTemp temp = new EOtIlldisdetailTemp();
BeanUtils.copyProperties(modifyDto, temp);
if (StringUtils.isNotBlank(temp.getSerillrea())) {
// CD73
Map<String, TRBaseCode> codeMap = baseCodeService.getBaseCodeMapFormCache("CD73");
TRBaseCode serillreaCode = codeMap.get(temp.getSerillrea());
if (serillreaCode != null) {
temp.setSerillreaCn(serillreaCode.getName());
}
}
if (StringUtils.isNotBlank(temp.getRemexcpres())) {
// CD74
Map<String, TRBaseCode> codeMap = baseCodeService.getBaseCodeMapFormCache("CD74");
TRBaseCode remCode = codeMap.get(temp.getRemexcpres());
if (remCode != null) {
temp.setRemexcpresCn(remCode.getName());
}
}
eOtIlldisdetailTempService.update(temp, new LambdaQueryWrapper<EOtIlldisdetailTemp>()
.eq(StringUtils.equals(CommonConstants.FALSE_0, bizType), EOtIlldisdetailTemp::getInBizseq, bizseq)
.eq(StringUtils.equals(CommonConstants.TRUE_1, bizType), EOtIlldisdetailTemp::getOutBizseq, bizseq));
return RestResult.ok();
}
}

View File

@ -76,6 +76,13 @@ public class EOtIlldisdetail extends Model<EOtIlldisdetail> {
@ApiModelProperty(value = "注册号")
private String regno;
/**
* 登记机关编码
*/
@TableField("REGORG")
@ApiModelProperty("登记机关编码")
private String regorg;
/**
* 法定代表人/负责人人员姓名
*/

View File

@ -104,6 +104,13 @@ public class EOtIlldisdetailTemp extends Model<EOtIlldisdetailTemp> {
@ApiModelProperty(value = "注册号")
private String regno;
/**
* 登记机关编码
*/
@TableField("REGORG")
@ApiModelProperty("登记机关编码")
private String regorg;
/**
* 法定代表人/负责人人员姓名
*/
@ -139,6 +146,13 @@ public class EOtIlldisdetailTemp extends Model<EOtIlldisdetailTemp> {
@ApiModelProperty(value = "列入事由/情形(中文名称)")
private String serillreaCn;
/**
* 列入事实理由
*/
@TableField("SERREASONS")
@ApiModelProperty("列入事实理由")
private String serreasons;
/**
* 列入日期
*/
@ -182,6 +196,13 @@ public class EOtIlldisdetailTemp extends Model<EOtIlldisdetailTemp> {
@ApiModelProperty(value = "移出事由(中文名称)")
private String remexcpresCn;
/**
* 移出事实理由
*/
@TableField("REMREASONS")
@ApiModelProperty("移出事实理由")
private String remreasons;
/**
* 移出日期
*/
@ -225,6 +246,69 @@ public class EOtIlldisdetailTemp extends Model<EOtIlldisdetailTemp> {
@ApiModelProperty(value = "移除文书id")
private String remwritid;
/**
* 来源类别
*/
@TableField("SOURCETYPE")
@ApiModelProperty("来源类别(直接用中文)")
private String sourcetype;
/**
* 是否经过听证程序(1是0否)
*/
@TableField("ISHEA")
@ApiModelProperty("是否经过听证程序(1是0否)")
private String ishea;
/**
* 当事人听证中提出的主要意见
*/
@TableField("HEAOP")
@ApiModelProperty("当事人听证中提出的主要意见")
private String heaop;
/**
* 听证意见
*/
@ApiModelProperty("听证意见")
@TableField("HEAOPINIONL")
private String heaopinionl;
/**
* 行政复议机关
*/
@ApiModelProperty("行政复议机关")
@TableField("RECONSIDERATIONORG")
private String reconsiderationorg;
/**
* 人民政府
*/
@ApiModelProperty("人民政府")
@TableField("GOVERNMENTORG")
private String governmentorg;
/**
* 诉讼机关
*/
@TableField("LITIORG")
@ApiModelProperty("诉讼机关")
private String litiorg;
/**
* 作出判决的人民法院司法文书标题
*/
@TableField("JUDDOCTITLE")
@ApiModelProperty("作出判决的人民法院司法文书标题")
private String juddoctitle;
/**
* 作出判决的人民法院司法文书文号
*/
@ApiModelProperty("作出判决的人民法院司法文书文号")
@TableField("JUDDOCNO")
private String juddocno;
/**
* 数据汇总单位
*/

View File

@ -0,0 +1,141 @@
package com.chinaweal.aiccs.aiccs.seriousillegal.entity.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import com.chinaweal.aiccs.common.util.DateUtils;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDate;
/**
* 外单位列严记录修改
*
* @author lroyia
* @since 2026/3/11 11:12
**/
@Data
@Accessors(chain = true)
@ApiModel("外单位列严记录修改")
public class EOtIlldisdetailTempModifyDto implements Serializable {
private final static long serialVersionUID = 1L;
/**
* 业务号
*/
@NotBlank
@ApiModelProperty(value = "业务号", required = true)
private String bizseq;
/**
* 列入/移出用于判断bizseq的查询方式
*/
@NotBlank
@ApiModelProperty(value = "列入/移出用于判断bizseq的查询方式0列入1移出", required = true)
private String bizType;
/**
* 类别代码标识符DD999新增
*/
@ApiModelProperty(value = "类别代码标识符DD999新增")
private String infotype;
/**
* 来源类别
*/
@ApiModelProperty("来源类别(直接用中文)")
private String sourcetype;
/**
* 是否经过听证程序(1是0否)
*/
@ApiModelProperty("是否经过听证程序(1是0否)")
private String ishea;
/**
* 当事人听证中提出的主要意见
*/
@TableField("HEAOP")
@ApiModelProperty("当事人听证中提出的主要意见")
private String heaop;
/**
* 听证意见
*/
@ApiModelProperty("听证意见")
private String heaopinionl;
/**
* 行政复议机关
*/
@ApiModelProperty("行政复议机关")
private String reconsiderationorg;
/**
* 人民政府
*/
@ApiModelProperty("人民政府")
private String governmentorg;
/**
* 诉讼机关
*/
@ApiModelProperty("诉讼机关")
private String litiorg;
/**
* 作出判决的人民法院司法文书标题
*/
@ApiModelProperty("作出判决的人民法院司法文书标题")
private String juddoctitle;
/**
* 作出判决的人民法院司法文书文号
*/
@ApiModelProperty("作出判决的人民法院司法文书文号")
private String juddocno;
/**
* 列入事由/情形代码标识符CD73
*/
@ApiModelProperty(value = "列入事由/情形代码标识符CD73")
private String serillrea;
/**
* 列入事实理由
*/
@ApiModelProperty("列入事实理由")
private String serreasons;
/**
* 列入日期
*/
@TableField("ABNTIME")
@JsonFormat(pattern = DateUtils.DATE_DEFAULT_FORMAT, timezone = "GMT+8")
@ApiModelProperty(value = "列入日期", example = "2024-01-01")
private LocalDate abntime;
/**
* 移出事由代码标识符CD74
*/
@ApiModelProperty(value = "移出事由代码标识符CD74")
private String remexcpres;
/**
* 移出事实理由
*/
@ApiModelProperty("移出事实理由")
private String remreasons;
/**
* 移出日期
*/
@JsonFormat(pattern = DateUtils.DATE_DEFAULT_FORMAT, timezone = "GMT+8")
@ApiModelProperty(value = "移出日期", example = "2024-01-01")
private LocalDate remdate;
}

View File

@ -202,16 +202,6 @@ public class EOtIlldisdetailServiceImpl extends ServiceImpl<EOtIlldisdetailMappe
throw new IllegalArgumentException("业务记录列表不能为空");
}
// 保存到Temp表
for (EOtIlldisdetailTemp tempRecord : bizList) {
if (tempRecord.getIllid() == null) {
tempRecord.setIllid(java.util.UUID.randomUUID().toString().replace("-", ""));
}
tempRecord.setDstate("1"); // 1更新
tempRecord.setOutBizseq(taskListModel.getBizseqid());
eOtIlldisdetailTempService.saveOrUpdate(tempRecord);
}
// 设置业务名称
StringBuilder entName = new StringBuilder();
for (int i = 0; i < bizList.size(); i++) {
@ -231,6 +221,18 @@ public class EOtIlldisdetailServiceImpl extends ServiceImpl<EOtIlldisdetailMappe
taskListService.startWorkFlow(taskListModel, aicUser, FlowUtil.SERIOUS_ILLEGAL_WORKFLOW);
}
// 保存到Temp表
for (EOtIlldisdetailTemp tempRecord : bizList) {
if (tempRecord.getIllid() == null) {
tempRecord.setIllid(java.util.UUID.randomUUID().toString().replace("-", ""));
}
tempRecord.setDstate("1"); // 1更新
tempRecord.setOutBizseq(taskListModel.getBizseqid());
tempRecord.setOutWorkflowId(taskListModel.getWorkflowid());
eOtIlldisdetailTempService.saveOrUpdate(tempRecord);
}
return taskListModel;
}
}

View File

@ -30,7 +30,7 @@
left join tstasklist ta on ot.IN_WORKFLOW_ID = ta.WORKFLOWID
</if>
<if test='param.bustype eq "81"'>
left join tstasklist ta on ot.OUT_WORKFLOW_ID = ts.WORKFLOWID
left join tstasklist ta on ot.OUT_WORKFLOW_ID = ta.WORKFLOWID
</if>
<where>
<if test="param.currentUserId != null and param.currentUserId != ''">