From cbeb3ef5316093e52df5bd50caad5a8448898e46 Mon Sep 17 00:00:00 2001 From: lroyia <814876716@qq.com> Date: Mon, 16 Mar 2026 08:28:41 +0000 Subject: [PATCH] =?UTF-8?q?XQ-20260314-001:=20=E5=86=85=E8=92=99=E4=BF=A1?= =?UTF-8?q?=E7=94=A8=E7=9B=91=E7=AE=A1-=E6=92=A4=E9=94=80=E5=90=8A?= =?UTF-8?q?=E9=94=80=E5=8A=9F=E8=83=BD=E5=90=8E=E7=AB=AF=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/init/AICCS/TS_BIZ_CANCEL_REVOKE.sql | 81 ++++++ .../XQ-20260314-001_开发思路与改动.md | 141 ++++++++++ devdoc/XQ-20260314-001_需求清单.md | 51 ++++ .../controller/CancelRevokeController.java | 99 +++++++ .../force/cancel/entity/CancelRevoke.java | 245 ++++++++++++++++++ .../cancel/entity/CancelRevokeApprove.java | 113 ++++++++ .../cancel/entity/vo/CancelRevokeVO.java | 28 ++ .../mapper/CancelRevokeApproveMapper.java | 29 +++ .../cancel/mapper/CancelRevokeMapper.java | 65 +++++ .../cancel/service/ICancelRevokeService.java | 66 +++++ .../service/impl/CancelRevokeServiceImpl.java | 229 ++++++++++++++++ .../aiccs/force/CancelRevokeApproveMapper.xml | 49 ++++ .../mapper/aiccs/force/CancelRevokeMapper.xml | 215 +++++++++++++++ 13 files changed, 1411 insertions(+) create mode 100644 db/init/AICCS/TS_BIZ_CANCEL_REVOKE.sql create mode 100644 devdoc/XQ-20260314-001_开发思路与改动.md create mode 100644 devdoc/XQ-20260314-001_需求清单.md create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/controller/CancelRevokeController.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevoke.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevokeApprove.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/vo/CancelRevokeVO.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeApproveMapper.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeMapper.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/ICancelRevokeService.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/impl/CancelRevokeServiceImpl.java create mode 100644 src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeApproveMapper.xml create mode 100644 src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeMapper.xml diff --git a/db/init/AICCS/TS_BIZ_CANCEL_REVOKE.sql b/db/init/AICCS/TS_BIZ_CANCEL_REVOKE.sql new file mode 100644 index 0000000..66f13a9 --- /dev/null +++ b/db/init/AICCS/TS_BIZ_CANCEL_REVOKE.sql @@ -0,0 +1,81 @@ +-- 撤销吊销业务表 +-- XQ-20260314-001 +CREATE TABLE "AICCS"."TS_BIZ_CANCEL_REVOKE" +( + "BIZ_ID" VARCHAR(72) NOT NULL, + "BIZ_SEQ" VARCHAR(100), + "PRIPID" VARCHAR(72), + "UNISCID" VARCHAR(36), + "REGNO" VARCHAR(60), + "ENTNAME" VARCHAR(200), + "REVOKE_REASON" VARCHAR(200), + "REVOKE_DATE" DATE, + "CANCEL_REVOKE_DATE" VARCHAR(20), + "CANCEL_REVOKE_REASON" VARCHAR(200), + "APPROVAL_DOC_NO" VARCHAR(100), + "APPROVAL_DEPT" VARCHAR(200), + "APPROVAL_DEPT_ID" VARCHAR(100), + "STATUS" VARCHAR(1) DEFAULT '1', + "CURRENT_NODE" VARCHAR(1) DEFAULT '1', + "REMARKS" VARCHAR(200), + "HANDLER_ID" VARCHAR(100), + "HANDLER_NAME" VARCHAR(100), + "HANDLER_DATE" DATE, + "CREATE_TIME" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP, + "UPDATE_TIME" TIMESTAMP(0), + NOT CLUSTER PRIMARY KEY("BIZ_ID") +) STORAGE(ON "MAIN", CLUSTERBTR); + +COMMENT ON TABLE "AICCS"."TS_BIZ_CANCEL_REVOKE" IS '撤销吊销业务表'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."BIZ_ID" IS '业务ID'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."BIZ_SEQ" IS '业务编号'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."PRIPID" IS '主体身份代码'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."UNISCID" IS '统一社会信用代码'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."REGNO" IS '注册号'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."ENTNAME" IS '企业名称'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."REVOKE_REASON" IS '吊销原因'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."REVOKE_DATE" IS '吊销日期'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."CANCEL_REVOKE_DATE" IS '撤销吊销日期'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."CANCEL_REVOKE_REASON" IS '撤销吊销原因'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."APPROVAL_DOC_NO" IS '批准文号'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."APPROVAL_DEPT" IS '批准部门'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."APPROVAL_DEPT_ID" IS '批准部门ID'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."STATUS" IS '状态:1-待受理,2-受理中,3-审核中,4-审批中,5-已通过,6-已拒绝'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."CURRENT_NODE" IS '当前节点:1-受理,2-审核,3-审批'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."REMARKS" IS '备注'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."HANDLER_ID" IS '经办人ID'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."HANDLER_NAME" IS '经办人姓名'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."HANDLER_DATE" IS '经办时间'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."CREATE_TIME" IS '创建时间'; +COMMENT ON COLUMN "AICCS"."TS_BIZ_CANCEL_REVOKE"."UPDATE_TIME" IS '更新时间'; + +-- 撤销吊销审批记录表 +CREATE TABLE "AICCS"."TS_CANCEL_REVOKE_APPROVE" +( + "APPROVE_ID" VARCHAR(72) NOT NULL, + "BIZ_ID" VARCHAR(72), + "NODE" VARCHAR(1), + "APPROVER_ID" VARCHAR(100), + "APPROVER_NAME" VARCHAR(100), + "APPROVE_STATUS" VARCHAR(1), + "APPROVE_OPINION" VARCHAR(500), + "APPROVE_TIME" TIMESTAMP(0), + "CREATE_TIME" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP, + NOT CLUSTER PRIMARY KEY("APPROVE_ID") +) STORAGE(ON "MAIN", CLUSTERBTR); + +COMMENT ON TABLE "AICCS"."TS_CANCEL_REVOKE_APPROVE" IS '撤销吊销审批记录表'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."APPROVE_ID" IS '审批ID'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."BIZ_ID" IS '业务ID'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."NODE" IS '节点:1-受理,2-审核,3-审批'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."APPROVER_ID" IS '审批人ID'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."APPROVER_NAME" IS '审批人姓名'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."APPROVE_STATUS" IS '审批状态:1-通过,2-拒绝'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."APPROVE_OPINION" IS '审批意见'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."APPROVE_TIME" IS '审批时间'; +COMMENT ON COLUMN "AICCS"."TS_CANCEL_REVOKE_APPROVE"."CREATE_TIME" IS '创建时间'; + +-- 创建索引 +CREATE INDEX "IDX_TS_BIZ_CANCEL_REVOKE_STATUS" ON "AICCS"."TS_BIZ_CANCEL_REVOKE"("STATUS"); +CREATE INDEX "IDX_TS_BIZ_CANCEL_REVOKE_PRIPID" ON "AICCS"."TS_BIZ_CANCEL_REVOKE"("PRIPID"); +CREATE INDEX "IDX_TS_CANCEL_REVOKE_APPROVE_BIZ_ID" ON "AICCS"."TS_CANCEL_REVOKE_APPROVE"("BIZ_ID"); diff --git a/devdoc/XQ-20260314-001_开发思路与改动.md b/devdoc/XQ-20260314-001_开发思路与改动.md new file mode 100644 index 0000000..ff02232 --- /dev/null +++ b/devdoc/XQ-20260314-001_开发思路与改动.md @@ -0,0 +1,141 @@ +# XQ-20260314-001 开发思路与改动 + +## 待办信息 +- **待办编号**: XQ-20260314-001 +- **待办标题**: 内蒙信用监管-撤销吊销功能 + +## 一、数据库设计 + +### 1. 业务表结构设计 + +根据需求,需要新建撤销吊销业务表。参考现有表结构,设计如下: + +#### 1.1 撤销吊销业务表 (TS_BIZ_CANCEL_REVOKE) +用于存储撤销吊销业务的核心数据。 + +| 字段名 | 类型 | 说明 | +|--------|------|------| +| BIZ_ID | VARCHAR(72) | 业务ID(主键) | +| BIZ_SEQ | VARCHAR(100) | 业务编号 | +| PRIPID | VARCHAR(72) | 主体身份代码 | +| UNISCID | VARCHAR(36) | 统一社会信用代码 | +| REGNO | VARCHAR(60) | 注册号 | +| ENTNAME | VARCHAR(200) | 企业名称 | +| REVOKE_REASON | VARCHAR(200) | 吊销原因 | +| REVOKE_DATE | DATE | 吊销日期 | +| CANCEL_REVOKE_DATE | VARCHAR(20) | 撤销吊销日期 | +| CANCEL_REVOKE_REASON | VARCHAR(200) | 撤销吊销原因 | +| APPROVAL_DOC_NO | VARCHAR(100) | 批准文号 | +| APPROVAL_DEPT | VARCHAR(200) | 批准部门 | +| APPROVAL_DEPT_ID | VARCHAR(100) | 批准部门ID | +| STATUS | VARCHAR(1) | 状态:1-待受理,2-受理中,3-审核中,4-审批中,5-已通过,6-已拒绝 | +| CURRENT_NODE | VARCHAR(1) | 当前节点:1-受理,2-审核,3-审批 | +| REMARKS | VARCHAR(200) | 备注 | +| HANDLER_ID | VARCHAR(100) | 经办人ID | +| HANDLER_NAME | VARCHAR(100) | 经办人姓名 | +| HANDLER_DATE | DATE | 经办时间 | +| CREATE_TIME | TIMESTAMP | 创建时间 | +| UPDATE_TIME | TIMESTAMP | 更新时间 | + +#### 1.2 撤销吊销审批记录表 (TS_CANCEL_REVOKE_APPROVE) +用于存储三级审批的记录。 + +| 字段名 | 类型 | 说明 | +|--------|------|------| +| APPROVE_ID | VARCHAR(72) | 审批ID(主键) | +| BIZ_ID | VARCHAR(72) | 业务ID | +| NODE | VARCHAR(1) | 节点:1-受理,2-审核,3-审批 | +| APPROVER_ID | VARCHAR(100) | 审批人ID | +| APPROVER_NAME | VARCHAR(100) | 审批人姓名 | +| APPROVE_STATUS | VARCHAR(1) | 审批状态:1-通过,2-拒绝 | +| APPROVE_OPINION | VARCHAR(500) | 审批意见 | +| APPROVE_TIME | TIMESTAMP | 审批时间 | +| CREATE_TIME | TIMESTAMP | 创建时间 | + +## 二、代码结构设计 + +### 2.1 目录结构 +在 `src/main/java/com/chinaweal/aiccs/aiccs/force/` 目录下新增: + +``` +force/ +├── cancel/ +│ ├── controller/ +│ │ └── CancelRevokeController.java +│ ├── mapper/ +│ │ ├── CancelRevokeMapper.java +│ │ └── CancelRevokeApproveMapper.java +│ ├── service/ +│ │ ├── ICancelRevokeService.java +│ │ └── impl/ +│ │ └── CancelRevokeServiceImpl.java +│ ├── entity/ +│ │ ├── CancelRevoke.java +│ │ └── CancelRevokeApprove.java +│ └── entity/vo/ +│ └── CancelRevokeVO.java +``` + +### 2.2 Mapper XML 文件 +在 `src/main/resources/mybatis/mapper/aiccs/force/` 目录下新增: +- `CancelRevokeMapper.xml` +- `CancelRevokeApproveMapper.xml` + +## 三、接口设计 + +### 3.1 查询吊销主体列表接口 +- **接口路径**: GET /api/cancelRevoke/revokedList +- **功能**: 查询主体状态为吊销的主体列表 +- **参数**: 分页参数、查询条件(企业名称、统一社会信用代码、注册号等) +- **返回**: 吊销主体列表 + +### 3.2 发起撤销吊销业务接口 +- **接口路径**: POST /api/cancelRevoke +- **功能**: 发起撤销吊销业务 +- **参数**: 主体ID、企业信息、撤销原因等 +- **返回**: 业务ID + +### 3.3 审批列表查询接口 +- **接口路径**: GET /api/cancelRevoke/approveList +- **功能**: 查询待审批的撤销吊销业务列表 +- **参数**: 分页参数、状态筛选 +- **返回**: 审批列表 + +### 3.4 审批详情查询接口 +- **接口路径**: GET /api/cancelRevoke/{bizId} +- **功能**: 查询撤销吊销业务详情 +- **参数**: 业务ID +- **返回**: 业务详情、审批记录 + +### 3.5 审批操作接口 +- **接口路径**: POST /api/cancelRevoke/approve +- **功能**: 审批通过/拒绝 +- **参数**: 业务ID、审批节点、审批状态、审批意见 +- **返回**: 审批结果 + +### 3.6 撤销吊销记录列表接口 +- **接口路径**: GET /api/cancelRevoke/records +- **功能**: 查询已完成的撤销吊销记录 +- **参数**: 分页参数、查询条件 +- **返回**: 撤销吊销记录列表 + +## 四、审批流程 + +### 4.1 三级审批流程 +1. **受理节点(Node 1)**: 受理人审核材料,确认受理 +2. **审核节点(Node 2)**: 审核人审核业务,提交审批 +3. **审批节点(Node 3)**: 审批人最终审批 + +### 4.2 状态流转 +- 1(待受理)→ 2(受理中)→ 3(审核中)→ 4(审批中)→ 5(已通过)或 6(已拒绝) + +### 4.3 审批结束后的处理 +业务审批通过后(状态变为5): +1. 将主体信息推送到 CANCELREVOKELIST 表 +2. 更新 REVOKELIST 表中的状态为"2"(撤销) +3. 调用接口修改主体状态为"开业" + +## 五、需要创建的SQL文件 + +1. `TS_BIZ_CANCEL_REVOKE.sql` - 撤销吊销业务表 +2. `TS_CANCEL_REVOKE_APPROVE.sql` - 撤销吊销审批记录表 diff --git a/devdoc/XQ-20260314-001_需求清单.md b/devdoc/XQ-20260314-001_需求清单.md new file mode 100644 index 0000000..920816a --- /dev/null +++ b/devdoc/XQ-20260314-001_需求清单.md @@ -0,0 +1,51 @@ +# XQ-20260314-001 需求清单 + +## 待办信息 +- **待办编号**: XQ-20260314-001 +- **待办标题**: 内蒙信用监管-撤销吊销功能 +- **需求方**: 周熙尧 +- **执行人**: 黎润豪 +- **截止日期**: 2026-03-23 + +## 功能需求 + +### 1. 撤销吊销功能菜单位置 +- 新增在一级菜单"批量吊销"里面 + +### 2. 撤销吊销功能页面结构 +- 两个 Tab 页:撤销吊销待办、撤销吊销记录 +- 左上角有个案办理按钮 + +### 3. 个案办理功能 +- 点击个案办理按钮后显示主体状态为吊销的主体列表 +- 不需要判断是否在系统做过批吊业务,直接根据吊销状态查询 +- 只能选择一家吊销主体发起业务,不能多选 + +### 4. 业务审批流程 +- 三级审批:受理 → 审核 → 审批 + +### 5. 业务审批结束后的数据处理 +- 把主体信息存入 BATCH_REVOKE_PUSH_RECORD 表 +- 修改主体状态为开业状态 + +### 6. 数据表 +- 需要新建撤销吊销的业务表 + +## 后端接口清单(仅后端) + +### 1. 撤销吊销业务表相关 +- [ ] 创建撤销吊销业务表 + +### 2. 个案办理相关接口 +- [ ] 查询吊销主体列表接口(根据吊销状态查询) +- [ ] 发起撤销吊销业务接口 + +### 3. 审批流程相关接口 +- [ ] 审批列表查询接口 +- [ ] 审批详情查询接口 +- [ ] 审批通过接口(三级审批:受理、审核、审批) +- [ ] 审批拒绝接口 + +### 4. 撤销吊销记录相关接口 +- [ ] 撤销吊销记录列表查询接口 +- [ ] 撤销吊销记录详情接口 diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/controller/CancelRevokeController.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/controller/CancelRevokeController.java new file mode 100644 index 0000000..da0e25e --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/controller/CancelRevokeController.java @@ -0,0 +1,99 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.controller; + +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevoke; +import com.chinaweal.aiccs.aiccs.force.cancel.entity.vo.CancelRevokeVO; +import com.chinaweal.aiccs.aiccs.force.cancel.service.ICancelRevokeService; +import com.chinaweal.aiccs.common.base.controller.BaseController; +import com.chinaweal.youfool.framework.springboot.rest.RestResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + +/** + * 撤销吊销Controller + */ +@RestController +@RequestMapping("/api/cancelRevoke") +public class CancelRevokeController extends BaseController { + + @Autowired + private ICancelRevokeService cancelRevokeService; + + /** + * 查询吊销主体列表(个案办理选择) + * GET /api/cancelRevoke/revokedList + */ + @GetMapping("/revokedList") + public RestResult> getRevokedList(@RequestParam Map params) { + Map result = cancelRevokeService.queryRevokedEntList(params); + return RestResult.ok(result); + } + + /** + * 发起撤销吊销业务 + * POST /api/cancelRevoke + */ + @PostMapping + public RestResult createCancelRevoke(@RequestBody CancelRevoke cancelRevoke) { + String bizId = cancelRevokeService.createCancelRevoke(cancelRevoke); + return RestResult.ok(bizId); + } + + /** + * 查询撤销吊销业务详情 + * GET /api/cancelRevoke/{bizId} + */ + @GetMapping("/{bizId}") + public RestResult getCancelRevokeById(@PathVariable String bizId) { + CancelRevokeVO vo = cancelRevokeService.getCancelRevokeById(bizId); + return RestResult.ok(vo); + } + + /** + * 分页查询撤销吊销业务列表(撤销吊销记录) + * GET /api/cancelRevoke/records + */ + @GetMapping("/records") + public RestResult> getCancelRevokeRecords(@RequestParam Map params) { + Map result = cancelRevokeService.queryCancelRevokeRecords(params); + return RestResult.ok(result); + } + + /** + * 分页查询待审批列表 + * GET /api/cancelRevoke/approveList + */ + @GetMapping("/approveList") + public RestResult> getApproveList(@RequestParam Map params) { + Map result = cancelRevokeService.queryApproveList(params); + return RestResult.ok(result); + } + + /** + * 审批操作 + * POST /api/cancelRevoke/approve + */ + @PostMapping("/approve") + public RestResult approve(@RequestBody Map params) { + String bizId = (String) params.get("bizId"); + String node = (String) params.get("node"); + String approveStatus = (String) params.get("approveStatus"); + String approverId = (String) params.get("approverId"); + String approverName = (String) params.get("approverName"); + String approveOpinion = (String) params.get("approveOpinion"); + + boolean result = cancelRevokeService.approve(bizId, node, approveStatus, approverId, approverName, approveOpinion); + return RestResult.ok(result); + } + + /** + * 撤销吊销待办列表(我的待办) + * GET /api/cancelRevoke/todoList + */ + @GetMapping("/todoList") + public RestResult> getTodoList(@RequestParam Map params) { + Map result = cancelRevokeService.queryApproveList(params); + return RestResult.ok(result); + } +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevoke.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevoke.java new file mode 100644 index 0000000..7288196 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevoke.java @@ -0,0 +1,245 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 撤销吊销业务实体类 + */ +public class CancelRevoke implements Serializable { + + private static final long serialVersionUID = 1L; + + /** 业务ID */ + private String bizId; + + /** 业务编号 */ + private String bizSeq; + + /** 主体身份代码 */ + private String pripid; + + /** 统一社会信用代码 */ + private String uniscid; + + /** 注册号 */ + private String regno; + + /** 企业名称 */ + private String entname; + + /** 吊销原因 */ + private String revokeReason; + + /** 吊销日期 */ + private Date revokeDate; + + /** 撤销吊销日期 */ + private String cancelRevokeDate; + + /** 撤销吊销原因 */ + private String cancelRevokeReason; + + /** 批准文号 */ + private String approvalDocNo; + + /** 批准部门 */ + private String approvalDept; + + /** 批准部门ID */ + private String approvalDeptId; + + /** 状态:1-待受理,2-受理中,3-审核中,4-审批中,5-已通过,6-已拒绝 */ + private String status; + + /** 当前节点:1-受理,2-审核,3-审批 */ + private String currentNode; + + /** 备注 */ + private String remarks; + + /** 经办人ID */ + private String handlerId; + + /** 经办人姓名 */ + private String handlerName; + + /** 经办时间 */ + private Date handlerDate; + + /** 创建时间 */ + private Date createTime; + + /** 更新时间 */ + private Date updateTime; + + // Getters and Setters + + public String getBizId() { + return bizId; + } + + public void setBizId(String bizId) { + this.bizId = bizId; + } + + public String getBizSeq() { + return bizSeq; + } + + public void setBizSeq(String bizSeq) { + this.bizSeq = bizSeq; + } + + public String getPripid() { + return pripid; + } + + public void setPripid(String pripid) { + this.pripid = pripid; + } + + public String getUniscid() { + return uniscid; + } + + public void setUniscid(String uniscid) { + this.uniscid = uniscid; + } + + public String getRegno() { + return regno; + } + + public void setRegno(String regno) { + this.regno = regno; + } + + public String getEntname() { + return entname; + } + + public void setEntname(String entname) { + this.entname = entname; + } + + public String getRevokeReason() { + return revokeReason; + } + + public void setRevokeReason(String revokeReason) { + this.revokeReason = revokeReason; + } + + public Date getRevokeDate() { + return revokeDate; + } + + public void setRevokeDate(Date revokeDate) { + this.revokeDate = revokeDate; + } + + public String getCancelRevokeDate() { + return cancelRevokeDate; + } + + public void setCancelRevokeDate(String cancelRevokeDate) { + this.cancelRevokeDate = cancelRevokeDate; + } + + public String getCancelRevokeReason() { + return cancelRevokeReason; + } + + public void setCancelRevokeReason(String cancelRevokeReason) { + this.cancelRevokeReason = cancelRevokeReason; + } + + public String getApprovalDocNo() { + return approvalDocNo; + } + + public void setApprovalDocNo(String approvalDocNo) { + this.approvalDocNo = approvalDocNo; + } + + public String getApprovalDept() { + return approvalDept; + } + + public void setApprovalDept(String approvalDept) { + this.approvalDept = approvalDept; + } + + public String getApprovalDeptId() { + return approvalDeptId; + } + + public void setApprovalDeptId(String approvalDeptId) { + this.approvalDeptId = approvalDeptId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getCurrentNode() { + return currentNode; + } + + public void setCurrentNode(String currentNode) { + this.currentNode = currentNode; + } + + public String getRemarks() { + return remarks; + } + + public void setRemarks(String remarks) { + this.remarks = remarks; + } + + public String getHandlerId() { + return handlerId; + } + + public void setHandlerId(String handlerId) { + this.handlerId = handlerId; + } + + public String getHandlerName() { + return handlerName; + } + + public void setHandlerName(String handlerName) { + this.handlerName = handlerName; + } + + public Date getHandlerDate() { + return handlerDate; + } + + public void setHandlerDate(Date handlerDate) { + this.handlerDate = handlerDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevokeApprove.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevokeApprove.java new file mode 100644 index 0000000..c8236da --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/CancelRevokeApprove.java @@ -0,0 +1,113 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 撤销吊销审批记录实体类 + */ +public class CancelRevokeApprove implements Serializable { + + private static final long serialVersionUID = 1L; + + /** 审批ID */ + private String approveId; + + /** 业务ID */ + private String bizId; + + /** 节点:1-受理,2-审核,3-审批 */ + private String node; + + /** 审批人ID */ + private String approverId; + + /** 审批人姓名 */ + private String approverName; + + /** 审批状态:1-通过,2-拒绝 */ + private String approveStatus; + + /** 审批意见 */ + private String approveOpinion; + + /** 审批时间 */ + private Date approveTime; + + /** 创建时间 */ + private Date createTime; + + // Getters and Setters + + public String getApproveId() { + return approveId; + } + + public void setApproveId(String approveId) { + this.approveId = approveId; + } + + public String getBizId() { + return bizId; + } + + public void setBizId(String bizId) { + this.bizId = bizId; + } + + public String getNode() { + return node; + } + + public void setNode(String node) { + this.node = node; + } + + public String getApproverId() { + return approverId; + } + + public void setApproverId(String approverId) { + this.approverId = approverId; + } + + public String getApproverName() { + return approverName; + } + + public void setApproverName(String approverName) { + this.approverName = approverName; + } + + public String getApproveStatus() { + return approveStatus; + } + + public void setApproveStatus(String approveStatus) { + this.approveStatus = approveStatus; + } + + public String getApproveOpinion() { + return approveOpinion; + } + + public void setApproveOpinion(String approveOpinion) { + this.approveOpinion = approveOpinion; + } + + public Date getApproveTime() { + return approveTime; + } + + public void setApproveTime(Date approveTime) { + this.approveTime = approveTime; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/vo/CancelRevokeVO.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/vo/CancelRevokeVO.java new file mode 100644 index 0000000..44e3535 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/entity/vo/CancelRevokeVO.java @@ -0,0 +1,28 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.entity.vo; + +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevoke; +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevokeApprove; + +import java.io.Serializable; +import java.util.List; + +/** + * 撤销吊销业务VO + */ +public class CancelRevokeVO extends CancelRevoke implements Serializable { + + private static final long serialVersionUID = 1L; + + /** 审批记录列表 */ + private List approveList; + + // Getters and Setters + + public List getApproveList() { + return approveList; + } + + public void setApproveList(List approveList) { + this.approveList = approveList; + } +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeApproveMapper.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeApproveMapper.java new file mode 100644 index 0000000..f614ec9 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeApproveMapper.java @@ -0,0 +1,29 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.mapper; + +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevokeApprove; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 撤销吊销审批记录Mapper + */ +@Mapper +public interface CancelRevokeApproveMapper { + + /** + * 新增审批记录 + */ + int insert(CancelRevokeApprove approve); + + /** + * 根据业务ID查询审批记录列表 + */ + List selectByBizId(@Param("bizId") String bizId); + + /** + * 查询最新审批记录 + */ + CancelRevokeApprove selectLatestByBizId(@Param("bizId") String bizId); +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeMapper.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeMapper.java new file mode 100644 index 0000000..548846c --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/mapper/CancelRevokeMapper.java @@ -0,0 +1,65 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.mapper; + +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevoke; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +/** + * 撤销吊销业务Mapper + */ +@Mapper +public interface CancelRevokeMapper { + + /** + * 新增撤销吊销业务 + */ + int insert(CancelRevoke cancelRevoke); + + /** + * 更新撤销吊销业务 + */ + int update(CancelRevoke cancelRevoke); + + /** + * 根据ID查询撤销吊销业务 + */ + CancelRevoke selectById(@Param("bizId") String bizId); + + /** + * 分页查询撤销吊销业务列表 + */ + List selectList(Map params); + + /** + * 分页查询撤销吊销业务数量 + */ + int selectCount(Map params); + + /** + * 查询待审批列表 + */ + List selectApproveList(Map params); + + /** + * 查询待审批数量 + */ + int selectApproveCount(Map params); + + /** + * 查询吊销主体列表(根据吊销状态查询) + */ + List> selectRevokedEntList(Map params); + + /** + * 查询吊销主体数量 + */ + int selectRevokedEntCount(Map params); + + /** + * 更新业务状态 + */ + int updateStatus(@Param("bizId") String bizId, @Param("status") String status, @Param("currentNode") String currentNode); +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/ICancelRevokeService.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/ICancelRevokeService.java new file mode 100644 index 0000000..16d36e7 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/ICancelRevokeService.java @@ -0,0 +1,66 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.service; + +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevoke; +import com.chinaweal.aiccs.aiccs.force.cancel.entity.vo.CancelRevokeVO; + +import java.util.Map; + +/** + * 撤销吊销业务Service接口 + */ +public interface ICancelRevokeService { + + /** + * 发起撤销吊销业务 + * @param cancelRevoke 撤销吊销业务信息 + * @return 业务ID + */ + String createCancelRevoke(CancelRevoke cancelRevoke); + + /** + * 查询撤销吊销业务详情 + * @param bizId 业务ID + * @return 业务详情 + */ + CancelRevokeVO getCancelRevokeById(String bizId); + + /** + * 分页查询撤销吊销业务列表 + * @param params 查询参数 + * @return 业务列表 + */ + Map queryCancelRevokeList(Map params); + + /** + * 分页查询待审批列表 + * @param params 查询参数 + * @return 待审批列表 + */ + Map queryApproveList(Map params); + + /** + * 审批操作 + * @param bizId 业务ID + * @param node 当前节点 + * @param approveStatus 审批状态:1-通过,2-拒绝 + * @param approverId 审批人ID + * @param approverName 审批人姓名 + * @param approveOpinion 审批意见 + * @return 结果 + */ + boolean approve(String bizId, String node, String approveStatus, String approverId, String approverName, String approveOpinion); + + /** + * 分页查询撤销吊销记录(已完成的) + * @param params 查询参数 + * @return 记录列表 + */ + Map queryCancelRevokeRecords(Map params); + + /** + * 查询吊销主体列表 + * @param params 查询参数 + * @return 吊销主体列表 + */ + Map queryRevokedEntList(Map params); +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/impl/CancelRevokeServiceImpl.java b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/impl/CancelRevokeServiceImpl.java new file mode 100644 index 0000000..3c892f2 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/force/cancel/service/impl/CancelRevokeServiceImpl.java @@ -0,0 +1,229 @@ +package com.chinaweal.aiccs.aiccs.force.cancel.service.impl; + +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevoke; +import com.chinaweal.aiccs.aiccs.force.cancel.entity.CancelRevokeApprove; +import com.chinaweal.aiccs.aiccs.force.cancel.entity.vo.CancelRevokeVO; +import com.chinaweal.aiccs.aiccs.force.cancel.mapper.CancelRevokeApproveMapper; +import com.chinaweal.aiccs.aiccs.force.cancel.mapper.CancelRevokeMapper; +import com.chinaweal.aiccs.aiccs.force.cancel.service.ICancelRevokeService; +import com.chinaweal.aiccs.aiccs.force.entity.XrForceDeregister; +import com.chinaweal.aiccs.aiccs.force.mapper.XrForceDeregisterMapper; +import com.chinaweal.aiccs.common.util.StringUtils; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 撤销吊销业务Service实现类 + */ +@Service +public class CancelRevokeServiceImpl implements ICancelRevokeService { + + @Autowired + private CancelRevokeMapper cancelRevokeMapper; + + @Autowired + private CancelRevokeApproveMapper cancelRevokeApproveMapper; + + @Autowired + private XrForceDeregisterMapper xrForceDeregisterMapper; + + @Override + @Transactional(rollbackFor = Exception.class) + public String createCancelRevoke(CancelRevoke cancelRevoke) { + // 生成业务ID + String bizId = StringUtils.getUUID(); + // 生成业务编号(格式:CXQX-年月日-序号) + String bizSeq = "CXQX-" + new Date().getTime(); + + cancelRevoke.setBizId(bizId); + cancelRevoke.setBizSeq(bizSeq); + cancelRevoke.setStatus("1"); // 待受理 + cancelRevoke.setCurrentNode("1"); // 受理节点 + cancelRevoke.setCreateTime(new Date()); + + cancelRevokeMapper.insert(cancelRevoke); + + return bizId; + } + + @Override + public CancelRevokeVO getCancelRevokeById(String bizId) { + CancelRevoke cancelRevoke = cancelRevokeMapper.selectById(bizId); + if (cancelRevoke == null) { + return null; + } + + CancelRevokeVO vo = new CancelRevokeVO(); + // 复制属性 + vo.setBizId(cancelRevoke.getBizId()); + vo.setBizSeq(cancelRevoke.getBizSeq()); + vo.setPripid(cancelRevoke.getPripid()); + vo.setUniscid(cancelRevoke.getUniscid()); + vo.setRegno(cancelRevoke.getRegno()); + vo.setEntname(cancelRevoke.getEntname()); + vo.setRevokeReason(cancelRevoke.getRevokeReason()); + vo.setRevokeDate(cancelRevoke.getRevokeDate()); + vo.setCancelRevokeDate(cancelRevoke.getCancelRevokeDate()); + vo.setCancelRevokeReason(cancelRevoke.getCancelRevokeReason()); + vo.setApprovalDocNo(cancelRevoke.getApprovalDocNo()); + vo.setApprovalDept(cancelRevoke.getApprovalDept()); + vo.setApprovalDeptId(cancelRevoke.getApprovalDeptId()); + vo.setStatus(cancelRevoke.getStatus()); + vo.setCurrentNode(cancelRevoke.getCurrentNode()); + vo.setRemarks(cancelRevoke.getRemarks()); + vo.setHandlerId(cancelRevoke.getHandlerId()); + vo.setHandlerName(cancelRevoke.getHandlerName()); + vo.setHandlerDate(cancelRevoke.getHandlerDate()); + vo.setCreateTime(cancelRevoke.getCreateTime()); + vo.setUpdateTime(cancelRevoke.getUpdateTime()); + + // 查询审批记录 + List approveList = cancelRevokeApproveMapper.selectByBizId(bizId); + vo.setApproveList(approveList); + + return vo; + } + + @Override + public Map queryCancelRevokeList(Map params) { + int pageNum = params.get("pageNum") != null ? Integer.parseInt(params.get("pageNum").toString()) : 1; + int pageSize = params.get("pageSize") != null ? Integer.parseInt(params.get("pageSize").toString()) : 10; + + PageHelper.startPage(pageNum, pageSize); + List list = cancelRevokeMapper.selectList(params); + PageInfo pageInfo = new PageInfo<>(list); + + Map result = new HashMap<>(); + result.put("list", pageInfo.getList()); + result.put("total", pageInfo.getTotal()); + result.put("pageNum", pageNum); + result.put("pageSize", pageSize); + + return result; + } + + @Override + public Map queryApproveList(Map params) { + int pageNum = params.get("pageNum") != null ? Integer.parseInt(params.get("pageNum").toString()) : 1; + int pageSize = params.get("pageSize") != null ? Integer.parseInt(params.get("pageSize").toString()) : 10; + + PageHelper.startPage(pageNum, pageSize); + List list = cancelRevokeMapper.selectApproveList(params); + PageInfo pageInfo = new PageInfo<>(list); + + Map result = new HashMap<>(); + result.put("list", pageInfo.getList()); + result.put("total", pageInfo.getTotal()); + result.put("pageNum", pageNum); + result.put("pageSize", pageSize); + + return result; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean approve(String bizId, String node, String approveStatus, String approverId, String approverName, String approveOpinion) { + CancelRevoke cancelRevoke = cancelRevokeMapper.selectById(bizId); + if (cancelRevoke == null) { + throw new RuntimeException("业务不存在"); + } + + // 验证节点是否正确 + if (!cancelRevoke.getCurrentNode().equals(node)) { + throw new RuntimeException("当前节点不正确,无法审批"); + } + + // 创建审批记录 + CancelRevokeApprove approve = new CancelRevokeApprove(); + approve.setApproveId(StringUtils.getUUID()); + approve.setBizId(bizId); + approve.setNode(node); + approve.setApproverId(approverId); + approve.setApproverName(approverName); + approve.setApproveStatus(approveStatus); + approve.setApproveOpinion(approveOpinion); + approve.setApproveTime(new Date()); + approve.setCreateTime(new Date()); + + cancelRevokeApproveMapper.insert(approve); + + if ("1".equals(approveStatus)) { + // 通过 + if ("1".equals(node)) { + // 受理节点通过,进入审核 + cancelRevokeMapper.updateStatus(bizId, "3", "2"); + } else if ("2".equals(node)) { + // 审核节点通过,进入审批 + cancelRevokeMapper.updateStatus(bizId, "4", "3"); + } else if ("3".equals(node)) { + // 审批节点通过,完成 + cancelRevokeMapper.updateStatus(bizId, "5", "3"); + + // TODO: 审批通过后,调用接口将主体信息推送到CANCELREVOKELIST表,并修改主体状态为开业 + handleAfterApproved(cancelRevoke); + } + } else { + // 拒绝 + cancelRevokeMapper.updateStatus(bizId, "6", node); + } + + return true; + } + + /** + * 审批通过后的处理 + */ + private void handleAfterApproved(CancelRevoke cancelRevoke) { + // TODO: 实现审批通过后的业务逻辑 + // 1. 将主体信息推送到 CANCELREVOKELIST 表 + // 2. 更新 REVOKELIST 表中的状态 + // 3. 调用接口修改主体状态为开业 + } + + @Override + public Map queryCancelRevokeRecords(Map params) { + // 查询已完成的(状态为5-已通过)或已拒绝的(状态为6-已拒绝) + params.put("statusIn", "5,6"); + + int pageNum = params.get("pageNum") != null ? Integer.parseInt(params.get("pageNum").toString()) : 1; + int pageSize = params.get("pageSize") != null ? Integer.parseInt(params.get("pageSize").toString()) : 10; + + PageHelper.startPage(pageNum, pageSize); + List list = cancelRevokeMapper.selectList(params); + PageInfo pageInfo = new PageInfo<>(list); + + Map result = new HashMap<>(); + result.put("list", pageInfo.getList()); + result.put("total", pageInfo.getTotal()); + result.put("pageNum", pageNum); + result.put("pageSize", pageSize); + + return result; + } + + @Override + public Map queryRevokedEntList(Map params) { + int pageNum = params.get("pageNum") != null ? Integer.parseInt(params.get("pageNum").toString()) : 1; + int pageSize = params.get("pageSize") != null ? Integer.parseInt(params.get("pageSize").toString()) : 10; + + PageHelper.startPage(pageNum, pageSize); + List> list = cancelRevokeMapper.selectRevokedEntList(params); + PageInfo> pageInfo = new PageInfo<>(list); + + Map result = new HashMap<>(); + result.put("list", pageInfo.getList()); + result.put("total", pageInfo.getTotal()); + result.put("pageNum", pageNum); + result.put("pageSize", pageSize); + + return result; + } +} diff --git a/src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeApproveMapper.xml b/src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeApproveMapper.xml new file mode 100644 index 0000000..c48c978 --- /dev/null +++ b/src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeApproveMapper.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + APPROVE_ID, BIZ_ID, NODE, APPROVER_ID, APPROVER_NAME, APPROVE_STATUS, APPROVE_OPINION, APPROVE_TIME, CREATE_TIME + + + + + INSERT INTO AICCS.TS_CANCEL_REVOKE_APPROVE ( + APPROVE_ID, BIZ_ID, NODE, APPROVER_ID, APPROVER_NAME, APPROVE_STATUS, APPROVE_OPINION, APPROVE_TIME, CREATE_TIME + ) VALUES ( + #{approveId}, #{bizId}, #{node}, #{approverId}, #{approverName}, #{approveStatus}, #{approveOpinion}, #{approveTime}, #{createTime} + ) + + + + + + + + + diff --git a/src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeMapper.xml b/src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeMapper.xml new file mode 100644 index 0000000..6260e61 --- /dev/null +++ b/src/main/resources/mybatis/mapper/aiccs/force/CancelRevokeMapper.xml @@ -0,0 +1,215 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + BIZ_ID, BIZ_SEQ, PRIPID, UNISCID, REGNO, ENTNAME, REVOKE_REASON, REVOKE_DATE, + CANCEL_REVOKE_DATE, CANCEL_REVOKE_REASON, APPROVAL_DOC_NO, APPROVAL_DEPT, APPROVAL_DEPT_ID, + STATUS, CURRENT_NODE, REMARKS, HANDLER_ID, HANDLER_NAME, HANDLER_DATE, CREATE_TIME, UPDATE_TIME + + + + + INSERT INTO AICCS.TS_BIZ_CANCEL_REVOKE ( + BIZ_ID, BIZ_SEQ, PRIPID, UNISCID, REGNO, ENTNAME, REVOKE_REASON, REVOKE_DATE, + CANCEL_REVOKE_DATE, CANCEL_REVOKE_REASON, APPROVAL_DOC_NO, APPROVAL_DEPT, APPROVAL_DEPT_ID, + STATUS, CURRENT_NODE, REMARKS, HANDLER_ID, HANDLER_NAME, HANDLER_DATE, CREATE_TIME, UPDATE_TIME + ) VALUES ( + #{bizId}, #{bizSeq}, #{pripid}, #{uniscid}, #{regno}, #{entname}, #{revokeReason}, #{revokeDate}, + #{cancelRevokeDate}, #{cancelRevokeReason}, #{approvalDocNo}, #{approvalDept}, #{approvalDeptId}, + #{status}, #{currentNode}, #{remarks}, #{handlerId}, #{handlerName}, #{handlerDate}, #{createTime}, #{updateTime} + ) + + + + + UPDATE AICCS.TS_BIZ_CANCEL_REVOKE + + BIZ_SEQ = #{bizSeq}, + PRIPID = #{pripid}, + UNISCID = #{uniscid}, + REGNO = #{regno}, + ENTNAME = #{entname}, + REVOKE_REASON = #{revokeReason}, + REVOKE_DATE = #{revokeDate}, + CANCEL_REVOKE_DATE = #{cancelRevokeDate}, + CANCEL_REVOKE_REASON = #{cancelRevokeReason}, + APPROVAL_DOC_NO = #{approvalDocNo}, + APPROVAL_DEPT = #{approvalDept}, + APPROVAL_DEPT_ID = #{approvalDeptId}, + STATUS = #{status}, + CURRENT_NODE = #{currentNode}, + REMARKS = #{remarks}, + HANDLER_ID = #{handlerId}, + HANDLER_NAME = #{handlerName}, + HANDLER_DATE = #{handlerDate}, + UPDATE_TIME = CURRENT_TIMESTAMP + + WHERE BIZ_ID = #{bizId} + + + + + + + + + + + + + + + + + + + + + + + + + + UPDATE AICCS.TS_BIZ_CANCEL_REVOKE + SET STATUS = #{status}, + CURRENT_NODE = #{currentNode}, + UPDATE_TIME = CURRENT_TIMESTAMP + WHERE BIZ_ID = #{bizId} + + +