This commit is contained in:
zlwu committed 2026-05-28 14:19:18 +08:00
1 parent 3c7a47981a
commit 5e91791ebf
45 files changed
+4134 -9984

No files matched your search

+114
View File
@@ -0,0 +1,114 @@
-- =============================================================================
-- 细胞存储 / 科研捐赠 / 中试服务 / 临床应用 — 业务数据清空
-- 用途:测试环境重置四条主业务流,便于从协议/申请单重新走全流程
-- 依据:docs/sql/zkxw.sql 当前模型(无数据库外键,按逻辑依赖子表优先)
--
-- ⚠️ 警告:不可在生产库执行!建议先备份。
-- 建议执行顺序:先 dev-reset-production-qc.sql,再本脚本
--
-- 保留不动(主数据/配置):
-- 客户、渠道、采集区域/医院、细胞产品类型/规格、工艺路线、
-- 质检项目/物料主数据、存储设施树、样本/协议号池记录本身、
-- 样本接收检查项配置(biz_sample_reception_check_item) 等
-- =============================================================================
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
START TRANSACTION;
-- ---------------------------------------------------------------------------
-- 1. 临床应用 — 出库放行 / 交接(依赖输注计划,子表优先)
-- ---------------------------------------------------------------------------
TRUNCATE TABLE `biz_outbound_release_qc_material`;
TRUNCATE TABLE `biz_outbound_release_paper`;
TRUNCATE TABLE `biz_outbound_release_material`;
TRUNCATE TABLE `biz_outbound_release_cell`;
TRUNCATE TABLE `biz_outbound_release_review`;
TRUNCATE TABLE `biz_outbound_handover`;
TRUNCATE TABLE `biz_storage_release_review`;
-- ---------------------------------------------------------------------------
-- 2. 中试服务 + 临床应用 — 申请单及下游(共用 biz_pilot_* 表,按 biz_type 区分)
-- ---------------------------------------------------------------------------
TRUNCATE TABLE `biz_pilot_infusion_schedule_product`;
TRUNCATE TABLE `biz_pilot_infusion_confirm`;
TRUNCATE TABLE `biz_pilot_delivery_material`;
TRUNCATE TABLE `biz_pilot_delivery`;
TRUNCATE TABLE `biz_pilot_payment`;
TRUNCATE TABLE `biz_pilot_infusion_schedule`;
TRUNCATE TABLE `biz_pilot_infusion_plan`;
TRUNCATE TABLE `biz_pilot_checkup_actual_item`;
TRUNCATE TABLE `biz_pilot_checkup_reserve_item`;
TRUNCATE TABLE `biz_pilot_checkup`;
TRUNCATE TABLE `biz_pilot_delivery_method`;
TRUNCATE TABLE `biz_pilot_patient`;
TRUNCATE TABLE `biz_pilot_application`;
-- ---------------------------------------------------------------------------
-- 3. 样本接收(细胞存储 / 科研捐赠共用)
-- ---------------------------------------------------------------------------
TRUNCATE TABLE `biz_sample_reception_check_result`;
TRUNCATE TABLE `biz_sample_reception`;
TRUNCATE TABLE `biz_sample_sms_notification`;
TRUNCATE TABLE `biz_storage_entry_sms_notification`;
-- ---------------------------------------------------------------------------
-- 4. 科研捐赠
-- ---------------------------------------------------------------------------
TRUNCATE TABLE `biz_research_donation_sample_transport`;
TRUNCATE TABLE `biz_research_donation_sample`;
TRUNCATE TABLE `biz_research_donation_party`;
TRUNCATE TABLE `biz_research_donation_collection`;
TRUNCATE TABLE `biz_research_donation_audit`;
TRUNCATE TABLE `biz_research_donation`;
-- ---------------------------------------------------------------------------
-- 5. 细胞存储 — 采集协议单及子表
-- ---------------------------------------------------------------------------
TRUNCATE TABLE `biz_protocol_operation_log`;
TRUNCATE TABLE `biz_protocol_sample_transport`;
TRUNCATE TABLE `biz_protocol_storage_cert`;
TRUNCATE TABLE `biz_protocol_payment_detail`;
TRUNCATE TABLE `biz_protocol_payment`;
TRUNCATE TABLE `biz_protocol_fullmoon_todo`;
TRUNCATE TABLE `biz_protocol_donation_convert`;
TRUNCATE TABLE `biz_protocol_sample`;
TRUNCATE TABLE `biz_protocol_party_customer`;
TRUNCATE TABLE `biz_protocol_collection_info`;
TRUNCATE TABLE `biz_protocol_audit`;
TRUNCATE TABLE `biz_collection_protocol`;
-- ---------------------------------------------------------------------------
-- 6. 库位占用(保留存储设施主数据 biz_storage_facility / _slot)
-- ---------------------------------------------------------------------------
TRUNCATE TABLE `biz_storage_slot_occupancy`;
-- ---------------------------------------------------------------------------
-- 7. 编号池 / 日序号复位(便于重新从 1 号开始测)
-- ---------------------------------------------------------------------------
UPDATE `biz_collection_protocol_no`
SET `issued` = 0,
`issued_user_id` = NULL,
`issued_user_name` = NULL,
`issued_time` = NULL;
UPDATE `biz_sample_code`
SET `issued` = 0,
`issued_user_id` = NULL,
`issued_user_name` = NULL,
`issued_time` = NULL;
DELETE FROM `biz_biz_no_sequence`
WHERE `prefix` IN ('XBCC', 'JZCC');
COMMIT;
SET FOREIGN_KEY_CHECKS = 1;
-- 验证(可选)
-- SELECT 'collection_protocol' AS tbl, COUNT(*) AS cnt FROM biz_collection_protocol
-- UNION ALL SELECT 'research_donation', COUNT(*) FROM biz_research_donation
-- UNION ALL SELECT 'pilot_application', COUNT(*) FROM biz_pilot_application
-- UNION ALL SELECT 'sample_reception', COUNT(*) FROM biz_sample_reception
-- UNION ALL SELECT 'storage_slot_occupancy', COUNT(*) FROM biz_storage_slot_occupancy;