From 038cd34ebd8148a980e1eb42e2f2d8afe17c5329 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期一, 12 十月 2026 17:33:28 +0800
Subject: [PATCH] 【丽水】新增专科档案生成配置表及CRUD代码

---
 smartor/src/main/java/com/smartor/service/impl/PatSpecificArchiveGenerateConfigServiceImpl.java            |   61 +++++++
 smartor/src/main/java/com/smartor/service/IPatSpecificArchiveGenerateConfigService.java                    |   26 +++
 smartor/src/main/java/com/smartor/mapper/PatSpecificArchiveGenerateConfigMapper.java                       |   28 +++
 smartor/src/main/resources/mapper/smartor/PatSpecificArchiveGenerateConfigMapper.xml                       |  134 ++++++++++++++++
 sql/pat_specific_archive_generate_config_20261012.sql                                                      |   28 +++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpecificArchiveGenerateConfigController.java |   89 +++++++++++
 smartor/src/main/java/com/smartor/domain/PatSpecificArchiveGenerateConfig.java                             |   60 +++++++
 7 files changed, 426 insertions(+), 0 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpecificArchiveGenerateConfigController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpecificArchiveGenerateConfigController.java
new file mode 100644
index 0000000..ae9d4e2
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpecificArchiveGenerateConfigController.java
@@ -0,0 +1,89 @@
+package com.ruoyi.web.controller.smartor;
+
+import com.ruoyi.common.annotation.AddOrgId;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.smartor.domain.PatSpecificArchiveGenerateConfig;
+import com.smartor.service.IPatSpecificArchiveGenerateConfigService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 涓撶妗f鐢熸垚閰嶇疆Controller
+ *
+ * @author ruoyi
+ * @date 2026-10-12
+ */
+@Api(description = "涓撶妗f鐢熸垚閰嶇疆")
+@RestController
+@RequestMapping("/smartor/specificArchiveGenerateConfig")
+public class PatSpecificArchiveGenerateConfigController extends BaseController {
+    @Autowired
+    private IPatSpecificArchiveGenerateConfigService patSpecificArchiveGenerateConfigService;
+
+    @ApiOperation("鏌ヨ涓撶妗f鐢熸垚閰嶇疆鍒楄〃")
+    //@PreAuthorize("@ss.hasPermi('system:specificArchiveGenerateConfig:list')")
+    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
+    @PostMapping("/selectPatSpecificArchiveGenerateConfigList")
+    public TableDataInfo selectPatSpecificArchiveGenerateConfigList(@RequestBody PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig) {
+        PageUtils.startPageByPost(patSpecificArchiveGenerateConfig.getPageNum(), patSpecificArchiveGenerateConfig.getPageSize());
+        List<PatSpecificArchiveGenerateConfig> list = patSpecificArchiveGenerateConfigService.selectPatSpecificArchiveGenerateConfigList(patSpecificArchiveGenerateConfig);
+        return getDataTable(list);
+    }
+
+    @ApiOperation("瀵煎嚭涓撶妗f鐢熸垚閰嶇疆鍒楄〃")
+    //@PreAuthorize("@ss.hasPermi('system:specificArchiveGenerateConfig:export')")
+    @Log(title = "涓撶妗f鐢熸垚閰嶇疆", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig) {
+        List<PatSpecificArchiveGenerateConfig> list = patSpecificArchiveGenerateConfigService.selectPatSpecificArchiveGenerateConfigList(patSpecificArchiveGenerateConfig);
+        ExcelUtil<PatSpecificArchiveGenerateConfig> util = new ExcelUtil<PatSpecificArchiveGenerateConfig>(PatSpecificArchiveGenerateConfig.class);
+        util.exportExcel(response, list, "涓撶妗f鐢熸垚閰嶇疆鏁版嵁");
+    }
+
+    @ApiOperation("鑾峰彇涓撶妗f鐢熸垚閰嶇疆璇︾粏淇℃伅")
+    //@PreAuthorize("@ss.hasPermi('system:specificArchiveGenerateConfig:query')")
+    @GetMapping(value = "/getInfo/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(patSpecificArchiveGenerateConfigService.selectPatSpecificArchiveGenerateConfigById(id));
+    }
+
+    @ApiOperation("鏂板涓撶妗f鐢熸垚閰嶇疆")
+    //@PreAuthorize("@ss.hasPermi('system:specificArchiveGenerateConfig:add')")
+    @Log(title = "涓撶妗f鐢熸垚閰嶇疆", businessType = BusinessType.INSERT)
+    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig) {
+        SysUser user = getLoginUser().getUser();
+        patSpecificArchiveGenerateConfig.setOrgid(user.getOrgid());
+        return toAjax(patSpecificArchiveGenerateConfigService.insertPatSpecificArchiveGenerateConfig(patSpecificArchiveGenerateConfig));
+    }
+
+    @ApiOperation("淇敼涓撶妗f鐢熸垚閰嶇疆")
+    //@PreAuthorize("@ss.hasPermi('system:specificArchiveGenerateConfig:edit')")
+    @Log(title = "涓撶妗f鐢熸垚閰嶇疆", businessType = BusinessType.UPDATE)
+    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
+    @PostMapping("/edit")
+    public AjaxResult edit(@RequestBody PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig) {
+        return toAjax(patSpecificArchiveGenerateConfigService.updatePatSpecificArchiveGenerateConfig(patSpecificArchiveGenerateConfig));
+    }
+
+    @ApiOperation("鍒犻櫎涓撶妗f鐢熸垚閰嶇疆")
+    //@PreAuthorize("@ss.hasPermi('system:specificArchiveGenerateConfig:remove')")
+    @Log(title = "涓撶妗f鐢熸垚閰嶇疆", businessType = BusinessType.DELETE)
+    @GetMapping("/remove/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(patSpecificArchiveGenerateConfigService.deletePatSpecificArchiveGenerateConfigByIds(ids));
+    }
+}
diff --git a/smartor/src/main/java/com/smartor/domain/PatSpecificArchiveGenerateConfig.java b/smartor/src/main/java/com/smartor/domain/PatSpecificArchiveGenerateConfig.java
new file mode 100644
index 0000000..e1f9330
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/PatSpecificArchiveGenerateConfig.java
@@ -0,0 +1,60 @@
+package com.smartor.domain;
+
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 涓撶妗f鐢熸垚閰嶇疆瀵硅薄 pat_specific_archive_generate_config
+ *
+ * @author ruoyi
+ * @date 2026-10-12
+ */
+@Data
+@ApiModel(value = "涓撶妗f鐢熸垚閰嶇疆瀵硅薄")
+public class PatSpecificArchiveGenerateConfig extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /** 閰嶇疆琛ㄤ富閿甀D */
+    @ApiModelProperty(value = "閰嶇疆琛ㄤ富閿甀D")
+    private Long id;
+
+    /** 閮ㄩ棬绫诲瀷锛�1绉戝锛�2鐥呭尯 */
+    @Excel(name = "閮ㄩ棬绫诲瀷")
+    @ApiModelProperty(value = "閮ㄩ棬绫诲瀷锛�1绉戝锛�2鐥呭尯")
+    private String deptType;
+
+    /** 閮ㄩ棬鍒嗙被: 1濡囩 2鍎跨 */
+    @Excel(name = "閮ㄩ棬鍒嗙被")
+    @ApiModelProperty(value = "閮ㄩ棬鍒嗙被: 1濡囩 2鍎跨")
+    private String deptCategory;
+
+    /** 妗f绫诲瀷: 濡囩妗f绫诲瀷(1 鏃╁瓡鍏崇埍2 鍥寸粷缁忔湡MHI),鍎跨妗f绫诲瀷(1钀ュ吇鎬х柧鐥� 2瀛︿範鍥伴毦 3楂樺嵄鍎夸笓妗�) */
+    @Excel(name = "妗f绫诲瀷")
+    @ApiModelProperty(value = "妗f绫诲瀷: 濡囩妗f绫诲瀷(1 鏃╁瓡鍏崇埍2 鍥寸粷缁忔湡MHI),鍎跨妗f绫诲瀷(1钀ュ吇鎬х柧鐥� 2瀛︿範鍥伴毦 3楂樺嵄鍎夸笓妗�)")
+    private String archiveType;
+
+    /** 绉戝Code闆嗗悎(JSON鏍煎紡锛屽 ["D001","D002"]) */
+    @ApiModelProperty(value = "绉戝Code闆嗗悎(JSON鏍煎紡锛屽 [\"D001\",\"D002\"])")
+    private String deptCodes;
+
+    /** 璇婃柇code闆嗗悎(JSON鏍煎紡锛屽 ["E10.901","E11.901"]) */
+    @ApiModelProperty(value = "璇婃柇code闆嗗悎(JSON鏍煎紡锛屽 [\"E10.901\",\"E11.901\"])")
+    private String icd10Codes;
+
+    /** 鍖婚櫌鏈烘瀯ID */
+    @Excel(name = "鍖婚櫌鏈烘瀯ID")
+    @ApiModelProperty(value = "鍖婚櫌鏈烘瀯ID")
+    private String orgid;
+
+    /** 闄㈠尯ID */
+    @Excel(name = "闄㈠尯ID")
+    @ApiModelProperty(value = "闄㈠尯ID")
+    private String campusid;
+
+    /** 鍒犻櫎鏍囧織锛�0锛氭湭鍒犻櫎锛�1锛氬凡鍒犻櫎锛� */
+    @ApiModelProperty(value = "鍒犻櫎鏍囧織锛�0锛氭湭鍒犻櫎锛�1锛氬凡鍒犻櫎锛�")
+    private String delFlag;
+}
diff --git a/smartor/src/main/java/com/smartor/mapper/PatSpecificArchiveGenerateConfigMapper.java b/smartor/src/main/java/com/smartor/mapper/PatSpecificArchiveGenerateConfigMapper.java
new file mode 100644
index 0000000..a83fe67
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/mapper/PatSpecificArchiveGenerateConfigMapper.java
@@ -0,0 +1,28 @@
+package com.smartor.mapper;
+
+import com.smartor.domain.PatSpecificArchiveGenerateConfig;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 涓撶妗f鐢熸垚閰嶇疆Mapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2026-10-12
+ */
+@Mapper
+public interface PatSpecificArchiveGenerateConfigMapper
+{
+    public PatSpecificArchiveGenerateConfig selectPatSpecificArchiveGenerateConfigById(Long id);
+
+    public List<PatSpecificArchiveGenerateConfig> selectPatSpecificArchiveGenerateConfigList(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig);
+
+    public int insertPatSpecificArchiveGenerateConfig(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig);
+
+    public int updatePatSpecificArchiveGenerateConfig(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig);
+
+    public int deletePatSpecificArchiveGenerateConfigById(Long id);
+
+    public int deletePatSpecificArchiveGenerateConfigByIds(Long[] ids);
+}
diff --git a/smartor/src/main/java/com/smartor/service/IPatSpecificArchiveGenerateConfigService.java b/smartor/src/main/java/com/smartor/service/IPatSpecificArchiveGenerateConfigService.java
new file mode 100644
index 0000000..c0c9850
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/IPatSpecificArchiveGenerateConfigService.java
@@ -0,0 +1,26 @@
+package com.smartor.service;
+
+import com.smartor.domain.PatSpecificArchiveGenerateConfig;
+
+import java.util.List;
+
+/**
+ * 涓撶妗f鐢熸垚閰嶇疆Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2026-10-12
+ */
+public interface IPatSpecificArchiveGenerateConfigService
+{
+    public PatSpecificArchiveGenerateConfig selectPatSpecificArchiveGenerateConfigById(Long id);
+
+    public List<PatSpecificArchiveGenerateConfig> selectPatSpecificArchiveGenerateConfigList(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig);
+
+    public int insertPatSpecificArchiveGenerateConfig(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig);
+
+    public int updatePatSpecificArchiveGenerateConfig(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig);
+
+    public int deletePatSpecificArchiveGenerateConfigByIds(Long[] ids);
+
+    public int deletePatSpecificArchiveGenerateConfigById(Long id);
+}
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatSpecificArchiveGenerateConfigServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatSpecificArchiveGenerateConfigServiceImpl.java
new file mode 100644
index 0000000..2510668
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/impl/PatSpecificArchiveGenerateConfigServiceImpl.java
@@ -0,0 +1,61 @@
+package com.smartor.service.impl;
+
+import com.ruoyi.common.utils.DateUtils;
+import com.smartor.domain.PatSpecificArchiveGenerateConfig;
+import com.smartor.mapper.PatSpecificArchiveGenerateConfigMapper;
+import com.smartor.service.IPatSpecificArchiveGenerateConfigService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 涓撶妗f鐢熸垚閰嶇疆Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2026-10-12
+ */
+@Service
+public class PatSpecificArchiveGenerateConfigServiceImpl implements IPatSpecificArchiveGenerateConfigService
+{
+    @Autowired
+    private PatSpecificArchiveGenerateConfigMapper patSpecificArchiveGenerateConfigMapper;
+
+    @Override
+    public PatSpecificArchiveGenerateConfig selectPatSpecificArchiveGenerateConfigById(Long id)
+    {
+        return patSpecificArchiveGenerateConfigMapper.selectPatSpecificArchiveGenerateConfigById(id);
+    }
+
+    @Override
+    public List<PatSpecificArchiveGenerateConfig> selectPatSpecificArchiveGenerateConfigList(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig)
+    {
+        return patSpecificArchiveGenerateConfigMapper.selectPatSpecificArchiveGenerateConfigList(patSpecificArchiveGenerateConfig);
+    }
+
+    @Override
+    public int insertPatSpecificArchiveGenerateConfig(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig)
+    {
+        patSpecificArchiveGenerateConfig.setCreateTime(DateUtils.getNowDate());
+        return patSpecificArchiveGenerateConfigMapper.insertPatSpecificArchiveGenerateConfig(patSpecificArchiveGenerateConfig);
+    }
+
+    @Override
+    public int updatePatSpecificArchiveGenerateConfig(PatSpecificArchiveGenerateConfig patSpecificArchiveGenerateConfig)
+    {
+        patSpecificArchiveGenerateConfig.setUpdateTime(DateUtils.getNowDate());
+        return patSpecificArchiveGenerateConfigMapper.updatePatSpecificArchiveGenerateConfig(patSpecificArchiveGenerateConfig);
+    }
+
+    @Override
+    public int deletePatSpecificArchiveGenerateConfigByIds(Long[] ids)
+    {
+        return patSpecificArchiveGenerateConfigMapper.deletePatSpecificArchiveGenerateConfigByIds(ids);
+    }
+
+    @Override
+    public int deletePatSpecificArchiveGenerateConfigById(Long id)
+    {
+        return patSpecificArchiveGenerateConfigMapper.deletePatSpecificArchiveGenerateConfigById(id);
+    }
+}
diff --git a/smartor/src/main/resources/mapper/smartor/PatSpecificArchiveGenerateConfigMapper.xml b/smartor/src/main/resources/mapper/smartor/PatSpecificArchiveGenerateConfigMapper.xml
new file mode 100644
index 0000000..9e35f07
--- /dev/null
+++ b/smartor/src/main/resources/mapper/smartor/PatSpecificArchiveGenerateConfigMapper.xml
@@ -0,0 +1,134 @@
+<?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.smartor.mapper.PatSpecificArchiveGenerateConfigMapper">
+
+    <resultMap type="com.smartor.domain.PatSpecificArchiveGenerateConfig" id="PatSpecificArchiveGenerateConfigResult">
+        <result property="id" column="id"/>
+        <result property="deptType" column="dept_type"/>
+        <result property="deptCategory" column="dept_category"/>
+        <result property="archiveType" column="archive_type"/>
+        <result property="deptCodes" column="dept_codes"/>
+        <result property="icd10Codes" column="icd10_codes"/>
+        <result property="remark" column="remark"/>
+        <result property="orgid" column="orgid"/>
+        <result property="campusid" column="campusid"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="delFlag" column="del_flag"/>
+    </resultMap>
+
+    <sql id="selectPatSpecificArchiveGenerateConfigVo">
+        select id,
+               dept_type,
+               dept_category,
+               archive_type,
+               dept_codes,
+               icd10_codes,
+               remark,
+               orgid,
+               campusid,
+               update_by,
+               update_time,
+               create_by,
+               create_time,
+               del_flag
+        from pat_specific_archive_generate_config
+    </sql>
+
+    <select id="selectPatSpecificArchiveGenerateConfigList" parameterType="com.smartor.domain.PatSpecificArchiveGenerateConfig"
+            resultMap="PatSpecificArchiveGenerateConfigResult">
+        <include refid="selectPatSpecificArchiveGenerateConfigVo"/>
+        where 1=1
+            and del_flag = '0'
+            <if test="deptType != null and deptType != ''">and dept_type = #{deptType}</if>
+            <if test="deptCategory != null and deptCategory != ''">and dept_category = #{deptCategory}</if>
+            <if test="archiveType != null and archiveType != ''">and archive_type = #{archiveType}</if>
+            <if test="orgid != null and orgid != ''">and orgid = #{orgid}</if>
+            <if test="campusid != null and campusid != ''">and campusid = #{campusid}</if>
+            <if test="params.beginTime != null and params.beginTime != ''">
+                and date_format(create_time, '%y%m%d') &gt;= date_format(#{params.beginTime}, '%y%m%d')
+            </if>
+            <if test="params.endTime != null and params.endTime != ''">
+                and date_format(create_time, '%y%m%d') &lt;= date_format(#{params.endTime}, '%y%m%d')
+            </if>
+    </select>
+
+    <select id="selectPatSpecificArchiveGenerateConfigById" parameterType="Long" resultMap="PatSpecificArchiveGenerateConfigResult">
+        <include refid="selectPatSpecificArchiveGenerateConfigVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertPatSpecificArchiveGenerateConfig" parameterType="com.smartor.domain.PatSpecificArchiveGenerateConfig"
+            useGeneratedKeys="true" keyProperty="id">
+        insert into pat_specific_archive_generate_config
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="deptType != null">dept_type,</if>
+            <if test="deptCategory != null">dept_category,</if>
+            <if test="archiveType != null">archive_type,</if>
+            <if test="deptCodes != null">dept_codes,</if>
+            <if test="icd10Codes != null">icd10_codes,</if>
+            <if test="remark != null">remark,</if>
+            <if test="orgid != null">orgid,</if>
+            <if test="campusid != null">campusid,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="delFlag != null and delFlag != ''">del_flag,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="deptType != null">#{deptType},</if>
+            <if test="deptCategory != null">#{deptCategory},</if>
+            <if test="archiveType != null">#{archiveType},</if>
+            <if test="deptCodes != null">#{deptCodes},</if>
+            <if test="icd10Codes != null">#{icd10Codes},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="orgid != null">#{orgid},</if>
+            <if test="campusid != null">#{campusid},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="delFlag != null and delFlag != ''">#{delFlag},</if>
+        </trim>
+    </insert>
+
+    <update id="updatePatSpecificArchiveGenerateConfig" parameterType="com.smartor.domain.PatSpecificArchiveGenerateConfig">
+        update pat_specific_archive_generate_config
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="deptType != null">dept_type = #{deptType},</if>
+            <if test="deptCategory != null">dept_category = #{deptCategory},</if>
+            <if test="archiveType != null">archive_type = #{archiveType},</if>
+            <if test="deptCodes != null">dept_codes = #{deptCodes},</if>
+            <if test="icd10Codes != null">icd10_codes = #{icd10Codes},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="orgid != null">orgid = #{orgid},</if>
+            <if test="campusid != null">campusid = #{campusid},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="delFlag != null and delFlag != ''">del_flag = #{delFlag},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <update id="deletePatSpecificArchiveGenerateConfigById" parameterType="Long">
+        update pat_specific_archive_generate_config
+        <trim prefix="SET" suffixOverrides=",">
+            del_flag = '1'
+        </trim>
+        where id = #{id}
+    </update>
+
+    <update id="deletePatSpecificArchiveGenerateConfigByIds" parameterType="String">
+        update pat_specific_archive_generate_config set del_flag = '1' where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </update>
+</mapper>
diff --git a/sql/pat_specific_archive_generate_config_20261012.sql b/sql/pat_specific_archive_generate_config_20261012.sql
new file mode 100644
index 0000000..3dbee0c
--- /dev/null
+++ b/sql/pat_specific_archive_generate_config_20261012.sql
@@ -0,0 +1,28 @@
+-- =============================================================================
+-- 涓撶妗f鐢熸垚閰嶇疆琛�
+-- author : 鏅鸿兘闅忚
+-- date   : 2026-10-12
+-- 璇存槑   : 閰嶇疆鍝簺绉戝/鐥呭尯 + 璇婃柇缁勫悎鍙嚜鍔ㄧ敓鎴愬搴旂被鍨嬬殑涓撶妗f
+-- =============================================================================
+
+DROP TABLE IF EXISTS pat_specific_archive_generate_config;
+CREATE TABLE pat_specific_archive_generate_config
+(
+    id           INT(11)      NOT NULL AUTO_INCREMENT COMMENT '閰嶇疆琛ㄤ富閿甀D',
+    dept_type    CHAR(1)      NULL DEFAULT NULL COMMENT '閮ㄩ棬绫诲瀷锛�1绉戝锛�2鐥呭尯',
+    dept_category CHAR(1)     NULL DEFAULT NULL COMMENT '閮ㄩ棬鍒嗙被: 1濡囩 2鍎跨',
+    archive_type VARCHAR(255) NULL DEFAULT NULL COMMENT '妗f绫诲瀷: 濡囩妗f绫诲瀷(1 鏃╁瓡鍏崇埍2 鍥寸粷缁忔湡MHI),鍎跨妗f绫诲瀷(1钀ュ吇鎬х柧鐥� 2瀛︿範鍥伴毦 3楂樺嵄鍎夸笓妗�)',
+    dept_codes   TEXT         NULL DEFAULT NULL COMMENT '绉戝Code闆嗗悎(JSON鏍煎紡锛屽 ["D001","D002"])',
+    icd10_codes  TEXT         NULL DEFAULT NULL COMMENT '璇婃柇code闆嗗悎(JSON鏍煎紡锛屽 ["E10.901","E11.901"])',
+    remark       VARCHAR(500) NULL DEFAULT NULL COMMENT '澶囨敞',
+    orgid        VARCHAR(500) NULL DEFAULT NULL COMMENT '鍖婚櫌鏈烘瀯ID',
+    campusid     VARCHAR(255) NULL DEFAULT NULL COMMENT '闄㈠尯ID',
+    update_by    VARCHAR(32)  NULL DEFAULT NULL COMMENT '鏇存柊浜�',
+    update_time  DATETIME     NULL DEFAULT NULL COMMENT '鏇存柊鏃堕棿',
+    create_by    VARCHAR(32)  NULL DEFAULT NULL COMMENT '鍒涘缓浜�',
+    create_time  DATETIME     NULL DEFAULT NULL COMMENT '鍒涘缓鏃堕棿',
+    del_flag     CHAR(1)      NULL DEFAULT '0' COMMENT '鍒犻櫎鏍囧織锛�0锛氭湭鍒犻櫎锛�1锛氬凡鍒犻櫎锛�',
+    PRIMARY KEY (`id`) USING BTREE,
+    INDEX `idx_specific_archive_generate_config_query` (`orgid`, `dept_type`, `archive_type`) USING BTREE,
+    INDEX `idx_specific_archive_generate_config_org` (`orgid`, `del_flag`) USING BTREE
+) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 COMMENT = '涓撶妗f鐢熸垚閰嶇疆琛�';

--
Gitblit v1.9.3