This commit is contained in:
zlwu committed 2026-05-24 11:03:15 +08:00
1 parent 93f5801aa9
commit 9dd7eb56ba
28 files changed
+3310 -2858

No files matched your search

+1 -1
View File
@@ -1 +1 @@
56686 84901
+14
View File
@@ -592,20 +592,34 @@ def get_donation_detail(
transport_by_sample = {t.sample_id: _transport_to_dict(t) for t in transport_rows} transport_by_sample = {t.sample_id: _transport_to_dict(t) for t in transport_rows}
from app.crud import sample_reception as sample_reception_svc from app.crud import sample_reception as sample_reception_svc
from app.crud import qc_work_order as qc_work_order_svc from app.crud import qc_work_order as qc_work_order_svc
from app.crud import production_work_order as production_work_order_svc
from app.crud import storage_release_review as storage_release_review_svc
sample_ids = [s.id for s in s_rows] sample_ids = [s.id for s in s_rows]
sample_code_by_id = {s.id: s.sample_code or "" for s in s_rows}
reception_by_sample = sample_reception_svc.get_receptions_map_for_donation_samples( reception_by_sample = sample_reception_svc.get_receptions_map_for_donation_samples(
db, sample_ids, tenant_no db, sample_ids, tenant_no
) )
qc_by_sample = qc_work_order_svc.get_qc_info_map_for_samples( qc_by_sample = qc_work_order_svc.get_qc_info_map_for_samples(
db, sample_ids, tenant_no db, sample_ids, tenant_no
) )
production_by_sample = production_work_order_svc.get_production_info_map_for_samples(
db, sample_ids, tenant_no
)
storage_release_by_sample = storage_release_review_svc.get_storage_release_map_for_samples(
db,
sample_ids,
tenant_no,
sample_code_by_id=sample_code_by_id,
)
samples_out: List[Dict[str, Any]] = [] samples_out: List[Dict[str, Any]] = []
for s in s_rows: for s in s_rows:
item = _sample_to_dict(s) item = _sample_to_dict(s)
item["transport"] = transport_by_sample.get(s.id) item["transport"] = transport_by_sample.get(s.id)
item["sampleReception"] = reception_by_sample.get(s.id) item["sampleReception"] = reception_by_sample.get(s.id)
item["qcInfo"] = qc_by_sample.get(s.id) item["qcInfo"] = qc_by_sample.get(s.id)
item["productionInfo"] = production_by_sample.get(s.id)
item["storageReleaseInfo"] = storage_release_by_sample.get(s.id)
samples_out.append(item) samples_out.append(item)
out["samples"] = samples_out out["samples"] = samples_out
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_backend_app_crud_research_donation_py", "label": "research_donation.py", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L1"}, {"id": "crud_research_donation_total_pages", "label": "total_pages()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L51"}, {"id": "crud_research_donation_fmt_dt", "label": "_fmt_dt()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L57"}, {"id": "crud_research_donation_dec", "label": "_dec()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L61"}, {"id": "crud_research_donation_optional_decimal", "label": "_optional_decimal()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L69"}, {"id": "crud_research_donation_normalize_fields", "label": "_normalize_fields()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L81"}, {"id": "crud_research_donation_merge_comma_separated_urls", "label": "_merge_comma_separated_urls()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L92"}, {"id": "crud_research_donation_resolve_donation_payload", "label": "_resolve_donation_payload()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L108"}, {"id": "crud_research_donation_user_nick_name_map", "label": "_user_nick_name_map()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L126"}, {"id": "crud_research_donation_donation_to_dict", "label": "_donation_to_dict()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L139"}, {"id": "crud_research_donation_audit_to_dict", "label": "_audit_to_dict()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L173"}, {"id": "crud_research_donation_party_to_dict", "label": "_party_to_dict()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L195"}, {"id": "crud_research_donation_collection_to_dict", "label": "_collection_to_dict()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L227"}, {"id": "crud_research_donation_sample_to_dict", "label": "_sample_to_dict()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L245"}, {"id": "crud_research_donation_transport_to_dict", "label": "_transport_to_dict()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L268"}, {"id": "crud_research_donation_get_party", "label": "get_party()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L293"}, {"id": "crud_research_donation_get_collection", "label": "get_collection()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L309"}, {"id": "crud_research_donation_list_samples", "label": "list_samples()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L325"}, {"id": "crud_research_donation_list_sample_transports", "label": "list_sample_transports()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L345"}, {"id": "crud_research_donation_list_donations", "label": "list_donations()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L370"}, {"id": "crud_research_donation_get_donation_detail", "label": "get_donation_detail()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L536"}, {"id": "crud_research_donation_create_donation", "label": "create_donation()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py", "source_location": "L644"}, {"id": "crud_research_donation_update_donation", "label": "update_donation()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/crud/researcLine truncated
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_backend_app_api_operations_py", "label": "operations.py", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L1"}, {"id": "api_operations_get_tenant_no", "label": "_get_tenant_no()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L24"}, {"id": "api_operations_cleanroomcreatebody", "label": "CleanRoomCreateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L39"}, {"id": "basemodel", "label": "BaseModel", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "api_operations_cleanroomupdatebody", "label": "CleanRoomUpdateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L51"}, {"id": "api_operations_list_clean_rooms", "label": "list_clean_rooms()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L64"}, {"id": "api_operations_create_clean_room", "label": "create_clean_room()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L89"}, {"id": "api_operations_update_clean_room", "label": "update_clean_room()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L114"}, {"id": "api_operations_delete_clean_room", "label": "delete_clean_room()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L142"}, {"id": "api_operations_accesslogcreatebody", "label": "AccessLogCreateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L160"}, {"id": "api_operations_accesslogupdatebody", "label": "AccessLogUpdateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L174"}, {"id": "api_operations_parse_optional_dt", "label": "_parse_optional_dt()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L187"}, {"id": "api_operations_list_access_logs", "label": "list_access_logs()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L194"}, {"id": "api_operations_create_access_log", "label": "create_access_log()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L223"}, {"id": "api_operations_update_access_log", "label": "update_access_log()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L250"}, {"id": "api_operations_delete_access_log", "label": "delete_access_log()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L279"}, {"id": "api_operations_storagefacilitycreatebody", "label": "StorageFacilityCreateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L297"}, {"id": "api_operations_storagefacilityupdatebody", "label": "StorageFacilityUpdateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L308"}, {"id": "api_operations_list_storage_facilities", "label": "list_storage_facilities()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L319"}, {"id": "api_operations_create_storage_facility", "label": "create_storage_facility()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L341"}, {"id": "api_operations_update_storage_facility", "label": "update_storage_facility()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L365"}, {"id": "api_operations_delete_storage_facility", "label": "delete_storage_facility()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L391"}, {"id": "api_operations_storageslotcreatebody", "label": "StorageSlotCreateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L409"}, {"id": "api_operations_storageslotbatchcreatebody", "label": "StorageSlotBatchCreateBody", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py", "source_location": "L419"}, {"id": "api_operations_storageslotupdatebody", "label":Line truncated
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+53 -53
View File
@@ -1,12 +1,12 @@
# Graph Report - app (2026-05-24) # Graph Report - app (2026-05-24)
## Corpus Check ## Corpus Check
- 146 files · ~135,139 words - 146 files · ~135,185 words
- Verdict: corpus is large enough that graph structure adds value. - Verdict: corpus is large enough that graph structure adds value.
## Summary ## Summary
- 2601 nodes · 10530 edges · 54 communities detected - 2601 nodes · 10532 edges · 54 communities detected
- Extraction: 41% EXTRACTED · 59% INFERRED · 0% AMBIGUOUS · INFERRED: 6231 edges (avg confidence: 0.63) - Extraction: 41% EXTRACTED · 59% INFERRED · 0% AMBIGUOUS · INFERRED: 6233 edges (avg confidence: 0.63)
- Token cost: 0 input · 0 output - Token cost: 0 input · 0 output
## Community Hubs (Navigation) ## Community Hubs (Navigation)
@@ -93,7 +93,7 @@
### Community 0 - "Community 0" ### Community 0 - "Community 0"
Cohesion: 0.02 Cohesion: 0.02
Nodes (446): attachment_download_url(), create_dept(), create_dict_data(), create_dict_type(), create_express_company(), create_item_unit(), create_menu(), create_post() (+438 more) Nodes (439): attachment_download_url(), create_dept(), create_dict_data(), create_dict_type(), create_express_company(), create_item_unit(), create_menu(), create_post() (+431 more)
### Community 1 - "Community 1" ### Community 1 - "Community 1"
Cohesion: 0.01 Cohesion: 0.01
@@ -105,27 +105,27 @@ Nodes (285): AuditCreateBody, BatchDetailIdsBody, BatchRefundFinanceSubmitBody,
### Community 3 - "Community 3" ### Community 3 - "Community 3"
Cohesion: 0.02 Cohesion: 0.02
Nodes (162): generate_uuid(), batch_stock_in(), batch_stock_out(), _code_exists(), create_material(), _dec(), _fmt_dt(), get_material() (+154 more) Nodes (175): generate_uuid(), batch_stock_in(), batch_stock_out(), consumable_code_exists(), create_consumable(), _dec(), get_consumable(), _is_enabled_status() (+167 more)
### Community 4 - "Community 4" ### Community 4 - "Community 4"
Cohesion: 0.03 Cohesion: 0.02
Nodes (142): list_collection_regions(), _ensure_customer_for_mother(), _persist_protocol_sub_resources(), list_ethnics_for_select(), apply_data_scope(), _get_child_dept_ids(), get_user_dept_id(), _resolve_user_role_scopes() (+134 more) Nodes (158): list_collection_regions(), create_collection_protocol(), delete_collection_protocol(), _ensure_customer_for_mother(), get_collection_protocol_detail(), _get_current_user_id(), _get_tenant_no(), list_collection_protocol_audits() (+150 more)
### Community 5 - "Community 5" ### Community 5 - "Community 5"
Cohesion: 0.05 Cohesion: 0.04
Nodes (103): _format_attachment_file_size(), urls_to_attachment_list(), _accept_conclusion_label(), _attach_reception_detail(), complete_production_work_order(), create_production_work_order_from_reception(), _enrich_wo_items(), _fmt_dt() (+95 more) Nodes (119): _format_attachment_file_size(), get_protocol_nos_used_in_protocols(), urls_to_attachment_list(), _accept_conclusion_label(), _attach_reception_detail(), complete_production_work_order(), create_production_work_order_from_reception(), _enrich_wo_items() (+111 more)
### Community 6 - "Community 6" ### Community 6 - "Community 6"
Cohesion: 0.04 Cohesion: 0.07
Nodes (52): ApiRequestLogMiddleware, _claims_from_auth(), _format_body_bytes(), _persist_log(), 统一记录 API 请求/响应出入参的中间件, _redact_obj(), _schedule_persist_log(), _should_skip() (+44 more) Nodes (67): AccessLogCreateBody, AccessLogUpdateBody, CleanRoomCreateBody, CleanRoomUpdateBody, ExhibitionAppointmentCreateBody, ExhibitionAppointmentUpdateBody, OccupancyCreateBody, 运营支撑 API(洁净室、进出记录、仓储设施、储位、展厅预约) (+59 more)
### Community 7 - "Community 7" ### Community 7 - "Community 7"
Cohesion: 0.05 Cohesion: 0.05
Nodes (57): list_roles_for_select(), _avatar_url_field(), _build_user_info_payload(), _jwt_user_payload(), logout(), 公共接口(Web 登录、刷新 Token、登出;用户模型对齐 docs/sql/zkxw.sql 基线), 登出:吊销 Redis 会话(若已配置 REDIS_HOST)。, 与 web-admin `userInfo` 字段约定一致。 (+49 more) Nodes (57): list_roles_for_select(), _avatar_url_field(), _build_user_info_payload(), _jwt_user_payload(), logout(), 公共接口(Web 登录、刷新 Token、登出;用户模型对齐 docs/sql/zkxw.sql 基线), 登出:吊销 Redis 会话(若已配置 REDIS_HOST)。, 与 web-admin `userInfo` 字段约定一致。 (+49 more)
### Community 8 - "Community 8" ### Community 8 - "Community 8"
Cohesion: 0.07 Cohesion: 0.06
Nodes (65): AccessLogCreateBody, AccessLogUpdateBody, CleanRoomCreateBody, CleanRoomUpdateBody, ExhibitionAppointmentCreateBody, ExhibitionAppointmentUpdateBody, OccupancyCreateBody, 运营支撑 API(洁净室、进出记录、仓储设施、储位、展厅预约) (+57 more) Nodes (55): get_designer_data(), ProcessDefCreateBody, ProcessDefUpdateBody, PublishVersionBody, 审批意见:前端传 commentText,兼容 comment。, StartInstanceBody, TaskActionBody, list_params_by_item() (+47 more)
### Community 9 - "Community 9" ### Community 9 - "Community 9"
Cohesion: 0.05 Cohesion: 0.05
@@ -136,16 +136,16 @@ Cohesion: 0.34
Nodes (58): BatchStockInBody, BatchStockInItem, BatchStockOutBody, BatchStockOutItem, ConsumableCreateBody, ConsumablePackCreateBody, ConsumablePackUpdateBody, ConsumableUpdateBody (+50 more) Nodes (58): BatchStockInBody, BatchStockInItem, BatchStockOutBody, BatchStockOutItem, ConsumableCreateBody, ConsumablePackCreateBody, ConsumablePackUpdateBody, ConsumableUpdateBody (+50 more)
### Community 11 - "Community 11" ### Community 11 - "Community 11"
Cohesion: 0.07
Nodes (50): get_designer_data(), ProcessDefCreateBody, ProcessDefUpdateBody, PublishVersionBody, 审批意见:前端传 commentText,兼容 comment。, StartInstanceBody, TaskActionBody, list_results_by_task() (+42 more)
### Community 12 - "Community 12"
Cohesion: 0.06 Cohesion: 0.06
Nodes (57): get_next_cell_product_code(), _build_facility_path_label(), build_split_product_codes(), create_cell_product(), create_cell_products_batch(), create_cell_products_by_quantity(), delete_cell_product(), _enrich_product_dicts() (+49 more) Nodes (57): get_next_cell_product_code(), _build_facility_path_label(), build_split_product_codes(), create_cell_product(), create_cell_products_batch(), create_cell_products_by_quantity(), delete_cell_product(), _enrich_product_dicts() (+49 more)
### Community 12 - "Community 12"
Cohesion: 0.05
Nodes (38): ApiRequestLogMiddleware, _claims_from_auth(), _format_body_bytes(), _persist_log(), 统一记录 API 请求/响应出入参的中间件, _redact_obj(), _schedule_persist_log(), _should_skip() (+30 more)
### Community 13 - "Community 13" ### Community 13 - "Community 13"
Cohesion: 0.11 Cohesion: 0.11
Nodes (44): create_collection_protocol(), update_collection_protocol(), _active_link_query(), assert_biz_no_available(), create_convert_link(), get_convert_partner(), get_partner_sample_codes(), has_active_convert_link() (+36 more) Nodes (44): create_collection_protocol(), _active_link_query(), assert_biz_no_available(), create_convert_link(), get_convert_partner(), get_partner_sample_codes(), has_active_convert_link(), upsert_convert_link_for_to_storage() (+36 more)
### Community 14 - "Community 14" ### Community 14 - "Community 14"
Cohesion: 0.16 Cohesion: 0.16
@@ -160,101 +160,101 @@ Cohesion: 0.12
Nodes (11): get_wechat_pay_client(), get_wechat_pay_v2(), 微信支付工具模块 支持微信支付 V3 API 文档参考: https://pay.weixin.qq.com/docs/v3/apis/index.ht, 统一下单接口 (V3) Args: out_trade_no: 商户订单号 total, 申请退款 Args: out_trade_no: 商户订单号 total_amount, 小程序调起支付的二次签名参数(与公众号 JSAPI 规则一致), 统一下单 (V2 API) Args: out_trade_no: 商户订单号 tot, 生成签名 V3 (SHA256 with RSA) (+3 more) Nodes (11): get_wechat_pay_client(), get_wechat_pay_v2(), 微信支付工具模块 支持微信支付 V3 API 文档参考: https://pay.weixin.qq.com/docs/v3/apis/index.ht, 统一下单接口 (V3) Args: out_trade_no: 商户订单号 total, 申请退款 Args: out_trade_no: 商户订单号 total_amount, 小程序调起支付的二次签名参数(与公众号 JSAPI 规则一致), 统一下单 (V2 API) Args: out_trade_no: 商户订单号 tot, 生成签名 V3 (SHA256 with RSA) (+3 more)
### Community 17 - "Community 17" ### Community 17 - "Community 17"
Cohesion: 0.12
Nodes (26): batch_stock_in(), batch_stock_out(), consumable_code_exists(), create_consumable(), _dec(), get_consumable(), _is_enabled_status(), list_consumables() (+18 more)
### Community 18 - "Community 18"
Cohesion: 0.18
Nodes (17): generate_sms(), _get_current_user_id(), _get_tenant_no(), list_notifications(), _page_payload(), toggle_status(), ToggleStatusBody, _accept_conclusion_label() (+9 more)
### Community 19 - "Community 19"
Cohesion: 0.18 Cohesion: 0.18
Nodes (18): company_code_exists(), create_company(), get_company(), list_companies(), list_company_options(), _row_to_dict(), soft_delete_company(), update_company() (+10 more) Nodes (18): company_code_exists(), create_company(), get_company(), list_companies(), list_company_options(), _row_to_dict(), soft_delete_company(), update_company() (+10 more)
### Community 20 - "Community 20" ### Community 18 - "Community 18"
Cohesion: 0.2 Cohesion: 0.2
Nodes (14): deduct_for_task(), _display_remark(), list_usages(), list_usages_by_task(), _parse_receiver_purpose_from_remark(), 查询质检任务关联的物料使用记录(task_complete)。, 撤销任务此前 task_complete 扣减,便于重新填报物料使用。, 兼容旧数据:领用人/用途曾拼接在 remark 中。 (+6 more) Nodes (14): deduct_for_task(), _display_remark(), list_usages(), list_usages_by_task(), _parse_receiver_purpose_from_remark(), 查询质检任务关联的物料使用记录(task_complete)。, 撤销任务此前 task_complete 扣减,便于重新填报物料使用。, 兼容旧数据:领用人/用途曾拼接在 remark 中。 (+6 more)
### Community 21 - "Community 21" ### Community 19 - "Community 19"
Cohesion: 0.25 Cohesion: 0.25
Nodes (13): code_exists(), create_material(), _dec(), _fmt_dt(), get_material(), list_materials(), _norm_status(), options_list() (+5 more) Nodes (13): code_exists(), create_material(), _dec(), _fmt_dt(), get_material(), list_materials(), _norm_status(), options_list() (+5 more)
### Community 22 - "Community 22" ### Community 20 - "Community 20"
Cohesion: 0.25
Nodes (13): batch_issue_protocol_nos(), batch_revoke_protocol_nos(), create_protocol_no(), get_protocol_no(), list_protocol_nos(), _parse_issued_time(), protocol_no_exists(), 采集协议号池 CRUD(biz_collection_protocol_no) (+5 more)
### Community 23 - "Community 23"
Cohesion: 0.26 Cohesion: 0.26
Nodes (12): batch_issue_sample_codes(), batch_revoke_sample_codes(), create_sample_code(), get_sample_code(), list_sample_codes(), _parse_issued_time(), 样本编码池 CRUD(biz_sample_code), _resolve_issued_user_display_name() (+4 more) Nodes (12): batch_issue_sample_codes(), batch_revoke_sample_codes(), create_sample_code(), get_sample_code(), list_sample_codes(), _parse_issued_time(), 样本编码池 CRUD(biz_sample_code), _resolve_issued_user_display_name() (+4 more)
### Community 24 - "Community 24" ### Community 21 - "Community 21"
Cohesion: 0.24 Cohesion: 0.24
Nodes (9): 微信消息通知服务 支持微信小程序模板消息推送 使用方式: from app.core.wechat_message import Wech, 发送模板消息 Args: openid: 用户openid templ, send_delivery_notice(), send_delivery_warning(), send_order_status(), send_payment_success(), send_refund_result(), send_urge_notification() (+1 more) Nodes (9): 微信消息通知服务 支持微信小程序模板消息推送 使用方式: from app.core.wechat_message import Wech, 发送模板消息 Args: openid: 用户openid templ, send_delivery_notice(), send_delivery_warning(), send_order_status(), send_payment_success(), send_refund_result(), send_urge_notification() (+1 more)
### Community 25 - "Community 25" ### Community 22 - "Community 22"
Cohesion: 0.23 Cohesion: 0.23
Nodes (12): Config, ProductBase, ProductCategoryBase, ProductCategoryCreate, ProductCategoryResponse, ProductCreate, ProductResponse, ProductUnitBase (+4 more) Nodes (12): Config, ProductBase, ProductCategoryBase, ProductCategoryCreate, ProductCategoryResponse, ProductCreate, ProductResponse, ProductUnitBase (+4 more)
### Community 26 - "Community 26" ### Community 23 - "Community 23"
Cohesion: 0.29
Nodes (10): _accept_conclusion_label(), _base_query(), _ensure_notification(), _fmt_dt(), generate_sms_content(), list_notifications(), resolve_notification(), _row_to_dict() (+2 more)
### Community 24 - "Community 24"
Cohesion: 0.24 Cohesion: 0.24
Nodes (11): deduct_for_step(), _display_remark(), list_stock_logs(), _parse_receiver_purpose_from_remark(), 试剂变动记录 CRUD(biz_reagent_stock_log), 撤销步骤此前 step_save 扣减,便于重新填报。, 扣减试剂库存并生成变动记录。调用方控制事务,本函数不 commit。, _resolve_receiver_purpose() (+3 more) Nodes (11): deduct_for_step(), _display_remark(), list_stock_logs(), _parse_receiver_purpose_from_remark(), 试剂变动记录 CRUD(biz_reagent_stock_log), 撤销步骤此前 step_save 扣减,便于重新填报。, 扣减试剂库存并生成变动记录。调用方控制事务,本函数不 commit。, _resolve_receiver_purpose() (+3 more)
### Community 27 - "Community 27" ### Community 25 - "Community 25"
Cohesion: 0.3 Cohesion: 0.3
Nodes (10): create_consumable_pack(), get_consumable_pack(), get_pack_detail(), _item_row_to_dict(), list_all_packs(), list_consumable_packs(), pack_code_exists(), _row_to_dict() (+2 more) Nodes (10): create_consumable_pack(), get_consumable_pack(), get_pack_detail(), _item_row_to_dict(), list_all_packs(), list_consumable_packs(), pack_code_exists(), _row_to_dict() (+2 more)
### Community 28 - "Community 28" ### Community 26 - "Community 26"
Cohesion: 0.27 Cohesion: 0.27
Nodes (11): _build_tree(), _cascade_soft_delete(), _collect_with_ancestors(), create_dept(), get_dept(), list_depts(), list_depts_tree(), 保留匹配节点及其全部上级,供关键词检索后仍能正确组树。 (+3 more) Nodes (11): _build_tree(), _cascade_soft_delete(), _collect_with_ancestors(), create_dept(), get_dept(), list_depts(), list_depts_tree(), 保留匹配节点及其全部上级,供关键词检索后仍能正确组树。 (+3 more)
### Community 29 - "Community 29" ### Community 27 - "Community 27"
Cohesion: 0.29 Cohesion: 0.29
Nodes (9): _build_tree(), _cascade_soft_delete(), create_menu(), get_menu(), list_menus(), list_menus_tree(), _row_to_dict(), soft_delete_menu() (+1 more) Nodes (9): _build_tree(), _cascade_soft_delete(), create_menu(), get_menu(), list_menus(), list_menus_tree(), _row_to_dict(), soft_delete_menu() (+1 more)
### Community 30 - "Community 30" ### Community 28 - "Community 28"
Cohesion: 0.31 Cohesion: 0.31
Nodes (8): create_sop_document(), get_sop_document(), list_sop_documents(), SOP文档 CRUD(biz_sop_document), _row_to_dict(), soft_delete_sop_document(), sop_code_exists(), update_sop_document() Nodes (8): create_sop_document(), get_sop_document(), list_sop_documents(), SOP文档 CRUD(biz_sop_document), _row_to_dict(), soft_delete_sop_document(), sop_code_exists(), update_sop_document()
### Community 31 - "Community 31" ### Community 29 - "Community 29"
Cohesion: 0.31 Cohesion: 0.31
Nodes (8): create_express_company(), express_code_exists(), get_express_company(), list_express_companies(), 快递公司 CRUD(biz_express_company), _row_to_dict(), soft_delete_express_company(), update_express_company() Nodes (8): create_express_company(), express_code_exists(), get_express_company(), list_express_companies(), 快递公司 CRUD(biz_express_company), _row_to_dict(), soft_delete_express_company(), update_express_company()
### Community 32 - "Community 32" ### Community 30 - "Community 30"
Cohesion: 0.38 Cohesion: 0.38
Nodes (9): create_check_item(), get_check_item(), item_code_exists(), list_active_check_items(), list_check_items(), _order_query(), _row_to_dict(), soft_delete_check_item() (+1 more) Nodes (9): create_check_item(), get_check_item(), item_code_exists(), list_active_check_items(), list_check_items(), _order_query(), _row_to_dict(), soft_delete_check_item() (+1 more)
### Community 33 - "Community 33" ### Community 31 - "Community 31"
Cohesion: 0.27 Cohesion: 0.27
Nodes (8): create_dict_data(), get_dict_data(), list_dict_data(), list_dict_data_options(), 字典数据 CRUD(sys_dict_data), _row_to_dict(), soft_delete_dict_data(), update_dict_data() Nodes (8): create_dict_data(), get_dict_data(), list_dict_data(), list_dict_data_options(), 字典数据 CRUD(sys_dict_data), _row_to_dict(), soft_delete_dict_data(), update_dict_data()
### Community 34 - "Community 34" ### Community 32 - "Community 32"
Cohesion: 0.31 Cohesion: 0.31
Nodes (8): category_code_exists(), create_process_category(), get_process_category(), list_process_categories(), 工艺工序分类 CRUD(biz_process_category), _row_to_dict(), soft_delete_process_category(), update_process_category() Nodes (8): category_code_exists(), create_process_category(), get_process_category(), list_process_categories(), 工艺工序分类 CRUD(biz_process_category), _row_to_dict(), soft_delete_process_category(), update_process_category()
### Community 35 - "Community 35" ### Community 33 - "Community 33"
Cohesion: 0.31 Cohesion: 0.31
Nodes (8): create_item_unit(), get_item_unit(), list_item_units(), 物品单位 CRUD(biz_item_unit), _row_to_dict(), soft_delete_item_unit(), unit_code_exists(), update_item_unit() Nodes (8): create_item_unit(), get_item_unit(), list_item_units(), 物品单位 CRUD(biz_item_unit), _row_to_dict(), soft_delete_item_unit(), unit_code_exists(), update_item_unit()
### Community 36 - "Community 36" ### Community 34 - "Community 34"
Cohesion: 0.31 Cohesion: 0.31
Nodes (8): create_cell_sample_type(), get_cell_sample_type(), list_cell_sample_types(), 细胞样本类型 CRUD(biz_cell_sample_type), _row_to_dict(), soft_delete_cell_sample_type(), type_code_exists(), update_cell_sample_type() Nodes (8): create_cell_sample_type(), get_cell_sample_type(), list_cell_sample_types(), 细胞样本类型 CRUD(biz_cell_sample_type), _row_to_dict(), soft_delete_cell_sample_type(), type_code_exists(), update_cell_sample_type()
### Community 37 - "Community 37" ### Community 35 - "Community 35"
Cohesion: 0.31 Cohesion: 0.31
Nodes (8): create_output_type(), get_output_type(), list_output_types(), 工艺产出物类型 CRUD(biz_output_type), _row_to_dict(), soft_delete_output_type(), type_code_exists(), update_output_type() Nodes (8): create_output_type(), get_output_type(), list_output_types(), 工艺产出物类型 CRUD(biz_output_type), _row_to_dict(), soft_delete_output_type(), type_code_exists(), update_output_type()
### Community 38 - "Community 38" ### Community 36 - "Community 36"
Cohesion: 0.36 Cohesion: 0.36
Nodes (7): create_post(), get_post(), list_posts(), post_code_exists(), _row_to_dict(), soft_delete_post(), update_post() Nodes (7): create_post(), get_post(), list_posts(), post_code_exists(), _row_to_dict(), soft_delete_post(), update_post()
### Community 39 - "Community 39" ### Community 37 - "Community 37"
Cohesion: 0.36
Nodes (7): create_dict_type(), dict_type_code_exists(), get_dict_type(), list_dict_types(), _row_to_dict(), soft_delete_dict_type(), update_dict_type()
### Community 38 - "Community 38"
Cohesion: 0.36 Cohesion: 0.36
Nodes (7): create_tenant(), get_tenant(), list_tenants(), _row_to_dict(), soft_delete_tenant(), tenant_no_exists(), update_tenant() Nodes (7): create_tenant(), get_tenant(), list_tenants(), _row_to_dict(), soft_delete_tenant(), tenant_no_exists(), update_tenant()
### Community 40 - "Community 40" ### Community 39 - "Community 39"
Cohesion: 0.36 Cohesion: 0.36
Nodes (7): create_site(), get_site(), list_sites(), _row_to_dict(), site_code_exists(), soft_delete_site(), update_site() Nodes (7): create_site(), get_site(), list_sites(), _row_to_dict(), site_code_exists(), soft_delete_site(), update_site()
### Community 40 - "Community 40"
Cohesion: 0.39
Nodes (8): create_lab_item(), get_lab_item(), item_code_exists(), list_active_lab_items(), list_lab_items(), _row_to_dict(), soft_delete_lab_item(), update_lab_item()
### Community 41 - "Community 41" ### Community 41 - "Community 41"
Cohesion: 0.29 Cohesion: 0.29
Nodes (2): BaseModel, SoftDeleteModel Nodes (2): BaseModel, SoftDeleteModel
@@ -336,11 +336,11 @@ Nodes (1): 发送催单通知给配送员 Args: del
## Suggested Questions ## Suggested Questions
_Questions this graph is uniquely positioned to answer:_ _Questions this graph is uniquely positioned to answer:_
- **Why does `generate_uuid()` connect `Community 3` to `Community 0`, `Community 1`, `Community 2`, `Community 4`, `Community 5`, `Community 6`, `Community 7`, `Community 8`, `Community 11`, `Community 12`, `Community 13`, `Community 17`, `Community 18`, `Community 19`, `Community 20`, `Community 21`, `Community 22`, `Community 23`, `Community 26`, `Community 27`, `Community 28`, `Community 29`, `Community 30`, `Community 31`, `Community 32`, `Community 33`, `Community 34`, `Community 35`, `Community 36`, `Community 37`, `Community 38`, `Community 39`, `Community 40`?** - **Why does `generate_uuid()` connect `Community 3` to `Community 0`, `Community 1`, `Community 2`, `Community 4`, `Community 5`, `Community 6`, `Community 7`, `Community 8`, `Community 11`, `Community 12`, `Community 13`, `Community 17`, `Community 18`, `Community 19`, `Community 20`, `Community 23`, `Community 24`, `Community 25`, `Community 26`, `Community 27`, `Community 28`, `Community 29`, `Community 30`, `Community 31`, `Community 32`, `Community 33`, `Community 34`, `Community 35`, `Community 36`, `Community 37`, `Community 38`, `Community 39`, `Community 40`?**
_High betweenness centrality (0.137) - this node is a cross-community bridge._ _High betweenness centrality (0.137) - this node is a cross-community bridge._
- **Why does `SysUser` connect `Community 1` to `Community 0`, `Community 2`, `Community 6`, `Community 7`, `Community 8`, `Community 10`, `Community 11`, `Community 14`, `Community 17`, `Community 18`, `Community 20`, `Community 22`, `Community 23`, `Community 26`?** - **Why does `SysUser` connect `Community 1` to `Community 0`, `Community 2`, `Community 3`, `Community 5`, `Community 6`, `Community 7`, `Community 8`, `Community 10`, `Community 12`, `Community 14`, `Community 18`, `Community 20`, `Community 24`?**
_High betweenness centrality (0.081) - this node is a cross-community bridge._ _High betweenness centrality (0.081) - this node is a cross-community bridge._
- **Why does `success_response()` connect `Community 0` to `Community 1`, `Community 4`, `Community 7`, `Community 11`, `Community 12`, `Community 45`, `Community 14`, `Community 18`?** - **Why does `success_response()` connect `Community 0` to `Community 1`, `Community 4`, `Community 7`, `Community 8`, `Community 11`, `Community 45`, `Community 14`?**
_High betweenness centrality (0.056) - this node is a cross-community bridge._ _High betweenness centrality (0.056) - this node is a cross-community bridge._
- **Are the 408 inferred relationships involving `success_response()` (e.g. with `list_storage_release_reviews()` and `get_storage_release_review_detail()`) actually correct?** - **Are the 408 inferred relationships involving `success_response()` (e.g. with `list_storage_release_reviews()` and `get_storage_release_review_detail()`) actually correct?**
_`success_response()` has 408 INFERRED edges - model-reasoned connections that need verification._ _`success_response()` has 408 INFERRED edges - model-reasoned connections that need verification._
+4 -4
View File
@@ -57,12 +57,12 @@
</div> </div>
<div id="legend"></div> <div id="legend"></div>
</div> </div>
<div id="stats">2601 nodes &middot; 10530 edges &middot; 60 communities</div> <div id="stats">2601 nodes &middot; 10532 edges &middot; 60 communities</div>
</div> </div>
<script> <script>
const RAW_NODES = [{"id": "init_py", "label": "__init__.py", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 48, "community_name": "Community 48", "source_file": "__init__.py", "file_type": "code", "degree": 0}, {"id": "main_py", "label": "main.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "main.py", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 4}, {"id": "app_main_lifespan", "label": "lifespan()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "lifespan()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 4}, {"id": "app_main_mask_secret", "label": "_mask_secret()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "_mask_secret()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 1}, {"id": "app_main_root", "label": "root()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "root()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 1}, {"id": "app_main_health_check", "label": "health_check()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "health_check()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 1}, {"id": "tasks_init_py", "label": "__init__.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 7, "community_name": "Community 7", "source_file": "tasks/__init__.py", "file_type": "code", "degree": 2}, {"id": "tasks_init_init_scheduled_tasks", "label": "init_scheduled_tasks()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "init_scheduled_tasks()", "community": 7, "community_name": "Community 7", "source_file": "tasks/__init__.py", "file_type": "code", "degree": 2}, {"id": "tasks_init_shutdown_scheduler", "label": "shutdown_scheduler()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "shutdown_scheduler()", "community": 7, "community_name": "Community 7", "source_file": "tasks/__init__.py", "file_type": "code", "degree": 2}, {"id": "core_auth_py", "label": "auth.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "auth.py", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 18}, {"id": "core_auth_redis_session_enabled", "label": "_redis_session_enabled()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "_redis_session_enabled()", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 2}, {"id": "core_auth_get_redis_client", "label": "_get_redis_client()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "_get_redis_client()", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 9}, {"id": "core_auth_session_key", "label": "_session_key()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "_session_key()", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 5}, {"id": "core_auth_refresh_key", "label": "_refresh_key()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "boLine truncated const RAW_NODES = [{"id": "init_py", "label": "__init__.py", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 48, "community_name": "Community 48", "source_file": "__init__.py", "file_type": "code", "degree": 0}, {"id": "main_py", "label": "main.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "main.py", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 4}, {"id": "app_main_lifespan", "label": "lifespan()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "lifespan()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 4}, {"id": "app_main_mask_secret", "label": "_mask_secret()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "_mask_secret()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 1}, {"id": "app_main_root", "label": "root()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "root()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 1}, {"id": "app_main_health_check", "label": "health_check()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "health_check()", "community": 7, "community_name": "Community 7", "source_file": "main.py", "file_type": "code", "degree": 1}, {"id": "tasks_init_py", "label": "__init__.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 7, "community_name": "Community 7", "source_file": "tasks/__init__.py", "file_type": "code", "degree": 2}, {"id": "tasks_init_init_scheduled_tasks", "label": "init_scheduled_tasks()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "init_scheduled_tasks()", "community": 7, "community_name": "Community 7", "source_file": "tasks/__init__.py", "file_type": "code", "degree": 2}, {"id": "tasks_init_shutdown_scheduler", "label": "shutdown_scheduler()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "shutdown_scheduler()", "community": 7, "community_name": "Community 7", "source_file": "tasks/__init__.py", "file_type": "code", "degree": 2}, {"id": "core_auth_py", "label": "auth.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "auth.py", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 18}, {"id": "core_auth_redis_session_enabled", "label": "_redis_session_enabled()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "_redis_session_enabled()", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 2}, {"id": "core_auth_get_redis_client", "label": "_get_redis_client()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "_get_redis_client()", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 9}, {"id": "core_auth_session_key", "label": "_session_key()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "_session_key()", "community": 7, "community_name": "Community 7", "source_file": "core/auth.py", "file_type": "code", "degree": 5}, {"id": "core_auth_refresh_key", "label": "_refresh_key()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "boLine truncated
const RAW_EDGES = [{"from": "main_py", "to": "app_main_lifespan", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_py", "to": "app_main_mask_secret", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_py", "to": "app_main_root", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_py", "to": "app_main_health_check", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_main_lifespan", "to": "core_login_crypto_ensure_initialized", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_main_lifespan", "to": "tasks_init_init_scheduled_tasks", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_main_lifespan", "to": "tasks_init_shutdown_scheduler", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "tasks_init_py", "to": "tasks_init_init_scheduled_tasks", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "tasks_init_py", "to": "tasks_init_shutdown_scheduler", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_redis_session_enabled", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_get_redis_client", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_session_key", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_refresh_key", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_store_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_revoke_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_extend_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_is_session_valid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_store_refresh_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_is_refresh_token_valid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_revoke_refresh_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_create_access_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_create_refresh_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_decode_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_get_current_user_by_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_get_current_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "Line truncated const RAW_EDGES = [{"from": "main_py", "to": "app_main_lifespan", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_py", "to": "app_main_mask_secret", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_py", "to": "app_main_root", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_py", "to": "app_main_health_check", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_main_lifespan", "to": "core_login_crypto_ensure_initialized", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_main_lifespan", "to": "tasks_init_init_scheduled_tasks", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_main_lifespan", "to": "tasks_init_shutdown_scheduler", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "tasks_init_py", "to": "tasks_init_init_scheduled_tasks", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "tasks_init_py", "to": "tasks_init_shutdown_scheduler", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_redis_session_enabled", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_get_redis_client", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_session_key", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_refresh_key", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_store_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_revoke_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_extend_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_is_session_valid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_store_refresh_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_is_refresh_token_valid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_revoke_refresh_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_create_access_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_create_refresh_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_decode_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_get_current_user_by_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "to": "core_auth_get_current_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_py", "Line truncated
const LEGEND = [{"cid": 0, "color": "#4E79A7", "label": "Community 0", "count": 460}, {"cid": 1, "color": "#F28E2B", "label": "Community 1", "count": 435}, {"cid": 2, "color": "#E15759", "label": "Community 2", "count": 290}, {"cid": 3, "color": "#76B7B2", "label": "Community 3", "count": 178}, {"cid": 4, "color": "#59A14F", "label": "Community 4", "count": 162}, {"cid": 5, "color": "#EDC948", "label": "Community 5", "count": 109}, {"cid": 6, "color": "#B07AA1", "label": "Community 6", "count": 77}, {"cid": 7, "color": "#FF9DA7", "label": "Community 7", "count": 70}, {"cid": 8, "color": "#9C755F", "label": "Community 8", "count": 69}, {"cid": 9, "color": "#BAB0AC", "label": "Community 9", "count": 68}, {"cid": 10, "color": "#4E79A7", "label": "Community 10", "count": 65}, {"cid": 11, "color": "#F28E2B", "label": "Community 11", "count": 63}, {"cid": 12, "color": "#E15759", "label": "Community 12", "count": 62}, {"cid": 13, "color": "#76B7B2", "label": "Community 13", "count": 46}, {"cid": 14, "color": "#59A14F", "label": "Community 14", "count": 33}, {"cid": 15, "color": "#EDC948", "label": "Community 15", "count": 31}, {"cid": 16, "color": "#B07AA1", "label": "Community 16", "count": 31}, {"cid": 17, "color": "#FF9DA7", "label": "Community 17", "count": 30}, {"cid": 18, "color": "#9C755F", "label": "Community 18", "count": 21}, {"cid": 19, "color": "#BAB0AC", "label": "Community 19", "count": 20}, {"cid": 20, "color": "#4E79A7", "label": "Community 20", "count": 15}, {"cid": 21, "color": "#F28E2B", "label": "Community 21", "count": 15}, {"cid": 22, "color": "#E15759", "label": "Community 22", "count": 15}, {"cid": 23, "color": "#76B7B2", "label": "Community 23", "count": 14}, {"cid": 24, "color": "#59A14F", "label": "Community 24", "count": 13}, {"cid": 25, "color": "#EDC948", "label": "Community 25", "count": 13}, {"cid": 26, "color": "#B07AA1", "label": "Community 26", "count": 12}, {"cid": 27, "color": "#FF9DA7", "label": "Community 27", "count": 12}, {"cid": 28, "color": "#9C755F", "label": "Community 28", "count": 12}, {"cid": 29, "color": "#BAB0AC", "label": "Community 29", "count": 11}, {"cid": 30, "color": "#4E79A7", "label": "Community 30", "count": 10}, {"cid": 31, "color": "#F28E2B", "label": "Community 31", "count": 10}, {"cid": 32, "color": "#E15759", "label": "Community 32", "count": 10}, {"cid": 33, "color": "#76B7B2", "label": "Community 33", "count": 10}, {"cid": 34, "color": "#59A14F", "label": "Community 34", "count": 10}, {"cid": 35, "color": "#EDC948", "label": "Community 35", "count": 10}, {"cid": 36, "color": "#B07AA1", "label": "Community 36", "count": 10}, {"cid": 37, "color": "#FF9DA7", "label": "Community 37", "count": 10}, {"cid": 38, "color": "#9C755F", "label": "Community 38", "count": 9}, {"cid": 39, "color": "#BAB0AC", "label": "Community 39", "count": 9}, {"cid": 40, "color": "#4E79A7", "label": "Community 40", "count": 9}, {"cid": 41, "color": "#F28E2B", "label": "Community 41", "count": 8}, {"cid": 42, "color": "#E15759", "label": "Community 42", "count": 7}, {"cid": 43, "color": "#76B7B2", "label": "Community 43", "count": 4}, {"cid": 44, "color": "#59A14F", "label": "Community 44", "count": 4}, {"cid": 45, "color": "#EDC948", "label": "Community 45", "count": 3}, {"cid": 46, "color": "#B07AA1", "label": "Community 46", "count": 2}, {"cid": 47, "color": "#FF9DA7", "label": "Community 47", "count": 2}, {"cid": 48, "color": "#9C755F", "label": "Community 48", "count": 1}, {"cid": 49, "color": "#BAB0AC", "label": "Community 49", "count": 1}, {"cid": 50, "color": "#4E79A7", "label": "Community 50", "count": 1}, {"cid": 51, "color": "#F28E2B", "label": "Community 51", "count": 1}, {"cid": 52, "color": "#E15759", "label": "Community 52", "count": 1}, {"cid": 53, "color": "#76B7B2", "label": "Community 53", "count": 1}, {"cid": 54, "color": "#59A14F", "label": "Community 54", "count": 1}, {"cid": 55, "color": "#EDC948", "label": "Community 55", "count": 1}, {"cid": 56, "color": "#B07AA1", "label": "Community 56", "count": 1}, {"cid": 57, "color": "#FF9DA7", "label": "Community 57", "count": 1}, {"cid": 58, "color": "#9C755F", "label": "Community 58", "count": 1}]; const LEGEND = [{"cid": 0, "color": "#4E79A7", "label": "Community 0", "count": 453}, {"cid": 1, "color": "#F28E2B", "label": "Community 1", "count": 435}, {"cid": 2, "color": "#E15759", "label": "Community 2", "count": 290}, {"cid": 3, "color": "#76B7B2", "label": "Community 3", "count": 195}, {"cid": 4, "color": "#59A14F", "label": "Community 4", "count": 178}, {"cid": 5, "color": "#EDC948", "label": "Community 5", "count": 128}, {"cid": 6, "color": "#B07AA1", "label": "Community 6", "count": 71}, {"cid": 7, "color": "#FF9DA7", "label": "Community 7", "count": 70}, {"cid": 8, "color": "#9C755F", "label": "Community 8", "count": 69}, {"cid": 9, "color": "#BAB0AC", "label": "Community 9", "count": 68}, {"cid": 10, "color": "#4E79A7", "label": "Community 10", "count": 65}, {"cid": 11, "color": "#F28E2B", "label": "Community 11", "count": 62}, {"cid": 12, "color": "#E15759", "label": "Community 12", "count": 59}, {"cid": 13, "color": "#76B7B2", "label": "Community 13", "count": 46}, {"cid": 14, "color": "#59A14F", "label": "Community 14", "count": 33}, {"cid": 15, "color": "#EDC948", "label": "Community 15", "count": 31}, {"cid": 16, "color": "#B07AA1", "label": "Community 16", "count": 31}, {"cid": 17, "color": "#FF9DA7", "label": "Community 17", "count": 20}, {"cid": 18, "color": "#9C755F", "label": "Community 18", "count": 15}, {"cid": 19, "color": "#BAB0AC", "label": "Community 19", "count": 15}, {"cid": 20, "color": "#4E79A7", "label": "Community 20", "count": 14}, {"cid": 21, "color": "#F28E2B", "label": "Community 21", "count": 13}, {"cid": 22, "color": "#E15759", "label": "Community 22", "count": 13}, {"cid": 23, "color": "#76B7B2", "label": "Community 23", "count": 13}, {"cid": 24, "color": "#59A14F", "label": "Community 24", "count": 12}, {"cid": 25, "color": "#EDC948", "label": "Community 25", "count": 12}, {"cid": 26, "color": "#B07AA1", "label": "Community 26", "count": 12}, {"cid": 27, "color": "#FF9DA7", "label": "Community 27", "count": 11}, {"cid": 28, "color": "#9C755F", "label": "Community 28", "count": 10}, {"cid": 29, "color": "#BAB0AC", "label": "Community 29", "count": 10}, {"cid": 30, "color": "#4E79A7", "label": "Community 30", "count": 10}, {"cid": 31, "color": "#F28E2B", "label": "Community 31", "count": 10}, {"cid": 32, "color": "#E15759", "label": "Community 32", "count": 10}, {"cid": 33, "color": "#76B7B2", "label": "Community 33", "count": 10}, {"cid": 34, "color": "#59A14F", "label": "Community 34", "count": 10}, {"cid": 35, "color": "#EDC948", "label": "Community 35", "count": 10}, {"cid": 36, "color": "#B07AA1", "label": "Community 36", "count": 9}, {"cid": 37, "color": "#FF9DA7", "label": "Community 37", "count": 9}, {"cid": 38, "color": "#9C755F", "label": "Community 38", "count": 9}, {"cid": 39, "color": "#BAB0AC", "label": "Community 39", "count": 9}, {"cid": 40, "color": "#4E79A7", "label": "Community 40", "count": 9}, {"cid": 41, "color": "#F28E2B", "label": "Community 41", "count": 8}, {"cid": 42, "color": "#E15759", "label": "Community 42", "count": 7}, {"cid": 43, "color": "#76B7B2", "label": "Community 43", "count": 4}, {"cid": 44, "color": "#59A14F", "label": "Community 44", "count": 4}, {"cid": 45, "color": "#EDC948", "label": "Community 45", "count": 3}, {"cid": 46, "color": "#B07AA1", "label": "Community 46", "count": 2}, {"cid": 47, "color": "#FF9DA7", "label": "Community 47", "count": 2}, {"cid": 48, "color": "#9C755F", "label": "Community 48", "count": 1}, {"cid": 49, "color": "#BAB0AC", "label": "Community 49", "count": 1}, {"cid": 50, "color": "#4E79A7", "label": "Community 50", "count": 1}, {"cid": 51, "color": "#F28E2B", "label": "Community 51", "count": 1}, {"cid": 52, "color": "#E15759", "label": "Community 52", "count": 1}, {"cid": 53, "color": "#76B7B2", "label": "Community 53", "count": 1}, {"cid": 54, "color": "#59A14F", "label": "Community 54", "count": 1}, {"cid": 55, "color": "#EDC948", "label": "Community 55", "count": 1}, {"cid": 56, "color": "#B07AA1", "label": "Community 56", "count": 1}, {"cid": 57, "color": "#FF9DA7", "label": "Community 57", "count": 1}, {"cid": 58, "color": "#9C755F", "label": "Community 58", "count": 1}];
// HTML-escape helper — prevents XSS when injecting graph data into innerHTML // HTML-escape helper — prevents XSS when injecting graph data into innerHTML
function esc(s) { function esc(s) {
File diff suppressed because it is too large. Load diff
+2 -2
View File
@@ -97,7 +97,7 @@
"/Users/wuzilong/work/00code/zkxw/backend/app/crud/site.py": 1779265643.0128026, "/Users/wuzilong/work/00code/zkxw/backend/app/crud/site.py": 1779265643.0128026,
"/Users/wuzilong/work/00code/zkxw/backend/app/crud/api_request_log.py": 1778578258.0614743, "/Users/wuzilong/work/00code/zkxw/backend/app/crud/api_request_log.py": 1778578258.0614743,
"/Users/wuzilong/work/00code/zkxw/backend/app/crud/dict_data.py": 1779265627.276101, "/Users/wuzilong/work/00code/zkxw/backend/app/crud/dict_data.py": 1779265627.276101,
"/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py": 1779265882.397586, "/Users/wuzilong/work/00code/zkxw/backend/app/crud/research_donation.py": 1779591478.6733878,
"/Users/wuzilong/work/00code/zkxw/backend/app/crud/ethnic.py": 1779265849.547566, "/Users/wuzilong/work/00code/zkxw/backend/app/crud/ethnic.py": 1779265849.547566,
"/Users/wuzilong/work/00code/zkxw/backend/app/crud/process_category.py": 1779265700.0606413, "/Users/wuzilong/work/00code/zkxw/backend/app/crud/process_category.py": 1779265700.0606413,
"/Users/wuzilong/work/00code/zkxw/backend/app/crud/item_unit.py": 1779265653.7504313, "/Users/wuzilong/work/00code/zkxw/backend/app/crud/item_unit.py": 1779265653.7504313,
@@ -129,7 +129,7 @@
"/Users/wuzilong/work/00code/zkxw/backend/app/api/basic_info.py": 1779280842.8447173, "/Users/wuzilong/work/00code/zkxw/backend/app/api/basic_info.py": 1779280842.8447173,
"/Users/wuzilong/work/00code/zkxw/backend/app/api/__init__.py": 1779528183.6934836, "/Users/wuzilong/work/00code/zkxw/backend/app/api/__init__.py": 1779528183.6934836,
"/Users/wuzilong/work/00code/zkxw/backend/app/api/storage_entry_sms_notification.py": 1779528166.7455833, "/Users/wuzilong/work/00code/zkxw/backend/app/api/storage_entry_sms_notification.py": 1779528166.7455833,
"/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py": 1779418318.1375492, "/Users/wuzilong/work/00code/zkxw/backend/app/api/operations.py": 1779590047.6235585,
"/Users/wuzilong/work/00code/zkxw/backend/app/api/menu.py": 1779263225.4964793, "/Users/wuzilong/work/00code/zkxw/backend/app/api/menu.py": 1779263225.4964793,
"/Users/wuzilong/work/00code/zkxw/backend/app/api/admin.py": 1779265690.8423955, "/Users/wuzilong/work/00code/zkxw/backend/app/api/admin.py": 1779265690.8423955,
"/Users/wuzilong/work/00code/zkxw/backend/app/api/research_donation.py": 1779266149.3047824, "/Users/wuzilong/work/00code/zkxw/backend/app/api/research_donation.py": 1779266149.3047824,
+226 -222
View File
@@ -181,25 +181,13 @@
"api_cell_product_ts", "api_cell_product_ts",
"api_chinaregion_fetchchinaregiontree", "api_chinaregion_fetchchinaregiontree",
"api_chinaregion_ts", "api_chinaregion_ts",
"api_collection_protocol_fetchcollectionprotocolauditlist", "api_leave_fetchcreateleave",
"api_collection_protocol_fetchcollectionprotocoldetail", "api_leave_fetchdeleteleave",
"api_collection_protocol_fetchcollectionprotocollist", "api_leave_fetchleavedetail",
"api_collection_protocol_fetchcreatecollectionprotocol", "api_leave_fetchleavelist",
"api_collection_protocol_fetchdeletecollectionprotocol", "api_leave_fetchsubmitleave",
"api_collection_protocol_fetchpaymentdetaillist", "api_leave_fetchupdateleave",
"api_collection_protocol_fetchreceiptconfirmedlist", "api_leave_ts",
"api_collection_protocol_fetchreceiptconfirmlist",
"api_collection_protocol_fetchreceiptconfirmsubmit",
"api_collection_protocol_fetchrefundconfirmedlist",
"api_collection_protocol_fetchrefundconfirmlist",
"api_collection_protocol_fetchrefundconfirmsubmit",
"api_collection_protocol_fetchsubmitprotocolaudit",
"api_collection_protocol_fetchsubmitreceiptfinance",
"api_collection_protocol_fetchsubmitreceiptfinancebatch",
"api_collection_protocol_fetchsubmitrefundfinance",
"api_collection_protocol_fetchsubmitrefundfinancebatch",
"api_collection_protocol_fetchupdatecollectionprotocol",
"api_collection_protocol_ts",
"api_qc_item_param_fetchqcitemparams", "api_qc_item_param_fetchqcitemparams",
"api_qc_item_param_fetchsaveqcitemparams", "api_qc_item_param_fetchsaveqcitemparams",
"api_qc_item_param_ts", "api_qc_item_param_ts",
@@ -213,12 +201,22 @@
"api_qc_work_order_fetchqcworkorderdetail", "api_qc_work_order_fetchqcworkorderdetail",
"api_qc_work_order_fetchqcworkorderlist", "api_qc_work_order_fetchqcworkorderlist",
"api_qc_work_order_ts", "api_qc_work_order_ts",
"api_sample_reception_check_item_fetchcreatesamplereceptioncheckitem",
"api_sample_reception_check_item_fetchdeletesamplereceptioncheckitem",
"api_sample_reception_check_item_fetchsamplereceptioncheckitemlist",
"api_sample_reception_check_item_fetchsamplereceptioncheckitemsactive",
"api_sample_reception_check_item_fetchupdatesamplereceptioncheckitem",
"api_sample_reception_check_item_ts",
"api_sample_reception_fetchsamplereceptiondetail", "api_sample_reception_fetchsamplereceptiondetail",
"api_sample_reception_fetchsamplereceptionpendinglist", "api_sample_reception_fetchsamplereceptionpendinglist",
"api_sample_reception_fetchsamplereceptionreceivedlist", "api_sample_reception_fetchsamplereceptionreceivedlist",
"api_sample_reception_fetchsamplereceptionsubmit", "api_sample_reception_fetchsamplereceptionsubmit",
"api_sample_reception_fetchsamplereceptionupdate", "api_sample_reception_fetchsamplereceptionupdate",
"api_sample_reception_ts", "api_sample_reception_ts",
"api_storage_entry_sms_notification_fetchgeneratestorageentrysms",
"api_storage_entry_sms_notification_fetchstorageentrysmslist",
"api_storage_entry_sms_notification_fetchtogglestorageentrysmsnotified",
"api_storage_entry_sms_notification_ts",
"api_system_fetchcreatecomment", "api_system_fetchcreatecomment",
"api_system_fetchcreateupgradelog", "api_system_fetchcreateupgradelog",
"api_system_fetchdeletecomment", "api_system_fetchdeletecomment",
@@ -282,7 +280,6 @@
"collection_protocol_no_index_resetform", "collection_protocol_no_index_resetform",
"collection_protocol_no_index_resolveissuedusername", "collection_protocol_no_index_resolveissuedusername",
"collection_region_index_handlebatchdelete", "collection_region_index_handlebatchdelete",
"collection_region_index_handlebatchdeletehospital",
"components_core_layouts_art_settings_panel_widget_settingitem_vue", "components_core_layouts_art_settings_panel_widget_settingitem_vue",
"core_routevalidator_routevalidator", "core_routevalidator_routevalidator",
"core_routevalidator_routevalidator_checkcomponents", "core_routevalidator_routevalidator_checkcomponents",
@@ -290,6 +287,7 @@
"core_routevalidator_routevalidator_checknestedindexcomponent", "core_routevalidator_routevalidator_checknestedindexcomponent",
"core_routevalidator_routevalidator_resolvepath", "core_routevalidator_routevalidator_resolvepath",
"core_routevalidator_routevalidator_validate", "core_routevalidator_routevalidator_validate",
"customer_index_handlebatchdelete",
"dept_index_catch", "dept_index_catch",
"list_donationauditdialog_handlesubmit", "list_donationauditdialog_handlesubmit",
"list_donationauditdialog_resetform", "list_donationauditdialog_resetform",
@@ -506,6 +504,7 @@
"post_index_expandpostbinddepttree", "post_index_expandpostbinddepttree",
"post_index_findpostbinddeptnodebyid", "post_index_findpostbinddeptnodebyid",
"post_index_handleview", "post_index_handleview",
"process_route_index_if",
"process_route_index_set", "process_route_index_set",
"production_work_order_stepdetailpanel_for", "production_work_order_stepdetailpanel_for",
"role_index_walk", "role_index_walk",
@@ -540,6 +539,7 @@
"utils_tree_path_resolvetreepathdisplay", "utils_tree_path_resolvetreepathdisplay",
"utils_tree_path_ts", "utils_tree_path_ts",
"views_operations_storage_facility_index_vue", "views_operations_storage_facility_index_vue",
"views_production_process_route_index_vue",
"views_production_production_work_order_stepdetailpanel_vue", "views_production_production_work_order_stepdetailpanel_vue",
"views_system_post_index_vue", "views_system_post_index_vue",
"views_system_role_index_vue" "views_system_role_index_vue"
@@ -577,6 +577,7 @@
"api_production_work_order_ts", "api_production_work_order_ts",
"collection_region_index_handleadd", "collection_region_index_handleadd",
"collection_region_index_handleaddhospital", "collection_region_index_handleaddhospital",
"collection_region_index_handlebatchdeletehospital",
"collection_region_index_handledelete", "collection_region_index_handledelete",
"collection_region_index_handledeletehospital", "collection_region_index_handledeletehospital",
"collection_region_index_handleedit", "collection_region_index_handleedit",
@@ -713,6 +714,99 @@
"views_system_site_index_vue" "views_system_site_index_vue"
], ],
"8": [ "8": [
"category_index_catch",
"category_index_collectids",
"category_index_handlecategorytableselectionchange",
"category_index_handleview",
"components_core_layouts_art_settings_panel_composables_usesettingshandlers_ts",
"components_core_layouts_art_settings_panel_composables_usesettingspanel_ts",
"components_core_layouts_art_settings_panel_composables_usesettingsstate_ts",
"composables_usesettingshandlers_usesettingshandlers",
"composables_usesettingspanel_usesettingspanel",
"composables_usesettingsstate_usesettingsstate",
"core_componentloader_componentloader",
"core_componentloader_componentloader_constructor",
"core_componentloader_componentloader_createemptycomponent",
"core_componentloader_componentloader_createerrorcomponent",
"core_componentloader_componentloader_load",
"core_componentloader_componentloader_loadiframe",
"core_componentloader_componentloader_loadlayout",
"core_iframeroutemanager_iframeroutemanager_add",
"core_iframeroutemanager_iframeroutemanager_load",
"core_routepermissionvalidator_routepermissionvalidator",
"core_routepermissionvalidator_routepermissionvalidator_buildmenupathset",
"core_routepermissionvalidator_routepermissionvalidator_checkpathprefix",
"core_routepermissionvalidator_routepermissionvalidator_haspermission",
"core_routepermissionvalidator_routepermissionvalidator_isdynamicroutematch",
"core_routepermissionvalidator_routepermissionvalidator_matchroute",
"core_routepermissionvalidator_routepermissionvalidator_validatepath",
"core_routetransformer_routetransformer",
"core_routetransformer_routetransformer_extractfirstsegment",
"core_routetransformer_routetransformer_handlefirstlevelroute",
"core_routetransformer_routetransformer_handleiframeroute",
"core_routetransformer_routetransformer_handlenormalroute",
"core_routetransformer_routetransformer_isfirstlevelroute",
"core_routetransformer_routetransformer_transform",
"core_routevalidator_routevalidator_loglayouterror",
"core_useceremony_useceremony",
"core_usetheme_initializetheme",
"core_usetheme_usetheme",
"hooks_core_useceremony_ts",
"hooks_core_usetheme_ts",
"router_core_componentloader_ts",
"router_core_routepermissionvalidator_ts",
"router_core_routetransformer_ts",
"ui_animation_themeanimation",
"ui_animation_toggletheme",
"ui_animation_toggletransition",
"utils_ui_animation_ts",
"views_system_category_index_vue"
],
"9": [
"socket_index_websocketclient",
"socket_index_websocketclient_calculatereconnectdelay",
"socket_index_websocketclient_clearalltimers",
"socket_index_websocketclient_clearconnectiontimers",
"socket_index_websocketclient_cleartimer",
"socket_index_websocketclient_close",
"socket_index_websocketclient_closecurrentsocketforreconnect",
"socket_index_websocketclient_connect",
"socket_index_websocketclient_connectionstatustext",
"socket_index_websocketclient_constructor",
"socket_index_websocketclient_destroyinstance",
"socket_index_websocketclient_flushmessagequeue",
"socket_index_websocketclient_getinstance",
"socket_index_websocketclient_getreadystatetext",
"socket_index_websocketclient_handleclose",
"socket_index_websocketclient_handleconnectiontimeout",
"socket_index_websocketclient_handleerror",
"socket_index_websocketclient_handlemessage",
"socket_index_websocketclient_handleopen",
"socket_index_websocketclient_init",
"socket_index_websocketclient_iswebsocketconnected",
"socket_index_websocketclient_reconnect",
"socket_index_websocketclient_resetheartbeat",
"socket_index_websocketclient_send",
"socket_index_websocketclient_startheartbeat",
"socket_index_websocketclient_startping",
"table_tablecache_tablecache",
"table_tablecache_tablecache_cleanupexpired",
"table_tablecache_tablecache_clear",
"table_tablecache_tablecache_clearbytags",
"table_tablecache_tablecache_clearcurrentsearch",
"table_tablecache_tablecache_clearpagination",
"table_tablecache_tablecache_constructor",
"table_tablecache_tablecache_evictlru",
"table_tablecache_tablecache_generatekey",
"table_tablecache_tablecache_generatetags",
"table_tablecache_tablecache_get",
"table_tablecache_tablecache_getstats",
"table_tablecache_tablecache_log",
"table_tablecache_tablecache_set",
"utils_socket_index_ts",
"utils_table_tablecache_ts"
],
"10": [
"components_business_sample_production_info_cards_index_vue", "components_business_sample_production_info_cards_index_vue",
"components_business_sample_qc_info_cards_index_vue", "components_business_sample_qc_info_cards_index_vue",
"components_business_sample_storage_release_info_index_vue", "components_business_sample_storage_release_info_index_vue",
@@ -727,7 +821,6 @@
"list_donationviewdialog_sampletypename", "list_donationviewdialog_sampletypename",
"list_donationviewdialog_sitename", "list_donationviewdialog_sitename",
"list_donationviewdialog_unitname", "list_donationviewdialog_unitname",
"process_route_index_if",
"protocol_protocolattachmentreadonly_resolvefileurl", "protocol_protocolattachmentreadonly_resolvefileurl",
"protocol_protocolviewdialog_dash", "protocol_protocolviewdialog_dash",
"protocol_protocolviewdialog_financeconfirmattachmentfiles", "protocol_protocolviewdialog_financeconfirmattachmentfiles",
@@ -752,61 +845,12 @@
"protocol_protocolviewdialog_showrefundfinanceconfirm", "protocol_protocolviewdialog_showrefundfinanceconfirm",
"protocol_protocolviewdialog_storagecertmakestatuslabel", "protocol_protocolviewdialog_storagecertmakestatuslabel",
"protocol_protocolviewdialog_storagecertmakestatustagtype", "protocol_protocolviewdialog_storagecertmakestatustagtype",
"sample_production_info_cards_index_inputtypelabel",
"sample_production_info_cards_index_outputtypelabel",
"sample_production_info_cards_index_productiontaskstatuslabel", "sample_production_info_cards_index_productiontaskstatuslabel",
"views_cell_storage_protocol_protocolattachmentreadonly_vue", "views_cell_storage_protocol_protocolattachmentreadonly_vue",
"views_cell_storage_protocol_protocolviewdialog_vue", "views_cell_storage_protocol_protocolviewdialog_vue",
"views_production_process_route_index_vue",
"views_research_donation_list_donationviewdialog_vue" "views_research_donation_list_donationviewdialog_vue"
], ],
"9": [ "11": [
"category_index_catch",
"category_index_collectids",
"category_index_handlecategorytableselectionchange",
"category_index_handleview",
"components_core_layouts_art_settings_panel_composables_usesettingshandlers_ts",
"components_core_layouts_art_settings_panel_composables_usesettingspanel_ts",
"components_core_layouts_art_settings_panel_composables_usesettingsstate_ts",
"composables_usesettingshandlers_usesettingshandlers",
"composables_usesettingspanel_usesettingspanel",
"composables_usesettingsstate_usesettingsstate",
"core_iframeroutemanager_iframeroutemanager_add",
"core_routepermissionvalidator_routepermissionvalidator",
"core_routepermissionvalidator_routepermissionvalidator_buildmenupathset",
"core_routepermissionvalidator_routepermissionvalidator_checkpathprefix",
"core_routepermissionvalidator_routepermissionvalidator_haspermission",
"core_routepermissionvalidator_routepermissionvalidator_isdynamicroutematch",
"core_routepermissionvalidator_routepermissionvalidator_matchroute",
"core_routepermissionvalidator_routepermissionvalidator_validatepath",
"core_routevalidator_routevalidator_loglayouterror",
"core_useceremony_useceremony",
"core_usetheme_initializetheme",
"core_usetheme_usetheme",
"hooks_core_useceremony_ts",
"hooks_core_usetheme_ts",
"router_core_routepermissionvalidator_ts",
"table_tablecache_tablecache",
"table_tablecache_tablecache_cleanupexpired",
"table_tablecache_tablecache_clear",
"table_tablecache_tablecache_clearbytags",
"table_tablecache_tablecache_clearcurrentsearch",
"table_tablecache_tablecache_clearpagination",
"table_tablecache_tablecache_constructor",
"table_tablecache_tablecache_evictlru",
"table_tablecache_tablecache_generatekey",
"table_tablecache_tablecache_generatetags",
"table_tablecache_tablecache_get",
"table_tablecache_tablecache_getstats",
"table_tablecache_tablecache_set",
"ui_animation_themeanimation",
"ui_animation_toggletheme",
"ui_animation_toggletransition",
"utils_table_tablecache_ts",
"utils_ui_animation_ts",
"views_system_category_index_vue"
],
"10": [
"locales_index_getdefaultlanguage", "locales_index_getdefaultlanguage",
"locales_index_ts", "locales_index_ts",
"storage_storage_checkstoragecompatibility", "storage_storage_checkstoragecompatibility",
@@ -845,7 +889,7 @@
"utils_storage_storage_key_manager_ts", "utils_storage_storage_key_manager_ts",
"utils_storage_storage_ts" "utils_storage_storage_ts"
], ],
"11": [ "12": [
"http_crypto_base64tobytes", "http_crypto_base64tobytes",
"http_crypto_bytestobase64", "http_crypto_bytestobase64",
"http_crypto_decryptjson", "http_crypto_decryptjson",
@@ -884,37 +928,6 @@
"utils_http_error_ts", "utils_http_error_ts",
"utils_http_index_ts" "utils_http_index_ts"
], ],
"12": [
"api_material_fetchbatchstockinmaterial",
"api_material_fetchbatchstockoutmaterial",
"api_material_fetchcreatematerial",
"api_material_fetchdeletematerial",
"api_material_fetchmateriallist",
"api_material_fetchmaterialoptions",
"api_material_fetchmaterialstockloglist",
"api_material_fetchstockinmaterial",
"api_material_fetchstockoutmaterial",
"api_material_fetchupdatematerial",
"api_material_ts",
"api_qc_third_party_company_fetchcreateqcthirdpartycompany",
"api_qc_third_party_company_fetchdeleteqcthirdpartycompany",
"api_qc_third_party_company_fetchqcthirdpartycompanylist",
"api_qc_third_party_company_fetchqcthirdpartycompanyoptions",
"api_qc_third_party_company_fetchupdateqcthirdpartycompany",
"api_qc_third_party_company_ts",
"api_research_donation_fetchbatchdeleteresearchdonation",
"api_research_donation_fetchconvertfromstorage",
"api_research_donation_fetchconverttostorage",
"api_research_donation_fetchcreateresearchdonation",
"api_research_donation_fetchdeleteresearchdonation",
"api_research_donation_fetchdonationstatuschange",
"api_research_donation_fetchresearchdonationauditlist",
"api_research_donation_fetchresearchdonationdetail",
"api_research_donation_fetchresearchdonationlist",
"api_research_donation_fetchsubmitdonationaudit",
"api_research_donation_fetchupdateresearchdonation",
"api_research_donation_ts"
],
"13": [ "13": [
"art_screen_lock_index_disabledevtools", "art_screen_lock_index_disabledevtools",
"art_screen_lock_index_handledialogopen", "art_screen_lock_index_handledialogopen",
@@ -946,36 +959,6 @@
"utils_sys_upgrade_ts" "utils_sys_upgrade_ts"
], ],
"14": [ "14": [
"socket_index_websocketclient",
"socket_index_websocketclient_calculatereconnectdelay",
"socket_index_websocketclient_clearalltimers",
"socket_index_websocketclient_clearconnectiontimers",
"socket_index_websocketclient_cleartimer",
"socket_index_websocketclient_close",
"socket_index_websocketclient_closecurrentsocketforreconnect",
"socket_index_websocketclient_connect",
"socket_index_websocketclient_connectionstatustext",
"socket_index_websocketclient_constructor",
"socket_index_websocketclient_destroyinstance",
"socket_index_websocketclient_flushmessagequeue",
"socket_index_websocketclient_getinstance",
"socket_index_websocketclient_getreadystatetext",
"socket_index_websocketclient_handleclose",
"socket_index_websocketclient_handleconnectiontimeout",
"socket_index_websocketclient_handleerror",
"socket_index_websocketclient_handlemessage",
"socket_index_websocketclient_handleopen",
"socket_index_websocketclient_init",
"socket_index_websocketclient_iswebsocketconnected",
"socket_index_websocketclient_reconnect",
"socket_index_websocketclient_resetheartbeat",
"socket_index_websocketclient_send",
"socket_index_websocketclient_startheartbeat",
"socket_index_websocketclient_startping",
"table_tablecache_tablecache_log",
"utils_socket_index_ts"
],
"15": [
"api_admin_fetchcreatemenu", "api_admin_fetchcreatemenu",
"api_admin_fetchdeletemenu", "api_admin_fetchdeletemenu",
"api_admin_fetchmenutree", "api_admin_fetchmenutree",
@@ -1005,7 +988,7 @@
"views_system_dept_index_vue", "views_system_dept_index_vue",
"views_system_menu_index_vue" "views_system_menu_index_vue"
], ],
"16": [ "15": [
"api_admin_fetchgetmenulist", "api_admin_fetchgetmenulist",
"api_auth_fetchgetmenucodes", "api_auth_fetchgetmenucodes",
"api_auth_fetchlogin", "api_auth_fetchlogin",
@@ -1034,7 +1017,7 @@
"utils_loginrsa_buildwebencryptedloginbody", "utils_loginrsa_buildwebencryptedloginbody",
"utils_loginrsa_ts" "utils_loginrsa_ts"
], ],
"17": [ "16": [
"api_ethnic_fetchethniclist", "api_ethnic_fetchethniclist",
"api_ethnic_ts", "api_ethnic_ts",
"list_donationformdialog_addsample", "list_donationformdialog_addsample",
@@ -1063,7 +1046,7 @@
"views_cell_storage_protocol_protocolformdialog_vue", "views_cell_storage_protocol_protocolformdialog_vue",
"views_research_donation_list_donationformdialog_vue" "views_research_donation_list_donationformdialog_vue"
], ],
"18": [ "17": [
"business_highlight_addcopybutton", "business_highlight_addcopybutton",
"business_highlight_highlightcode", "business_highlight_highlightcode",
"business_highlight_insertlinenumbers", "business_highlight_insertlinenumbers",
@@ -1087,7 +1070,7 @@
"directives_index_setupglobdirectives", "directives_index_setupglobdirectives",
"directives_index_ts" "directives_index_ts"
], ],
"19": [ "18": [
"api_admin_fetchcreateuser", "api_admin_fetchcreateuser",
"api_admin_fetchdeleteuser", "api_admin_fetchdeleteuser",
"api_admin_fetchresetpassword", "api_admin_fetchresetpassword",
@@ -1109,6 +1092,27 @@
"user_index_resetform", "user_index_resetform",
"views_system_user_index_vue" "views_system_user_index_vue"
], ],
"19": [
"api_collection_protocol_fetchcollectionprotocolauditlist",
"api_collection_protocol_fetchcollectionprotocoldetail",
"api_collection_protocol_fetchcollectionprotocollist",
"api_collection_protocol_fetchcreatecollectionprotocol",
"api_collection_protocol_fetchdeletecollectionprotocol",
"api_collection_protocol_fetchpaymentdetaillist",
"api_collection_protocol_fetchreceiptconfirmedlist",
"api_collection_protocol_fetchreceiptconfirmlist",
"api_collection_protocol_fetchreceiptconfirmsubmit",
"api_collection_protocol_fetchrefundconfirmedlist",
"api_collection_protocol_fetchrefundconfirmlist",
"api_collection_protocol_fetchrefundconfirmsubmit",
"api_collection_protocol_fetchsubmitprotocolaudit",
"api_collection_protocol_fetchsubmitreceiptfinance",
"api_collection_protocol_fetchsubmitreceiptfinancebatch",
"api_collection_protocol_fetchsubmitrefundfinance",
"api_collection_protocol_fetchsubmitrefundfinancebatch",
"api_collection_protocol_fetchupdatecollectionprotocol",
"api_collection_protocol_ts"
],
"20": [ "20": [
"api_workflow_fetchapprovetask", "api_workflow_fetchapprovetask",
"api_workflow_fetchbusinessalltasks", "api_workflow_fetchbusinessalltasks",
@@ -1150,25 +1154,6 @@
"utils_table_tableutils_ts" "utils_table_tableutils_ts"
], ],
"22": [ "22": [
"core_componentloader_componentloader",
"core_componentloader_componentloader_constructor",
"core_componentloader_componentloader_createemptycomponent",
"core_componentloader_componentloader_createerrorcomponent",
"core_componentloader_componentloader_load",
"core_componentloader_componentloader_loadiframe",
"core_componentloader_componentloader_loadlayout",
"core_iframeroutemanager_iframeroutemanager_load",
"core_routetransformer_routetransformer",
"core_routetransformer_routetransformer_extractfirstsegment",
"core_routetransformer_routetransformer_handlefirstlevelroute",
"core_routetransformer_routetransformer_handleiframeroute",
"core_routetransformer_routetransformer_handlenormalroute",
"core_routetransformer_routetransformer_isfirstlevelroute",
"core_routetransformer_routetransformer_transform",
"router_core_componentloader_ts",
"router_core_routetransformer_ts"
],
"23": [
"core_usechart_usechart", "core_usechart_usechart",
"core_usechart_usechartcomponent", "core_usechart_usechartcomponent",
"core_usechart_usechartops", "core_usechart_usechartops",
@@ -1186,13 +1171,12 @@
"ui_colors_setelementthemecolor", "ui_colors_setelementthemecolor",
"utils_ui_colors_ts" "utils_ui_colors_ts"
], ],
"24": [ "23": [
"api_admin_fetchcreatecustomer", "api_admin_fetchcreatecustomer",
"api_admin_fetchcustomerlist", "api_admin_fetchcustomerlist",
"api_admin_fetchdeletecustomer", "api_admin_fetchdeletecustomer",
"api_admin_fetchupdatecustomer", "api_admin_fetchupdatecustomer",
"customer_index_handleadd", "customer_index_handleadd",
"customer_index_handlebatchdelete",
"customer_index_handledelete", "customer_index_handledelete",
"customer_index_handleedit", "customer_index_handleedit",
"customer_index_handlereset", "customer_index_handlereset",
@@ -1204,7 +1188,7 @@
"customer_index_resetform", "customer_index_resetform",
"views_basic_info_customer_index_vue" "views_basic_info_customer_index_vue"
], ],
"25": [ "24": [
"form_validator_getpasswordstrength", "form_validator_getpasswordstrength",
"form_validator_trimspaces", "form_validator_trimspaces",
"form_validator_validateaccount", "form_validator_validateaccount",
@@ -1219,7 +1203,34 @@
"form_validator_validateurl", "form_validator_validateurl",
"utils_form_validator_ts" "utils_form_validator_ts"
], ],
"25": [
"api_research_donation_fetchbatchdeleteresearchdonation",
"api_research_donation_fetchconvertfromstorage",
"api_research_donation_fetchconverttostorage",
"api_research_donation_fetchcreateresearchdonation",
"api_research_donation_fetchdeleteresearchdonation",
"api_research_donation_fetchdonationstatuschange",
"api_research_donation_fetchresearchdonationauditlist",
"api_research_donation_fetchresearchdonationdetail",
"api_research_donation_fetchresearchdonationlist",
"api_research_donation_fetchsubmitdonationaudit",
"api_research_donation_fetchupdateresearchdonation",
"api_research_donation_ts"
],
"26": [ "26": [
"api_material_fetchbatchstockinmaterial",
"api_material_fetchbatchstockoutmaterial",
"api_material_fetchcreatematerial",
"api_material_fetchdeletematerial",
"api_material_fetchmateriallist",
"api_material_fetchmaterialoptions",
"api_material_fetchmaterialstockloglist",
"api_material_fetchstockinmaterial",
"api_material_fetchstockoutmaterial",
"api_material_fetchupdatematerial",
"api_material_ts"
],
"27": [
"api_qc_material_fetchbatchstockinqcmaterial", "api_qc_material_fetchbatchstockinqcmaterial",
"api_qc_material_fetchbatchstockoutqcmaterial", "api_qc_material_fetchbatchstockoutqcmaterial",
"api_qc_material_fetchcreateqcmaterial", "api_qc_material_fetchcreateqcmaterial",
@@ -1231,7 +1242,7 @@
"api_qc_material_fetchupdateqcmaterial", "api_qc_material_fetchupdateqcmaterial",
"api_qc_material_ts" "api_qc_material_ts"
], ],
"27": [ "28": [
"art_count_to_index_clamp", "art_count_to_index_clamp",
"art_count_to_index_currentvalue", "art_count_to_index_currentvalue",
"art_count_to_index_formatnumber", "art_count_to_index_formatnumber",
@@ -1242,7 +1253,7 @@
"art_count_to_index_targetvalue", "art_count_to_index_targetvalue",
"components_core_text_effect_art_count_to_index_vue" "components_core_text_effect_art_count_to_index_vue"
], ],
"28": [ "29": [
"sys_error_handle_isignorablescripterror", "sys_error_handle_isignorablescripterror",
"sys_error_handle_normalizeerrormessage", "sys_error_handle_normalizeerrormessage",
"sys_error_handle_registerpromiseerrorhandler", "sys_error_handle_registerpromiseerrorhandler",
@@ -1252,7 +1263,7 @@
"sys_error_handle_vueerrorhandler", "sys_error_handle_vueerrorhandler",
"utils_sys_error_handle_ts" "utils_sys_error_handle_ts"
], ],
"29": [ "30": [
"core_usetableheight_tableheightcalculator", "core_usetableheight_tableheightcalculator",
"core_usetableheight_tableheightcalculator_calculate", "core_usetableheight_tableheightcalculator_calculate",
"core_usetableheight_tableheightcalculator_calculateoffset", "core_usetableheight_tableheightcalculator_calculateoffset",
@@ -1262,7 +1273,7 @@
"core_usetableheight_usetableheight", "core_usetableheight_usetableheight",
"hooks_core_usetableheight_ts" "hooks_core_usetableheight_ts"
], ],
"30": [ "31": [
"app_vue", "app_vue",
"main_ts", "main_ts",
"src_app_refreshbuttonautoicons", "src_app_refreshbuttonautoicons",
@@ -1271,15 +1282,6 @@
"src_main_masksecret", "src_main_masksecret",
"utils_sys_console_ts" "utils_sys_console_ts"
], ],
"31": [
"api_leave_fetchcreateleave",
"api_leave_fetchdeleteleave",
"api_leave_fetchleavedetail",
"api_leave_fetchleavelist",
"api_leave_fetchsubmitleave",
"api_leave_fetchupdateleave",
"api_leave_ts"
],
"32": [ "32": [
"utils_protocol_payment_labels_formatpaymentamount", "utils_protocol_payment_labels_formatpaymentamount",
"utils_protocol_payment_labels_formatpaymentduedate", "utils_protocol_payment_labels_formatpaymentduedate",
@@ -1289,12 +1291,12 @@
"utils_protocol_payment_labels_ts" "utils_protocol_payment_labels_ts"
], ],
"33": [ "33": [
"api_sample_reception_check_item_fetchcreatesamplereceptioncheckitem", "components_business_production_task_view_dialog_index_vue",
"api_sample_reception_check_item_fetchdeletesamplereceptioncheckitem", "production_task_view_dialog_index_formatdateonly",
"api_sample_reception_check_item_fetchsamplereceptioncheckitemlist", "production_task_view_dialog_index_productstatuslabel",
"api_sample_reception_check_item_fetchsamplereceptioncheckitemsactive", "production_task_view_dialog_index_productstatustagtype",
"api_sample_reception_check_item_fetchupdatesamplereceptioncheckitem", "production_task_view_dialog_index_taskstatuslabel",
"api_sample_reception_check_item_ts" "production_task_view_dialog_index_tasktypelabel"
], ],
"34": [ "34": [
"api_qc_third_party_item_fetchcreateqcthirdpartyitem", "api_qc_third_party_item_fetchcreateqcthirdpartyitem",
@@ -1305,6 +1307,14 @@
"api_qc_third_party_item_ts" "api_qc_third_party_item_ts"
], ],
"35": [ "35": [
"api_qc_third_party_company_fetchcreateqcthirdpartycompany",
"api_qc_third_party_company_fetchdeleteqcthirdpartycompany",
"api_qc_third_party_company_fetchqcthirdpartycompanylist",
"api_qc_third_party_company_fetchqcthirdpartycompanyoptions",
"api_qc_third_party_company_fetchupdateqcthirdpartycompany",
"api_qc_third_party_company_ts"
],
"36": [
"api_qc_lab_test_item_fetchcreateqclabtestitem", "api_qc_lab_test_item_fetchcreateqclabtestitem",
"api_qc_lab_test_item_fetchdeleteqclabtestitem", "api_qc_lab_test_item_fetchdeleteqclabtestitem",
"api_qc_lab_test_item_fetchqclabtestitemlist", "api_qc_lab_test_item_fetchqclabtestitemlist",
@@ -1312,7 +1322,7 @@
"api_qc_lab_test_item_fetchupdateqclabtestitem", "api_qc_lab_test_item_fetchupdateqclabtestitem",
"api_qc_lab_test_item_ts" "api_qc_lab_test_item_ts"
], ],
"36": [ "37": [
"api_qc_task_fetchcompleteqctask", "api_qc_task_fetchcompleteqctask",
"api_qc_task_fetchqctaskdetail", "api_qc_task_fetchqctaskdetail",
"api_qc_task_fetchqctasklist", "api_qc_task_fetchqctasklist",
@@ -1320,7 +1330,7 @@
"api_qc_task_fetchupdateqctaskattachments", "api_qc_task_fetchupdateqctaskattachments",
"api_qc_task_ts" "api_qc_task_ts"
], ],
"37": [ "38": [
"production_work_order_usetaskstepeditor_fromapiflag", "production_work_order_usetaskstepeditor_fromapiflag",
"production_work_order_usetaskstepeditor_normalizestepsubtables", "production_work_order_usetaskstepeditor_normalizestepsubtables",
"production_work_order_usetaskstepeditor_parseordernum", "production_work_order_usetaskstepeditor_parseordernum",
@@ -1328,7 +1338,7 @@
"production_work_order_usetaskstepeditor_usetaskstepeditor", "production_work_order_usetaskstepeditor_usetaskstepeditor",
"views_production_production_work_order_usetaskstepeditor_ts" "views_production_production_work_order_usetaskstepeditor_ts"
], ],
"38": [ "39": [
"sample_reception_index_isetatodayorearlier", "sample_reception_index_isetatodayorearlier",
"sample_reception_index_pad", "sample_reception_index_pad",
"sample_reception_index_parseetalocaldate", "sample_reception_index_parseetalocaldate",
@@ -1336,25 +1346,19 @@
"sample_reception_index_startoflocalday", "sample_reception_index_startoflocalday",
"views_quality_inspection_sample_reception_index_vue" "views_quality_inspection_sample_reception_index_vue"
], ],
"39": [ "40": [
"art_global_search_index_focusinput", "art_global_search_index_focusinput",
"art_global_search_index_handlekeydown", "art_global_search_index_handlekeydown",
"art_global_search_index_if", "art_global_search_index_if",
"art_global_search_index_search", "art_global_search_index_search",
"components_core_layouts_art_global_search_index_vue" "components_core_layouts_art_global_search_index_vue"
], ],
"40": [ "41": [
"art_sidebar_menu_index_if", "art_sidebar_menu_index_if",
"art_sidebar_menu_index_logsidebarmenu", "art_sidebar_menu_index_logsidebarmenu",
"components_core_layouts_art_menus_art_sidebar_menu_index_vue", "components_core_layouts_art_menus_art_sidebar_menu_index_vue",
"components_core_layouts_art_menus_art_sidebar_menu_widget_sidebarsubmenu_vue" "components_core_layouts_art_menus_art_sidebar_menu_widget_sidebarsubmenu_vue"
], ],
"41": [
"api_storage_entry_sms_notification_fetchgeneratestorageentrysms",
"api_storage_entry_sms_notification_fetchstorageentrysmslist",
"api_storage_entry_sms_notification_fetchtogglestorageentrysmsnotified",
"api_storage_entry_sms_notification_ts"
],
"42": [ "42": [
"api_sample_sms_notification_fetchgeneratesms", "api_sample_sms_notification_fetchgeneratesms",
"api_sample_sms_notification_fetchsamplesmsnotificationlist", "api_sample_sms_notification_fetchsamplesmsnotificationlist",
@@ -2029,39 +2033,39 @@
"6": 0.04, "6": 0.04,
"7": 0.05, "7": 0.05,
"8": 0.06, "8": 0.06,
"9": 0.06, "9": 0.1,
"10": 0.09, "10": 0.07,
"11": 0.09, "11": 0.09,
"12": 0.06, "12": 0.09,
"13": 0.11, "13": 0.11,
"14": 0.18, "14": 0.1,
"15": 0.1, "15": 0.1,
"16": 0.1, "16": 0.1,
"17": 0.1, "17": 0.12,
"18": 0.12, "18": 0.14,
"19": 0.14, "19": 0.11,
"20": 0.12, "20": 0.12,
"21": 0.16, "21": 0.16,
"22": 0.2, "22": 0.27,
"23": 0.27, "23": 0.18,
"24": 0.17, "24": 0.15,
"25": 0.15, "25": 0.17,
"26": 0.2, "26": 0.18,
"27": 0.22, "27": 0.2,
"28": 0.39, "28": 0.22,
"29": 0.36, "29": 0.39,
"30": 0.33, "30": 0.36,
"31": 0.29, "31": 0.33,
"32": 0.47, "32": 0.47,
"33": 0.33, "33": 0.33,
"34": 0.33, "34": 0.33,
"35": 0.33, "35": 0.33,
"36": 0.33, "36": 0.33,
"37": 0.33, "37": 0.33,
"38": 0.53, "38": 0.33,
"39": 0.5, "39": 0.53,
"40": 0.67, "40": 0.5,
"41": 0.5, "41": 0.67,
"42": 0.5, "42": 0.5,
"43": 1.0, "43": 1.0,
"44": 0.67, "44": 0.67,
@@ -2322,15 +2326,15 @@
], ],
"surprises": [ "surprises": [
{ {
"source": "handleBatchDelete()", "source": "handleBatchDeleteHospital()",
"target": "withFullscreenLoading()", "target": "withFullscreenLoading()",
"source_files": [ "source_files": [
"views/basic-info/customer/index.vue", "views/basic-info/collection-region/index.vue",
"utils/fullscreen-loading.ts" "utils/fullscreen-loading.ts"
], ],
"confidence": "INFERRED", "confidence": "INFERRED",
"relation": "calls", "relation": "calls",
"why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `handleBatchDelete()` unexpectedly reaches hub `withFullscreenLoading()`" "why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `handleBatchDeleteHospital()` unexpectedly reaches hub `withFullscreenLoading()`"
}, },
{ {
"source": "handleUnauthorizedResponse()", "source": "handleUnauthorizedResponse()",
@@ -2344,37 +2348,37 @@
"why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchRefreshToken()` unexpectedly reaches hub `handleUnauthorizedResponse()`" "why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchRefreshToken()` unexpectedly reaches hub `handleUnauthorizedResponse()`"
}, },
{ {
"source": "fetchLeaveList()", "source": "fetchConsumableList()",
"target": "get()", "target": "get()",
"source_files": [ "source_files": [
"api/leave.ts", "api/production.ts",
"views/production/process-route/index.vue" "views/production/process-route/index.vue"
], ],
"confidence": "INFERRED", "confidence": "INFERRED",
"relation": "calls", "relation": "calls",
"why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchLeaveList()` unexpectedly reaches hub `get()`" "why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchConsumableList()` unexpectedly reaches hub `get()`"
}, },
{ {
"source": "fetchLeaveDetail()", "source": "fetchAllConsumables()",
"target": "get()", "target": "get()",
"source_files": [ "source_files": [
"api/leave.ts", "api/production.ts",
"views/production/process-route/index.vue" "views/production/process-route/index.vue"
], ],
"confidence": "INFERRED", "confidence": "INFERRED",
"relation": "calls", "relation": "calls",
"why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchLeaveDetail()` unexpectedly reaches hub `get()`" "why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchAllConsumables()` unexpectedly reaches hub `get()`"
}, },
{ {
"source": "fetchSampleReceptionCheckItemList()", "source": "fetchReagentList()",
"target": "get()", "target": "get()",
"source_files": [ "source_files": [
"api/sample-reception-check-item.ts", "api/production.ts",
"views/production/process-route/index.vue" "views/production/process-route/index.vue"
], ],
"confidence": "INFERRED", "confidence": "INFERRED",
"relation": "calls", "relation": "calls",
"why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchSampleReceptionCheckItemList()` unexpectedly reaches hub `get()`" "why": "inferred connection - not explicitly stated in source; connects across different repos/directories; bridges separate communities; peripheral node `fetchReagentList()` unexpectedly reaches hub `get()`"
} }
] ]
} }
+133 -60
View File
@@ -3442,21 +3442,7 @@
"label": "productionTaskStatusLabel()", "label": "productionTaskStatusLabel()",
"file_type": "code", "file_type": "code",
"source_file": "components/business/sample-production-info-cards/index.vue", "source_file": "components/business/sample-production-info-cards/index.vue",
"source_location": "L156" "source_location": "L153"
},
{
"id": "sample_production_info_cards_index_inputtypelabel",
"label": "inputTypeLabel()",
"file_type": "code",
"source_file": "components/business/sample-production-info-cards/index.vue",
"source_location": "L167"
},
{
"id": "sample_production_info_cards_index_outputtypelabel",
"label": "outputTypeLabel()",
"file_type": "code",
"source_file": "components/business/sample-production-info-cards/index.vue",
"source_location": "L174"
}, },
{ {
"id": "components_business_sample_storage_release_info_index_vue", "id": "components_business_sample_storage_release_info_index_vue",
@@ -3479,6 +3465,48 @@
"source_file": "components/business/system-view-dialog/index.vue", "source_file": "components/business/system-view-dialog/index.vue",
"source_location": "L1" "source_location": "L1"
}, },
{
"id": "components_business_production_task_view_dialog_index_vue",
"label": "index.vue",
"file_type": "code",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L1"
},
{
"id": "production_task_view_dialog_index_taskstatuslabel",
"label": "taskStatusLabel()",
"file_type": "code",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L155"
},
{
"id": "production_task_view_dialog_index_tasktypelabel",
"label": "taskTypeLabel()",
"file_type": "code",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L166"
},
{
"id": "production_task_view_dialog_index_productstatustagtype",
"label": "productStatusTagType()",
"file_type": "code",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L176"
},
{
"id": "production_task_view_dialog_index_productstatuslabel",
"label": "productStatusLabel()",
"file_type": "code",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L186"
},
{
"id": "production_task_view_dialog_index_formatdateonly",
"label": "formatDateOnly()",
"file_type": "code",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L196"
},
{ {
"id": "components_business_order_operate_dialog_bridge_index_vue", "id": "components_business_order_operate_dialog_bridge_index_vue",
"label": "index.vue", "label": "index.vue",
@@ -7852,77 +7880,77 @@
"label": "dash()", "label": "dash()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L755" "source_location": "L759"
}, },
{ {
"id": "list_donationviewdialog_formatmetric", "id": "list_donationviewdialog_formatmetric",
"label": "formatMetric()", "label": "formatMetric()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L760" "source_location": "L764"
}, },
{ {
"id": "list_donationviewdialog_formatymd", "id": "list_donationviewdialog_formatymd",
"label": "formatYmd()", "label": "formatYmd()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L766" "source_location": "L770"
}, },
{ {
"id": "list_donationviewdialog_formatym", "id": "list_donationviewdialog_formatym",
"label": "formatYm()", "label": "formatYm()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L772" "source_location": "L776"
}, },
{ {
"id": "list_donationviewdialog_auditordisplay", "id": "list_donationviewdialog_auditordisplay",
"label": "auditorDisplay()", "label": "auditorDisplay()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L778" "source_location": "L782"
}, },
{ {
"id": "list_donationviewdialog_sampletypename", "id": "list_donationviewdialog_sampletypename",
"label": "sampleTypeName()", "label": "sampleTypeName()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L784" "source_location": "L788"
}, },
{ {
"id": "list_donationviewdialog_unitname", "id": "list_donationviewdialog_unitname",
"label": "unitName()", "label": "unitName()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L788" "source_location": "L792"
}, },
{ {
"id": "list_donationviewdialog_sitename", "id": "list_donationviewdialog_sitename",
"label": "siteName()", "label": "siteName()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L792" "source_location": "L796"
}, },
{ {
"id": "list_donationviewdialog_expressname", "id": "list_donationviewdialog_expressname",
"label": "expressName()", "label": "expressName()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L796" "source_location": "L800"
}, },
{ {
"id": "list_donationviewdialog_samplereceptionchecklist", "id": "list_donationviewdialog_samplereceptionchecklist",
"label": "sampleReceptionCheckList()", "label": "sampleReceptionCheckList()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L800" "source_location": "L804"
}, },
{ {
"id": "list_donationviewdialog_if", "id": "list_donationviewdialog_if",
"label": "if()", "label": "if()",
"file_type": "code", "file_type": "code",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L822" "source_location": "L826"
}, },
{ {
"id": "views_research_donation_list_donationformdialog_vue", "id": "views_research_donation_list_donationformdialog_vue",
@@ -17219,25 +17247,52 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "components/business/sample-production-info-cards/index.vue", "source_file": "components/business/sample-production-info-cards/index.vue",
"source_location": "L156", "source_location": "L153",
"weight": 1.0 "weight": 1.0
}, },
{ {
"source": "components_business_sample_production_info_cards_index_vue", "source": "components_business_production_task_view_dialog_index_vue",
"target": "sample_production_info_cards_index_inputtypelabel", "target": "production_task_view_dialog_index_taskstatuslabel",
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "components/business/sample-production-info-cards/index.vue", "source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L167", "source_location": "L155",
"weight": 1.0 "weight": 1.0
}, },
{ {
"source": "components_business_sample_production_info_cards_index_vue", "source": "components_business_production_task_view_dialog_index_vue",
"target": "sample_production_info_cards_index_outputtypelabel", "target": "production_task_view_dialog_index_tasktypelabel",
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "components/business/sample-production-info-cards/index.vue", "source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L174", "source_location": "L166",
"weight": 1.0
},
{
"source": "components_business_production_task_view_dialog_index_vue",
"target": "production_task_view_dialog_index_productstatustagtype",
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L176",
"weight": 1.0
},
{
"source": "components_business_production_task_view_dialog_index_vue",
"target": "production_task_view_dialog_index_productstatuslabel",
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L186",
"weight": 1.0
},
{
"source": "components_business_production_task_view_dialog_index_vue",
"target": "production_task_view_dialog_index_formatdateonly",
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "components/business/production-task-view-dialog/index.vue",
"source_location": "L196",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23591,7 +23646,7 @@
"relation": "imports_from", "relation": "imports_from",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L582", "source_location": "L584",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23600,7 +23655,7 @@
"relation": "imports_from", "relation": "imports_from",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L583", "source_location": "L585",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23609,7 +23664,25 @@
"relation": "imports_from", "relation": "imports_from",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L584", "source_location": "L586",
"weight": 1.0
},
{
"source": "views_research_donation_list_donationviewdialog_vue",
"target": "components_business_sample_production_info_cards_index_vue",
"relation": "imports_from",
"confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L587",
"weight": 1.0
},
{
"source": "views_research_donation_list_donationviewdialog_vue",
"target": "components_business_sample_storage_release_info_index_vue",
"relation": "imports_from",
"confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L588",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23618,7 +23691,7 @@
"relation": "imports_from", "relation": "imports_from",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L585", "source_location": "L589",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23627,7 +23700,7 @@
"relation": "imports_from", "relation": "imports_from",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L590", "source_location": "L594",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23636,7 +23709,7 @@
"relation": "imports_from", "relation": "imports_from",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L599", "source_location": "L603",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23645,7 +23718,7 @@
"relation": "imports_from", "relation": "imports_from",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L600", "source_location": "L604",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23654,7 +23727,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L755", "source_location": "L759",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23663,7 +23736,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L760", "source_location": "L764",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23672,7 +23745,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L766", "source_location": "L770",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23681,7 +23754,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L772", "source_location": "L776",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23690,7 +23763,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L778", "source_location": "L782",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23699,7 +23772,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L784", "source_location": "L788",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23708,7 +23781,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L788", "source_location": "L792",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23717,7 +23790,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L792", "source_location": "L796",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23726,7 +23799,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L796", "source_location": "L800",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23735,7 +23808,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L800", "source_location": "L804",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23744,7 +23817,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L822", "source_location": "L826",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23753,7 +23826,7 @@
"relation": "calls", "relation": "calls",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L769", "source_location": "L773",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23762,7 +23835,7 @@
"relation": "calls", "relation": "calls",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L775", "source_location": "L779",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23771,7 +23844,7 @@
"relation": "calls", "relation": "calls",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L781", "source_location": "L785",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23780,7 +23853,7 @@
"relation": "calls", "relation": "calls",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L785", "source_location": "L789",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23789,7 +23862,7 @@
"relation": "calls", "relation": "calls",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L789", "source_location": "L793",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23798,7 +23871,7 @@
"relation": "calls", "relation": "calls",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L793", "source_location": "L797",
"weight": 1.0 "weight": 1.0
}, },
{ {
@@ -23807,7 +23880,7 @@
"relation": "calls", "relation": "calls",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "views/research-donation/list/DonationViewDialog.vue", "source_file": "views/research-donation/list/DonationViewDialog.vue",
"source_location": "L797", "source_location": "L801",
"weight": 1.0 "weight": 1.0
}, },
{ {
+67 -78
View File
@@ -1,10 +1,10 @@
# Graph Report - src (2026-05-24) # Graph Report - src (2026-05-24)
## Corpus Check ## Corpus Check
- Large corpus: 596 files · ~326,544 words. Semantic extraction will be expensive (many Claude tokens). Consider running on a subfolder, or use --no-semantic to run AST-only. - Large corpus: 597 files · ~327,181 words. Semantic extraction will be expensive (many Claude tokens). Consider running on a subfolder, or use --no-semantic to run AST-only.
## Summary ## Summary
- 1524 nodes · 1912 edges · 42 communities detected - 1528 nodes · 1917 edges · 41 communities detected
- Extraction: 78% EXTRACTED · 22% INFERRED · 0% AMBIGUOUS · INFERRED: 417 edges (avg confidence: 0.8) - Extraction: 78% EXTRACTED · 22% INFERRED · 0% AMBIGUOUS · INFERRED: 417 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output - Token cost: 0 input · 0 output
@@ -33,18 +33,17 @@
- [[_COMMUNITY_Community 21|Community 21]] - [[_COMMUNITY_Community 21|Community 21]]
- [[_COMMUNITY_Community 22|Community 22]] - [[_COMMUNITY_Community 22|Community 22]]
- [[_COMMUNITY_Community 23|Community 23]] - [[_COMMUNITY_Community 23|Community 23]]
- [[_COMMUNITY_Community 24|Community 24]] - [[_COMMUNITY_Community 25|Community 25]]
- [[_COMMUNITY_Community 26|Community 26]] - [[_COMMUNITY_Community 26|Community 26]]
- [[_COMMUNITY_Community 28|Community 28]] - [[_COMMUNITY_Community 27|Community 27]]
- [[_COMMUNITY_Community 29|Community 29]] - [[_COMMUNITY_Community 29|Community 29]]
- [[_COMMUNITY_Community 30|Community 30]] - [[_COMMUNITY_Community 30|Community 30]]
- [[_COMMUNITY_Community 31|Community 31]] - [[_COMMUNITY_Community 31|Community 31]]
- [[_COMMUNITY_Community 32|Community 32]] - [[_COMMUNITY_Community 32|Community 32]]
- [[_COMMUNITY_Community 33|Community 33]]
- [[_COMMUNITY_Community 34|Community 34]] - [[_COMMUNITY_Community 34|Community 34]]
- [[_COMMUNITY_Community 35|Community 35]] - [[_COMMUNITY_Community 35|Community 35]]
- [[_COMMUNITY_Community 36|Community 36]] - [[_COMMUNITY_Community 36|Community 36]]
- [[_COMMUNITY_Community 38|Community 38]] - [[_COMMUNITY_Community 37|Community 37]]
- [[_COMMUNITY_Community 39|Community 39]] - [[_COMMUNITY_Community 39|Community 39]]
- [[_COMMUNITY_Community 40|Community 40]] - [[_COMMUNITY_Community 40|Community 40]]
- [[_COMMUNITY_Community 41|Community 41]] - [[_COMMUNITY_Community 41|Community 41]]
@@ -65,22 +64,22 @@
10. `StorageConfig` - 10 edges 10. `StorageConfig` - 10 edges
## Surprising Connections (you probably didn't know these) ## Surprising Connections (you probably didn't know these)
- `handleBatchDelete()` --calls--> `withFullscreenLoading()` [INFERRED] - `handleBatchDeleteHospital()` --calls--> `withFullscreenLoading()` [INFERRED]
views/basic-info/customer/index.vue → utils/fullscreen-loading.ts views/basic-info/collection-region/index.vue → utils/fullscreen-loading.ts
- `handleUnauthorizedResponse()` --calls--> `fetchRefreshToken()` [INFERRED] - `handleUnauthorizedResponse()` --calls--> `fetchRefreshToken()` [INFERRED]
utils/http/index.ts → api/auth.ts utils/http/index.ts → api/auth.ts
- `fetchLeaveList()` --calls--> `get()` [INFERRED] - `fetchConsumableList()` --calls--> `get()` [INFERRED]
api/leave.ts → views/production/process-route/index.vue api/production.ts → views/production/process-route/index.vue
- `fetchLeaveDetail()` --calls--> `get()` [INFERRED] - `fetchAllConsumables()` --calls--> `get()` [INFERRED]
api/leave.ts → views/production/process-route/index.vue api/production.ts → views/production/process-route/index.vue
- `fetchSampleReceptionCheckItemList()` --calls--> `get()` [INFERRED] - `fetchReagentList()` --calls--> `get()` [INFERRED]
api/sample-reception-check-item.ts → views/production/process-route/index.vue api/production.ts → views/production/process-route/index.vue
## Communities ## Communities
### Community 0 - "Community 0" ### Community 0 - "Community 0"
Cohesion: 0.01 Cohesion: 0.01
Nodes (85): fetchActiveRegions(), fetchCategoryList(), fetchCategoryParameters(), fetchCellProductPriceList(), fetchCellProductSpecList(), fetchCellProductTypeList(), fetchCellSampleTypeList(), fetchChannelAgreementPrices() (+77 more) Nodes (82): fetchActiveRegions(), fetchCategoryList(), fetchCategoryParameters(), fetchCellProductPriceList(), fetchCellProductSpecList(), fetchCellProductTypeList(), fetchCellSampleTypeList(), fetchChannelAgreementPrices() (+74 more)
### Community 1 - "Community 1" ### Community 1 - "Community 1"
Cohesion: 0.03 Cohesion: 0.03
@@ -100,7 +99,7 @@ Nodes (40): fetchDeptTree(), fetchPostBoundUserIds(), FireworkSystem, reload(),
### Community 5 - "Community 5" ### Community 5 - "Community 5"
Cohesion: 0.04 Cohesion: 0.04
Nodes (33): fetchCollectionRegionList(), fetchCreateCollectionRegion(), fetchCreateHospital(), fetchDeleteCollectionRegion(), fetchDeleteHospital(), fetchHospitalList(), fetchUpdateCollectionRegion(), fetchUpdateHospital() (+25 more) Nodes (34): fetchCollectionRegionList(), fetchCreateCollectionRegion(), fetchCreateHospital(), fetchDeleteCollectionRegion(), fetchDeleteHospital(), fetchHospitalList(), fetchUpdateCollectionRegion(), fetchUpdateHospital() (+26 more)
### Community 6 - "Community 6" ### Community 6 - "Community 6"
Cohesion: 0.04 Cohesion: 0.04
@@ -112,52 +111,52 @@ Nodes (39): fetchAccessLogList(), fetchCleanRoomList(), fetchCreateAccessLog(),
### Community 8 - "Community 8" ### Community 8 - "Community 8"
Cohesion: 0.06 Cohesion: 0.06
Nodes (21): auditorDisplay(), dash(), expressName(), formatYm(), formatYmd(), sampleTypeName(), siteName(), unitName() (+13 more) Nodes (12): collectIds(), useSettingsHandlers(), useSettingsPanel(), useSettingsState(), ComponentLoader, RoutePermissionValidator, RouteTransformer, useCeremony() (+4 more)
### Community 9 - "Community 9" ### Community 9 - "Community 9"
Cohesion: 0.06 Cohesion: 0.1
Nodes (11): collectIds(), useSettingsHandlers(), useSettingsPanel(), useSettingsState(), RoutePermissionValidator, useCeremony(), useTheme(), TableCache (+3 more) Nodes (2): WebSocketClient, TableCache
### Community 10 - "Community 10" ### Community 10 - "Community 10"
Cohesion: 0.09 Cohesion: 0.07
Nodes (8): getDefaultLanguage(), checkStorageCompatibility(), StorageConfig, getSystemStorage(), getSysVersion(), StorageKeyManager, StorageCompatibilityManager, validateStorageData() Nodes (21): auditorDisplay(), dash(), expressName(), formatYm(), formatYmd(), sampleTypeName(), siteName(), unitName() (+13 more)
### Community 11 - "Community 11" ### Community 11 - "Community 11"
Cohesion: 0.09 Cohesion: 0.09
Nodes (29): base64ToBytes(), bytesToBase64(), decryptJson(), deriveKey(), encryptJson(), fromBase64Url(), hexToBytes(), sha256Hex() (+21 more) Nodes (8): getDefaultLanguage(), checkStorageCompatibility(), StorageConfig, getSystemStorage(), getSysVersion(), StorageKeyManager, StorageCompatibilityManager, validateStorageData()
### Community 12 - "Community 12" ### Community 12 - "Community 12"
Cohesion: 0.06 Cohesion: 0.09
Nodes (8): fetchMaterialList(), fetchMaterialOptions(), fetchMaterialStockLogList(), fetchQcThirdPartyCompanyList(), fetchQcThirdPartyCompanyOptions(), fetchResearchDonationAuditList(), fetchResearchDonationDetail(), fetchResearchDonationList() Nodes (29): base64ToBytes(), bytesToBase64(), decryptJson(), deriveKey(), encryptJson(), fromBase64Url(), hexToBytes(), sha256Hex() (+21 more)
### Community 13 - "Community 13" ### Community 13 - "Community 13"
Cohesion: 0.11 Cohesion: 0.11
Nodes (8): disableDevTools(), handleLock(), handleUnlock(), isMobile(), toLogin(), logOut(), systemUpgrade(), VersionManager Nodes (8): disableDevTools(), handleLock(), handleUnlock(), isMobile(), toLogin(), logOut(), systemUpgrade(), VersionManager
### Community 14 - "Community 14" ### Community 14 - "Community 14"
Cohesion: 0.18
Nodes (1): WebSocketClient
### Community 15 - "Community 15"
Cohesion: 0.1 Cohesion: 0.1
Nodes (16): fetchCreateMenu(), fetchDeleteMenu(), fetchMenuTree(), fetchUpdateMenu(), postorder(), preorder(), applyTreeExpand(), handleAdd() (+8 more) Nodes (16): fetchCreateMenu(), fetchDeleteMenu(), fetchMenuTree(), fetchUpdateMenu(), postorder(), preorder(), applyTreeExpand(), handleAdd() (+8 more)
### Community 16 - "Community 16" ### Community 15 - "Community 15"
Cohesion: 0.1 Cohesion: 0.1
Nodes (8): fetchGetMenuList(), fetchGetMenuCodes(), fetchLogin(), fetchRefreshToken(), MenuProcessor, useAppMode(), useAuth(), buildWebEncryptedLoginBody() Nodes (8): fetchGetMenuList(), fetchGetMenuCodes(), fetchLogin(), fetchRefreshToken(), MenuProcessor, useAppMode(), useAuth(), buildWebEncryptedLoginBody()
### Community 17 - "Community 17" ### Community 16 - "Community 16"
Cohesion: 0.1 Cohesion: 0.1
Nodes (13): fetchEthnicList(), addSample(), applyDonationBundleToForm(), confirmBatchTransportApply(), createEmptyTransport(), ensureDonationProtocolNoInOptions(), ensureEthnicOptionInList(), handleOpenForAdd() (+5 more) Nodes (13): fetchEthnicList(), addSample(), applyDonationBundleToForm(), confirmBatchTransportApply(), createEmptyTransport(), ensureDonationProtocolNoInOptions(), ensureEthnicOptionInList(), handleOpenForAdd() (+5 more)
### Community 18 - "Community 18" ### Community 17 - "Community 17"
Cohesion: 0.12 Cohesion: 0.12
Nodes (15): addCopyButton(), highlightCode(), insertLineNumbers(), isBlockProcessed(), markBlockAsProcessed(), processBlock(), setupHighlightDirective(), setupRippleDirective() (+7 more) Nodes (15): addCopyButton(), highlightCode(), insertLineNumbers(), isBlockProcessed(), markBlockAsProcessed(), processBlock(), setupHighlightDirective(), setupRippleDirective() (+7 more)
### Community 19 - "Community 19" ### Community 18 - "Community 18"
Cohesion: 0.14 Cohesion: 0.14
Nodes (17): fetchCreateUser(), fetchDeleteUser(), fetchResetPassword(), fetchUpdateUser(), fetchUserDetail(), formatUserDeptDisplay(), handleAdd(), handleDelete() (+9 more) Nodes (17): fetchCreateUser(), fetchDeleteUser(), fetchResetPassword(), fetchUpdateUser(), fetchUserDetail(), formatUserDeptDisplay(), handleAdd(), handleDelete() (+9 more)
### Community 19 - "Community 19"
Cohesion: 0.11
Nodes (8): fetchCollectionProtocolAuditList(), fetchCollectionProtocolDetail(), fetchCollectionProtocolList(), fetchPaymentDetailList(), fetchReceiptConfirmedList(), fetchReceiptConfirmList(), fetchRefundConfirmedList(), fetchRefundConfirmList()
### Community 20 - "Community 20" ### Community 20 - "Community 20"
Cohesion: 0.12 Cohesion: 0.12
Nodes (12): fetchApproveTask(), fetchBusinessAllTasks(), fetchCompletedTasks(), fetchDesignerData(), fetchInstanceDetail(), fetchMyInstances(), fetchPendingTasks(), fetchProcessDefList() (+4 more) Nodes (12): fetchApproveTask(), fetchBusinessAllTasks(), fetchCompletedTasks(), fetchDesignerData(), fetchInstanceDetail(), fetchMyInstances(), fetchPendingTasks(), fetchProcessDefList() (+4 more)
@@ -167,73 +166,69 @@ Cohesion: 0.16
Nodes (10): useTable(), useTableImpl(), getColumnChecks(), useTableColumns(), createErrorHandler(), createSmartDebounce(), defaultResponseAdapter(), extractPagination() (+2 more) Nodes (10): useTable(), useTableImpl(), getColumnChecks(), useTableColumns(), createErrorHandler(), createSmartDebounce(), defaultResponseAdapter(), extractPagination() (+2 more)
### Community 22 - "Community 22" ### Community 22 - "Community 22"
Cohesion: 0.2
Nodes (2): ComponentLoader, RouteTransformer
### Community 23 - "Community 23"
Cohesion: 0.27 Cohesion: 0.27
Nodes (14): useChart(), useChartComponent(), useChartOps(), colourBlend(), getCssVar(), getDarkColor(), getLightColor(), handleElementThemeColor() (+6 more) Nodes (14): useChart(), useChartComponent(), useChartOps(), colourBlend(), getCssVar(), getDarkColor(), getLightColor(), handleElementThemeColor() (+6 more)
### Community 24 - "Community 24" ### Community 23 - "Community 23"
Cohesion: 0.18
Nodes (11): fetchCreateCustomer(), fetchCustomerList(), fetchDeleteCustomer(), fetchUpdateCustomer(), handleAdd(), handleDelete(), handleReset(), handleSearch() (+3 more)
### Community 25 - "Community 25"
Cohesion: 0.17 Cohesion: 0.17
Nodes (12): fetchCreateCustomer(), fetchCustomerList(), fetchDeleteCustomer(), fetchUpdateCustomer(), handleAdd(), handleBatchDelete(), handleDelete(), handleReset() (+4 more) Nodes (3): fetchResearchDonationAuditList(), fetchResearchDonationDetail(), fetchResearchDonationList()
### Community 26 - "Community 26" ### Community 26 - "Community 26"
Cohesion: 0.18
Nodes (3): fetchMaterialList(), fetchMaterialOptions(), fetchMaterialStockLogList()
### Community 27 - "Community 27"
Cohesion: 0.2 Cohesion: 0.2
Nodes (2): fetchQcMaterialList(), fetchQcMaterialOptions() Nodes (2): fetchQcMaterialList(), fetchQcMaterialOptions()
### Community 28 - "Community 28" ### Community 29 - "Community 29"
Cohesion: 0.39 Cohesion: 0.39
Nodes (6): isIgnorableScriptError(), normalizeErrorMessage(), registerPromiseErrorHandler(), registerResourceErrorHandler(), scriptErrorHandler(), setupErrorHandle() Nodes (6): isIgnorableScriptError(), normalizeErrorMessage(), registerPromiseErrorHandler(), registerResourceErrorHandler(), scriptErrorHandler(), setupErrorHandle()
### Community 29 - "Community 29" ### Community 30 - "Community 30"
Cohesion: 0.36 Cohesion: 0.36
Nodes (1): TableHeightCalculator Nodes (1): TableHeightCalculator
### Community 30 - "Community 30" ### Community 31 - "Community 31"
Cohesion: 0.33 Cohesion: 0.33
Nodes (2): logApiCryptoBootInfo(), maskSecret() Nodes (2): logApiCryptoBootInfo(), maskSecret()
### Community 31 - "Community 31"
Cohesion: 0.29
Nodes (2): fetchLeaveDetail(), fetchLeaveList()
### Community 32 - "Community 32" ### Community 32 - "Community 32"
Cohesion: 0.47 Cohesion: 0.47
Nodes (3): isPaymentDueWithinWarnWindow(), parsePaymentDueYmd(), startOfLocalDay() Nodes (3): isPaymentDueWithinWarnWindow(), parsePaymentDueYmd(), startOfLocalDay()
### Community 33 - "Community 33"
Cohesion: 0.33
Nodes (2): fetchSampleReceptionCheckItemList(), fetchSampleReceptionCheckItemsActive()
### Community 34 - "Community 34" ### Community 34 - "Community 34"
Cohesion: 0.33 Cohesion: 0.33
Nodes (2): fetchQcThirdPartyItemList(), fetchQcThirdPartyItemsActive() Nodes (2): fetchQcThirdPartyItemList(), fetchQcThirdPartyItemsActive()
### Community 35 - "Community 35" ### Community 35 - "Community 35"
Cohesion: 0.33 Cohesion: 0.33
Nodes (2): fetchQcLabTestItemList(), fetchQcLabTestItemsActive() Nodes (2): fetchQcThirdPartyCompanyList(), fetchQcThirdPartyCompanyOptions()
### Community 36 - "Community 36" ### Community 36 - "Community 36"
Cohesion: 0.33 Cohesion: 0.33
Nodes (2): fetchQcLabTestItemList(), fetchQcLabTestItemsActive()
### Community 37 - "Community 37"
Cohesion: 0.33
Nodes (2): fetchQcTaskDetail(), fetchQcTaskList() Nodes (2): fetchQcTaskDetail(), fetchQcTaskList()
### Community 38 - "Community 38" ### Community 39 - "Community 39"
Cohesion: 0.53 Cohesion: 0.53
Nodes (4): isEtaTodayOrEarlier(), parseEtaLocalDate(), sampleReceptionRowClassName(), startOfLocalDay() Nodes (4): isEtaTodayOrEarlier(), parseEtaLocalDate(), sampleReceptionRowClassName(), startOfLocalDay()
### Community 39 - "Community 39" ### Community 40 - "Community 40"
Cohesion: 0.5 Cohesion: 0.5
Nodes (2): focusInput(), handleKeydown() Nodes (2): focusInput(), handleKeydown()
### Community 40 - "Community 40" ### Community 41 - "Community 41"
Cohesion: 0.67 Cohesion: 0.67
Nodes (2): if(), logSidebarMenu() Nodes (2): if(), logSidebarMenu()
### Community 41 - "Community 41"
Cohesion: 0.5
Nodes (1): fetchStorageEntrySmsList()
### Community 42 - "Community 42" ### Community 42 - "Community 42"
Cohesion: 0.5 Cohesion: 0.5
Nodes (1): fetchSampleSmsNotificationList() Nodes (1): fetchSampleSmsNotificationList()
@@ -247,31 +242,25 @@ Cohesion: 1.0
Nodes (2): defaultAvatarPathByRole(), resolveUserAvatarUrl() Nodes (2): defaultAvatarPathByRole(), resolveUserAvatarUrl()
## Knowledge Gaps ## Knowledge Gaps
- **Thin community `Community 14`** (28 nodes): `WebSocketClient`, `.calculateReconnectDelay()`, `.clearAllTimers()`, `.clearConnectionTimers()`, `.clearTimer()`, `.close()`, `.closeCurrentSocketForReconnect()`, `.connect()`, `.connectionStatusText()`, `.constructor()`, `.destroyInstance()`, `.flushMessageQueue()`, `.getInstance()`, `.getReadyStateText()`, `.handleClose()`, `.handleConnectionTimeout()`, `.handleError()`, `.handleMessage()`, `.handleOpen()`, `.init()`, `.isWebSocketConnected()`, `.reconnect()`, `.resetHeartbeat()`, `.send()`, `.startHeartbeat()`, `.startPing()`, `.log()`, `index.ts` - **Thin community `Community 9`** (42 nodes): `WebSocketClient`, `.calculateReconnectDelay()`, `.clearAllTimers()`, `.clearConnectionTimers()`, `.clearTimer()`, `.close()`, `.closeCurrentSocketForReconnect()`, `.connect()`, `.connectionStatusText()`, `.constructor()`, `.destroyInstance()`, `.flushMessageQueue()`, `.getInstance()`, `.getReadyStateText()`, `.handleClose()`, `.handleConnectionTimeout()`, `.handleError()`, `.handleMessage()`, `.handleOpen()`, `.init()`, `.isWebSocketConnected()`, `.reconnect()`, `.resetHeartbeat()`, `.send()`, `.startHeartbeat()`, `.startPing()`, `TableCache`, `.cleanupExpired()`, `.clear()`, `.clearByTags()`, `.clearCurrentSearch()`, `.clearPagination()`, `.constructor()`, `.evictLRU()`, `.generateKey()`, `.generateTags()`, `.get()`, `.getStats()`, `.log()`, `.set()`, `index.ts`, `tableCache.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 22`** (17 nodes): `ComponentLoader`, `.constructor()`, `.createEmptyComponent()`, `.createErrorComponent()`, `.load()`, `.loadIframe()`, `.loadLayout()`, `.load()`, `RouteTransformer`, `.extractFirstSegment()`, `.handleFirstLevelRoute()`, `.handleIframeRoute()`, `.handleNormalRoute()`, `.isFirstLevelRoute()`, `.transform()`, `ComponentLoader.ts`, `RouteTransformer.ts` - **Thin community `Community 27`** (10 nodes): `fetchBatchStockInQcMaterial()`, `fetchBatchStockOutQcMaterial()`, `fetchCreateQcMaterial()`, `fetchDeleteQcMaterial()`, `fetchQcMaterialList()`, `fetchQcMaterialOptions()`, `fetchStockInQcMaterial()`, `fetchStockOutQcMaterial()`, `fetchUpdateQcMaterial()`, `qc-material.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 26`** (10 nodes): `fetchBatchStockInQcMaterial()`, `fetchBatchStockOutQcMaterial()`, `fetchCreateQcMaterial()`, `fetchDeleteQcMaterial()`, `fetchQcMaterialList()`, `fetchQcMaterialOptions()`, `fetchStockInQcMaterial()`, `fetchStockOutQcMaterial()`, `fetchUpdateQcMaterial()`, `qc-material.ts` - **Thin community `Community 30`** (8 nodes): `TableHeightCalculator`, `.calculate()`, `.calculateOffset()`, `.calculatePaginationOffset()`, `.constructor()`, `.getHeaderHeight()`, `useTableHeight()`, `useTableHeight.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 29`** (8 nodes): `TableHeightCalculator`, `.calculate()`, `.calculateOffset()`, `.calculatePaginationOffset()`, `.constructor()`, `.getHeaderHeight()`, `useTableHeight()`, `useTableHeight.ts` - **Thin community `Community 31`** (7 nodes): `App.vue`, `main.ts`, `refreshButtonAutoIcons()`, `refreshPanelTitleIcons()`, `logApiCryptoBootInfo()`, `maskSecret()`, `console.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 30`** (7 nodes): `App.vue`, `main.ts`, `refreshButtonAutoIcons()`, `refreshPanelTitleIcons()`, `logApiCryptoBootInfo()`, `maskSecret()`, `console.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 31`** (7 nodes): `fetchCreateLeave()`, `fetchDeleteLeave()`, `fetchLeaveDetail()`, `fetchLeaveList()`, `fetchSubmitLeave()`, `fetchUpdateLeave()`, `leave.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 33`** (6 nodes): `fetchCreateSampleReceptionCheckItem()`, `fetchDeleteSampleReceptionCheckItem()`, `fetchSampleReceptionCheckItemList()`, `fetchSampleReceptionCheckItemsActive()`, `fetchUpdateSampleReceptionCheckItem()`, `sample-reception-check-item.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 34`** (6 nodes): `fetchCreateQcThirdPartyItem()`, `fetchDeleteQcThirdPartyItem()`, `fetchQcThirdPartyItemList()`, `fetchQcThirdPartyItemsActive()`, `fetchUpdateQcThirdPartyItem()`, `qc-third-party-item.ts` - **Thin community `Community 34`** (6 nodes): `fetchCreateQcThirdPartyItem()`, `fetchDeleteQcThirdPartyItem()`, `fetchQcThirdPartyItemList()`, `fetchQcThirdPartyItemsActive()`, `fetchUpdateQcThirdPartyItem()`, `qc-third-party-item.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 35`** (6 nodes): `fetchCreateQcLabTestItem()`, `fetchDeleteQcLabTestItem()`, `fetchQcLabTestItemList()`, `fetchQcLabTestItemsActive()`, `fetchUpdateQcLabTestItem()`, `qc-lab-test-item.ts` - **Thin community `Community 35`** (6 nodes): `fetchCreateQcThirdPartyCompany()`, `fetchDeleteQcThirdPartyCompany()`, `fetchQcThirdPartyCompanyList()`, `fetchQcThirdPartyCompanyOptions()`, `fetchUpdateQcThirdPartyCompany()`, `qc-third-party-company.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 36`** (6 nodes): `fetchCompleteQcTask()`, `fetchQcTaskDetail()`, `fetchQcTaskList()`, `fetchStartQcTask()`, `fetchUpdateQcTaskAttachments()`, `qc-task.ts` - **Thin community `Community 36`** (6 nodes): `fetchCreateQcLabTestItem()`, `fetchDeleteQcLabTestItem()`, `fetchQcLabTestItemList()`, `fetchQcLabTestItemsActive()`, `fetchUpdateQcLabTestItem()`, `qc-lab-test-item.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 39`** (5 nodes): `focusInput()`, `handleKeydown()`, `if()`, `search()`, `index.vue` - **Thin community `Community 37`** (6 nodes): `fetchCompleteQcTask()`, `fetchQcTaskDetail()`, `fetchQcTaskList()`, `fetchStartQcTask()`, `fetchUpdateQcTaskAttachments()`, `qc-task.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 40`** (4 nodes): `if()`, `logSidebarMenu()`, `index.vue`, `SidebarSubmenu.vue` - **Thin community `Community 40`** (5 nodes): `focusInput()`, `handleKeydown()`, `if()`, `search()`, `index.vue`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 41`** (4 nodes): `fetchGenerateStorageEntrySms()`, `fetchStorageEntrySmsList()`, `fetchToggleStorageEntrySmsNotified()`, `storage-entry-sms-notification.ts` - **Thin community `Community 41`** (4 nodes): `if()`, `logSidebarMenu()`, `index.vue`, `SidebarSubmenu.vue`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 42`** (4 nodes): `fetchGenerateSms()`, `fetchSampleSmsNotificationList()`, `fetchToggleSmsNotified()`, `sample-sms-notification.ts` - **Thin community `Community 42`** (4 nodes): `fetchGenerateSms()`, `fetchSampleSmsNotificationList()`, `fetchToggleSmsNotified()`, `sample-sms-notification.ts`
Too small to be a meaningful cluster - may be noise or needs more connections extracted. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
@@ -283,12 +272,12 @@ Nodes (2): defaultAvatarPathByRole(), resolveUserAvatarUrl()
## Suggested Questions ## Suggested Questions
_Questions this graph is uniquely positioned to answer:_ _Questions this graph is uniquely positioned to answer:_
- **Why does `get()` connect `Community 0` to `Community 1`, `Community 2`, `Community 3`, `Community 4`, `Community 5`, `Community 6`, `Community 7`, `Community 8`, `Community 12`, `Community 15`, `Community 16`, `Community 17`, `Community 19`, `Community 20`, `Community 24`, `Community 26`, `Community 31`, `Community 33`, `Community 34`, `Community 35`, `Community 36`, `Community 41`, `Community 42`?** - **Why does `get()` connect `Community 0` to `Community 1`, `Community 2`, `Community 3`, `Community 4`, `Community 5`, `Community 6`, `Community 7`, `Community 14`, `Community 15`, `Community 16`, `Community 18`, `Community 19`, `Community 20`, `Community 23`, `Community 25`, `Community 26`, `Community 27`, `Community 34`, `Community 35`, `Community 36`, `Community 37`, `Community 42`?**
_High betweenness centrality (0.287) - this node is a cross-community bridge._ _High betweenness centrality (0.293) - this node is a cross-community bridge._
- **Why does `push()` connect `Community 4` to `Community 0`, `Community 6`, `Community 9`, `Community 13`, `Community 14`, `Community 17`?** - **Why does `push()` connect `Community 4` to `Community 0`, `Community 6`, `Community 8`, `Community 9`, `Community 13`, `Community 16`?**
_High betweenness centrality (0.121) - this node is a cross-community bridge._ _High betweenness centrality (0.117) - this node is a cross-community bridge._
- **Why does `fetchGetLatestUpgradeLog()` connect `Community 0` to `Community 13`?** - **Why does `handleDynamicRoutes()` connect `Community 2` to `Community 8`, `Community 15`?**
_High betweenness centrality (0.041) - this node is a cross-community bridge._ _High betweenness centrality (0.049) - this node is a cross-community bridge._
- **Are the 163 inferred relationships involving `get()` (e.g. with `collectLeafFacilityNodesInTreeOrder()` and `buildTreePathLabelFromFlat()`) actually correct?** - **Are the 163 inferred relationships involving `get()` (e.g. with `collectLeafFacilityNodesInTreeOrder()` and `buildTreePathLabelFromFlat()`) actually correct?**
_`get()` has 163 INFERRED edges - model-reasoned connections that need verification._ _`get()` has 163 INFERRED edges - model-reasoned connections that need verification._
- **Are the 19 inferred relationships involving `push()` (e.g. with `collectLeafFacilityNodesInTreeOrder()` and `fetchAllPagedRecords()`) actually correct?** - **Are the 19 inferred relationships involving `push()` (e.g. with `collectLeafFacilityNodesInTreeOrder()` and `fetchAllPagedRecords()`) actually correct?**
+4 -4
View File
@@ -57,12 +57,12 @@
</div> </div>
<div id="legend"></div> <div id="legend"></div>
</div> </div>
<div id="stats">1524 nodes &middot; 1912 edges &middot; 247 communities</div> <div id="stats">1528 nodes &middot; 1917 edges &middot; 247 communities</div>
</div> </div>
<script> <script>
const RAW_NODES = [{"id": "app_vue", "label": "App.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "App.vue", "community": 30, "community_name": "Community 30", "source_file": "App.vue", "file_type": "code", "degree": 3}, {"id": "src_app_refreshbuttonautoicons", "label": "refreshButtonAutoIcons()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "refreshButtonAutoIcons()", "community": 30, "community_name": "Community 30", "source_file": "App.vue", "file_type": "code", "degree": 1}, {"id": "src_app_refreshpaneltitleicons", "label": "refreshPanelTitleIcons()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "refreshPanelTitleIcons()", "community": 30, "community_name": "Community 30", "source_file": "App.vue", "file_type": "code", "degree": 1}, {"id": "main_ts", "label": "main.ts", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.5, "font": {"size": 0, "color": "#ffffff"}, "title": "main.ts", "community": 30, "community_name": "Community 30", "source_file": "main.ts", "file_type": "code", "degree": 4}, {"id": "src_main_masksecret", "label": "maskSecret()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "maskSecret()", "community": 30, "community_name": "Community 30", "source_file": "main.ts", "file_type": "code", "degree": 2}, {"id": "src_main_logapicryptobootinfo", "label": "logApiCryptoBootInfo()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "logApiCryptoBootInfo()", "community": 30, "community_name": "Community 30", "source_file": "main.ts", "file_type": "code", "degree": 2}, {"id": "env_d_ts", "label": "env.d.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "env.d.ts", "community": 78, "community_name": "Community 78", "source_file": "env.d.ts", "file_type": "code", "degree": 0}, {"id": "shims_loose_d_ts", "label": "shims-loose.d.ts", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "shims-loose.d.ts", "community": 79, "community_name": "Community 79", "source_file": "shims-loose.d.ts", "file_type": "code", "degree": 0}, {"id": "directives_index_ts", "label": "index.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "index.ts", "community": 18, "community_name": "Community 18", "source_file": "directives/index.ts", "file_type": "code", "degree": 1}, {"id": "directives_index_setupglobdirectives", "label": "setupGlobDirectives()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "setupGlobDirectives()", "community": 18, "community_name": "Community 18", "source_file": "directives/index.ts", "file_type": "code", "degree": 5}, {"id": "directives_core_roles_ts", "label": "roles.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "roles.ts", "community": 18, "community_name": "Community 18", "source_file": "directives/core/roles.ts", "file_type": "code", "degree": 3}, {"id": "core_roles_checkrolepermission", "label": "checkRolePermission()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "checkRolePermission()", "community": 18, "community_name": "Community 18", "source_file": "directives/core/roles.ts", "file_type": "code", "degree": 2}, {"id": "core_roles_removeelement", "label": "removeElement()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "removeElement()", "community": 18, "community_name": "Community 18", "source_file": "directives/core/roles.ts", "file_type": "code", "degree": 2}, {"id": "core_roles_setuprolesdirective", "laLine truncated const RAW_NODES = [{"id": "app_vue", "label": "App.vue", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "App.vue", "community": 31, "community_name": "Community 31", "source_file": "App.vue", "file_type": "code", "degree": 3}, {"id": "src_app_refreshbuttonautoicons", "label": "refreshButtonAutoIcons()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "refreshButtonAutoIcons()", "community": 31, "community_name": "Community 31", "source_file": "App.vue", "file_type": "code", "degree": 1}, {"id": "src_app_refreshpaneltitleicons", "label": "refreshPanelTitleIcons()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "refreshPanelTitleIcons()", "community": 31, "community_name": "Community 31", "source_file": "App.vue", "file_type": "code", "degree": 1}, {"id": "main_ts", "label": "main.ts", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.5, "font": {"size": 0, "color": "#ffffff"}, "title": "main.ts", "community": 31, "community_name": "Community 31", "source_file": "main.ts", "file_type": "code", "degree": 4}, {"id": "src_main_masksecret", "label": "maskSecret()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "maskSecret()", "community": 31, "community_name": "Community 31", "source_file": "main.ts", "file_type": "code", "degree": 2}, {"id": "src_main_logapicryptobootinfo", "label": "logApiCryptoBootInfo()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "logApiCryptoBootInfo()", "community": 31, "community_name": "Community 31", "source_file": "main.ts", "file_type": "code", "degree": 2}, {"id": "env_d_ts", "label": "env.d.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "env.d.ts", "community": 78, "community_name": "Community 78", "source_file": "env.d.ts", "file_type": "code", "degree": 0}, {"id": "shims_loose_d_ts", "label": "shims-loose.d.ts", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "shims-loose.d.ts", "community": 79, "community_name": "Community 79", "source_file": "shims-loose.d.ts", "file_type": "code", "degree": 0}, {"id": "directives_index_ts", "label": "index.ts", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.1, "font": {"size": 0, "color": "#ffffff"}, "title": "index.ts", "community": 17, "community_name": "Community 17", "source_file": "directives/index.ts", "file_type": "code", "degree": 1}, {"id": "directives_index_setupglobdirectives", "label": "setupGlobDirectives()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "setupGlobDirectives()", "community": 17, "community_name": "Community 17", "source_file": "directives/index.ts", "file_type": "code", "degree": 5}, {"id": "directives_core_roles_ts", "label": "roles.ts", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "roles.ts", "community": 17, "community_name": "Community 17", "source_file": "directives/core/roles.ts", "file_type": "code", "degree": 3}, {"id": "core_roles_checkrolepermission", "label": "checkRolePermission()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "checkRolePermission()", "community": 17, "community_name": "Community 17", "source_file": "directives/core/roles.ts", "file_type": "code", "degree": 2}, {"id": "core_roles_removeelement", "label": "removeElement()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.3, "font": {"size": 0, "color": "#ffffff"}, "title": "removeElement()", "community": 17, "community_name": "Community 17", "source_file": "directives/core/roles.ts", "file_type": "code", "degree": 2}, {"id": "core_roles_setuprolesdirective", "laLine truncated
const RAW_EDGES = [{"from": "app_vue", "to": "src_app_refreshbuttonautoicons", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_vue", "to": "src_app_refreshpaneltitleicons", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_vue", "to": "main_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_ts", "to": "utils_sys_console_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_ts", "to": "src_main_masksecret", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_ts", "to": "src_main_logapicryptobootinfo", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_main_masksecret", "to": "src_main_logapicryptobootinfo", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_index_ts", "to": "directives_index_setupglobdirectives", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_index_setupglobdirectives", "to": "core_auth_setupauthdirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_index_setupglobdirectives", "to": "core_roles_setuprolesdirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_index_setupglobdirectives", "to": "business_highlight_setuphighlightdirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_index_setupglobdirectives", "to": "business_ripple_setuprippledirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_core_roles_ts", "to": "core_roles_checkrolepermission", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_roles_ts", "to": "core_roles_removeelement", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_roles_ts", "to": "core_roles_setuprolesdirective", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_roles_checkrolepermission", "to": "core_roles_removeelement", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_auth_ts", "to": "core_auth_checkauthpermission", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_auth_ts", "to": "core_auth_removeelement", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_auth_ts", "to": "core_auth_setupauthdirective", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_checkauthpermission", "to": "core_auth_removeelement", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_ripple_ts", "to": "business_ripple_setuprippledirective", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_highlight_ts", "to": "business_highlight_highlightcode", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_highlight_ts", "to": "business_highlight_insertlinenumbers", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_highlight_ts", "to": "business_highlight_addcopybutton", "label": "contains", "title": "contains [EXTRACTED]", "dLine truncated const RAW_EDGES = [{"from": "app_vue", "to": "src_app_refreshbuttonautoicons", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_vue", "to": "src_app_refreshpaneltitleicons", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_vue", "to": "main_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_ts", "to": "utils_sys_console_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_ts", "to": "src_main_masksecret", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_ts", "to": "src_main_logapicryptobootinfo", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_main_masksecret", "to": "src_main_logapicryptobootinfo", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_index_ts", "to": "directives_index_setupglobdirectives", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_index_setupglobdirectives", "to": "core_auth_setupauthdirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_index_setupglobdirectives", "to": "core_roles_setuprolesdirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_index_setupglobdirectives", "to": "business_highlight_setuphighlightdirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_index_setupglobdirectives", "to": "business_ripple_setuprippledirective", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "directives_core_roles_ts", "to": "core_roles_checkrolepermission", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_roles_ts", "to": "core_roles_removeelement", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_roles_ts", "to": "core_roles_setuprolesdirective", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_roles_checkrolepermission", "to": "core_roles_removeelement", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_auth_ts", "to": "core_auth_checkauthpermission", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_auth_ts", "to": "core_auth_removeelement", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_core_auth_ts", "to": "core_auth_setupauthdirective", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_auth_checkauthpermission", "to": "core_auth_removeelement", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_ripple_ts", "to": "business_ripple_setuprippledirective", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_highlight_ts", "to": "business_highlight_highlightcode", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_highlight_ts", "to": "business_highlight_insertlinenumbers", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "directives_business_highlight_ts", "to": "business_highlight_addcopybutton", "label": "contains", "title": "contains [EXTRACTED]", "dLine truncated
const LEGEND = [{"cid": 0, "color": "#4E79A7", "label": "Community 0", "count": 239}, {"cid": 1, "color": "#F28E2B", "label": "Community 1", "count": 99}, {"cid": 2, "color": "#E15759", "label": "Community 2", "count": 69}, {"cid": 3, "color": "#76B7B2", "label": "Community 3", "count": 65}, {"cid": 4, "color": "#59A14F", "label": "Community 4", "count": 62}, {"cid": 5, "color": "#EDC948", "label": "Community 5", "count": 61}, {"cid": 6, "color": "#B07AA1", "label": "Community 6", "count": 51}, {"cid": 7, "color": "#FF9DA7", "label": "Community 7", "count": 50}, {"cid": 8, "color": "#9C755F", "label": "Community 8", "count": 46}, {"cid": 9, "color": "#BAB0AC", "label": "Community 9", "count": 44}, {"cid": 10, "color": "#4E79A7", "label": "Community 10", "count": 37}, {"cid": 11, "color": "#F28E2B", "label": "Community 11", "count": 37}, {"cid": 12, "color": "#E15759", "label": "Community 12", "count": 29}, {"cid": 13, "color": "#76B7B2", "label": "Community 13", "count": 28}, {"cid": 14, "color": "#59A14F", "label": "Community 14", "count": 28}, {"cid": 15, "color": "#EDC948", "label": "Community 15", "count": 28}, {"cid": 16, "color": "#B07AA1", "label": "Community 16", "count": 27}, {"cid": 17, "color": "#FF9DA7", "label": "Community 17", "count": 27}, {"cid": 18, "color": "#9C755F", "label": "Community 18", "count": 22}, {"cid": 19, "color": "#BAB0AC", "label": "Community 19", "count": 20}, {"cid": 20, "color": "#4E79A7", "label": "Community 20", "count": 19}, {"cid": 21, "color": "#F28E2B", "label": "Community 21", "count": 17}, {"cid": 22, "color": "#E15759", "label": "Community 22", "count": 17}, {"cid": 23, "color": "#76B7B2", "label": "Community 23", "count": 16}, {"cid": 24, "color": "#59A14F", "label": "Community 24", "count": 16}, {"cid": 25, "color": "#EDC948", "label": "Community 25", "count": 13}, {"cid": 26, "color": "#B07AA1", "label": "Community 26", "count": 10}, {"cid": 27, "color": "#FF9DA7", "label": "Community 27", "count": 9}, {"cid": 28, "color": "#9C755F", "label": "Community 28", "count": 8}, {"cid": 29, "color": "#BAB0AC", "label": "Community 29", "count": 8}, {"cid": 30, "color": "#4E79A7", "label": "Community 30", "count": 7}, {"cid": 31, "color": "#F28E2B", "label": "Community 31", "count": 7}, {"cid": 32, "color": "#E15759", "label": "Community 32", "count": 6}, {"cid": 33, "color": "#76B7B2", "label": "Community 33", "count": 6}, {"cid": 34, "color": "#59A14F", "label": "Community 34", "count": 6}, {"cid": 35, "color": "#EDC948", "label": "Community 35", "count": 6}, {"cid": 36, "color": "#B07AA1", "label": "Community 36", "count": 6}, {"cid": 37, "color": "#FF9DA7", "label": "Community 37", "count": 6}, {"cid": 38, "color": "#9C755F", "label": "Community 38", "count": 6}, {"cid": 39, "color": "#BAB0AC", "label": "Community 39", "count": 5}, {"cid": 40, "color": "#4E79A7", "label": "Community 40", "count": 4}, {"cid": 41, "color": "#F28E2B", "label": "Community 41", "count": 4}, {"cid": 42, "color": "#E15759", "label": "Community 42", "count": 4}, {"cid": 43, "color": "#76B7B2", "label": "Community 43", "count": 3}, {"cid": 44, "color": "#59A14F", "label": "Community 44", "count": 3}, {"cid": 45, "color": "#EDC948", "label": "Community 45", "count": 3}, {"cid": 46, "color": "#B07AA1", "label": "Community 46", "count": 3}, {"cid": 47, "color": "#FF9DA7", "label": "Community 47", "count": 3}, {"cid": 48, "color": "#9C755F", "label": "Community 48", "count": 3}, {"cid": 49, "color": "#BAB0AC", "label": "Community 49", "count": 3}, {"cid": 50, "color": "#4E79A7", "label": "Community 50", "count": 3}, {"cid": 51, "color": "#F28E2B", "label": "Community 51", "count": 3}, {"cid": 52, "color": "#E15759", "label": "Community 52", "count": 3}, {"cid": 53, "color": "#76B7B2", "label": "Community 53", "count": 2}, {"cid": 54, "color": "#59A14F", "label": "Community 54", "count": 2}, {"cid": 55, "color": "#EDC948", "label": "Community 55", "count": 2}, {"cid": 56, "color": "#B07AA1", "label": "Community 56", "count": 2}, {"cid": 57, "color": "#FF9DA7", "label": "Community 57", "count": 2}, {"cid": 58, "color": "#9C755F", "label": "Community 58", "count": 2}, {"cid": 59, "color": "#BAB0AC", "label": "Community 59", "count": 2}, {"cid": 60, "color": "#4E79A7", "label": "Community 60", "count": 2}, {"cid": 61, "color": "#F28E2B", "label": "Community 61", "count": 2}, {"cid": 62, "color": "#E15759", "label": "Community 62", "count": 2}, {"cid": 63, "color": "#76B7B2", "label": "Community 63", "count": 2}, {"cid": 64, "color": "#59A14F", "label": "Community 64", "count": 2}, {"cid": 65, "color": "#EDC948", "label": "Community 65", "count": 2}, {"cid": 66, "color": "#B07AA1", "label": "Community 66", "count": 2}, {"cid": 67, "color": "#FF9DA7", "label": "Community 67", "count": 2}, {"cid": 68, "color": "#9C755F", "label": "Community 68", "count": 2}, {"cid": 69, "color": "#BAB0AC", "label": "Community 69", "count": 2}, {"cid": 70, "color": "#4E79A7", "label": "Community 70", "count": 2}, {"cidLine truncated const LEGEND = [{"cid": 0, "color": "#4E79A7", "label": "Community 0", "count": 237}, {"cid": 1, "color": "#F28E2B", "label": "Community 1", "count": 99}, {"cid": 2, "color": "#E15759", "label": "Community 2", "count": 69}, {"cid": 3, "color": "#76B7B2", "label": "Community 3", "count": 65}, {"cid": 4, "color": "#59A14F", "label": "Community 4", "count": 64}, {"cid": 5, "color": "#EDC948", "label": "Community 5", "count": 62}, {"cid": 6, "color": "#B07AA1", "label": "Community 6", "count": 51}, {"cid": 7, "color": "#FF9DA7", "label": "Community 7", "count": 50}, {"cid": 8, "color": "#9C755F", "label": "Community 8", "count": 47}, {"cid": 9, "color": "#BAB0AC", "label": "Community 9", "count": 42}, {"cid": 10, "color": "#4E79A7", "label": "Community 10", "count": 42}, {"cid": 11, "color": "#F28E2B", "label": "Community 11", "count": 37}, {"cid": 12, "color": "#E15759", "label": "Community 12", "count": 37}, {"cid": 13, "color": "#76B7B2", "label": "Community 13", "count": 28}, {"cid": 14, "color": "#59A14F", "label": "Community 14", "count": 28}, {"cid": 15, "color": "#EDC948", "label": "Community 15", "count": 27}, {"cid": 16, "color": "#B07AA1", "label": "Community 16", "count": 27}, {"cid": 17, "color": "#FF9DA7", "label": "Community 17", "count": 22}, {"cid": 18, "color": "#9C755F", "label": "Community 18", "count": 20}, {"cid": 19, "color": "#BAB0AC", "label": "Community 19", "count": 19}, {"cid": 20, "color": "#4E79A7", "label": "Community 20", "count": 19}, {"cid": 21, "color": "#F28E2B", "label": "Community 21", "count": 17}, {"cid": 22, "color": "#E15759", "label": "Community 22", "count": 16}, {"cid": 23, "color": "#76B7B2", "label": "Community 23", "count": 15}, {"cid": 24, "color": "#59A14F", "label": "Community 24", "count": 13}, {"cid": 25, "color": "#EDC948", "label": "Community 25", "count": 12}, {"cid": 26, "color": "#B07AA1", "label": "Community 26", "count": 11}, {"cid": 27, "color": "#FF9DA7", "label": "Community 27", "count": 10}, {"cid": 28, "color": "#9C755F", "label": "Community 28", "count": 9}, {"cid": 29, "color": "#BAB0AC", "label": "Community 29", "count": 8}, {"cid": 30, "color": "#4E79A7", "label": "Community 30", "count": 8}, {"cid": 31, "color": "#F28E2B", "label": "Community 31", "count": 7}, {"cid": 32, "color": "#E15759", "label": "Community 32", "count": 6}, {"cid": 33, "color": "#76B7B2", "label": "Community 33", "count": 6}, {"cid": 34, "color": "#59A14F", "label": "Community 34", "count": 6}, {"cid": 35, "color": "#EDC948", "label": "Community 35", "count": 6}, {"cid": 36, "color": "#B07AA1", "label": "Community 36", "count": 6}, {"cid": 37, "color": "#FF9DA7", "label": "Community 37", "count": 6}, {"cid": 38, "color": "#9C755F", "label": "Community 38", "count": 6}, {"cid": 39, "color": "#BAB0AC", "label": "Community 39", "count": 6}, {"cid": 40, "color": "#4E79A7", "label": "Community 40", "count": 5}, {"cid": 41, "color": "#F28E2B", "label": "Community 41", "count": 4}, {"cid": 42, "color": "#E15759", "label": "Community 42", "count": 4}, {"cid": 43, "color": "#76B7B2", "label": "Community 43", "count": 3}, {"cid": 44, "color": "#59A14F", "label": "Community 44", "count": 3}, {"cid": 45, "color": "#EDC948", "label": "Community 45", "count": 3}, {"cid": 46, "color": "#B07AA1", "label": "Community 46", "count": 3}, {"cid": 47, "color": "#FF9DA7", "label": "Community 47", "count": 3}, {"cid": 48, "color": "#9C755F", "label": "Community 48", "count": 3}, {"cid": 49, "color": "#BAB0AC", "label": "Community 49", "count": 3}, {"cid": 50, "color": "#4E79A7", "label": "Community 50", "count": 3}, {"cid": 51, "color": "#F28E2B", "label": "Community 51", "count": 3}, {"cid": 52, "color": "#E15759", "label": "Community 52", "count": 3}, {"cid": 53, "color": "#76B7B2", "label": "Community 53", "count": 2}, {"cid": 54, "color": "#59A14F", "label": "Community 54", "count": 2}, {"cid": 55, "color": "#EDC948", "label": "Community 55", "count": 2}, {"cid": 56, "color": "#B07AA1", "label": "Community 56", "count": 2}, {"cid": 57, "color": "#FF9DA7", "label": "Community 57", "count": 2}, {"cid": 58, "color": "#9C755F", "label": "Community 58", "count": 2}, {"cid": 59, "color": "#BAB0AC", "label": "Community 59", "count": 2}, {"cid": 60, "color": "#4E79A7", "label": "Community 60", "count": 2}, {"cid": 61, "color": "#F28E2B", "label": "Community 61", "count": 2}, {"cid": 62, "color": "#E15759", "label": "Community 62", "count": 2}, {"cid": 63, "color": "#76B7B2", "label": "Community 63", "count": 2}, {"cid": 64, "color": "#59A14F", "label": "Community 64", "count": 2}, {"cid": 65, "color": "#EDC948", "label": "Community 65", "count": 2}, {"cid": 66, "color": "#B07AA1", "label": "Community 66", "count": 2}, {"cid": 67, "color": "#FF9DA7", "label": "Community 67", "count": 2}, {"cid": 68, "color": "#9C755F", "label": "Community 68", "count": 2}, {"cid": 69, "color": "#BAB0AC", "label": "Community 69", "count": 2}, {"cid": 70, "color": "#4E79A7", "label": "Community 70", "count": 2}, {"ciLine truncated
// HTML-escape helper — prevents XSS when injecting graph data into innerHTML // HTML-escape helper — prevents XSS when injecting graph data into innerHTML
function esc(s) { function esc(s) {
File diff suppressed because it is too large. Load diff
+5 -4
View File
@@ -17,8 +17,8 @@
"/Users/wuzilong/work/00code/zkxw/web-admin/src/types/common/index.ts": 1778582068.0254738, "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/common/index.ts": 1778582068.0254738,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/types/directive/directive.d.ts": 1778582068.026978, "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/directive/directive.d.ts": 1778582068.026978,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/types/api/api.d.ts": 1778582068.0246184, "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/api/api.d.ts": 1778582068.0246184,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/components.d.ts": 1779589500.1938324, "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/components.d.ts": 1779591450.358872,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/auto-imports.d.ts": 1779587821.900029, "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/auto-imports.d.ts": 1779591016.4400284,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/types/store/index.ts": 1778582068.0293276, "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/store/index.ts": 1778582068.0293276,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/types/router/index.ts": 1778775532.895603, "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/router/index.ts": 1778775532.895603,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/locales/index.ts": 1778582068.004279, "/Users/wuzilong/work/00code/zkxw/web-admin/src/locales/index.ts": 1778582068.004279,
@@ -176,10 +176,11 @@
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-qc-info-cards/index.vue": 1779525781.6078143, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-qc-info-cards/index.vue": 1779525781.6078143,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/order-operate-local-dialog/index.vue": 1779525781.608513, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/order-operate-local-dialog/index.vue": 1779525781.608513,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/product-view-dialog/index.vue": 1779525781.6090777, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/product-view-dialog/index.vue": 1779525781.6090777,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue": 1779542542.2434506, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue": 1779591224.5145729,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-storage-release-info/index.vue": 1779542542.2434525, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-storage-release-info/index.vue": 1779542542.2434525,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/protocol-payment-detail-readonly/index.vue": 1779525781.6098895, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/protocol-payment-detail-readonly/index.vue": 1779525781.6098895,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/system-view-dialog/index.vue": 1779586311.488459, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/system-view-dialog/index.vue": 1779586311.488459,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue": 1779591221.904441,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/order-operate-dialog-bridge/index.vue": 1779525781.611354, "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/order-operate-dialog-bridge/index.vue": 1779525781.611354,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/hooks/index.ts": 1778582068.0037498, "/Users/wuzilong/work/00code/zkxw/web-admin/src/hooks/index.ts": 1778582068.0037498,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/hooks/core/useFastEnter.ts": 1778582068.0014625, "/Users/wuzilong/work/00code/zkxw/web-admin/src/hooks/core/useFastEnter.ts": 1778582068.0014625,
@@ -248,7 +249,7 @@
"/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/audit/index.vue": 1779543540.7356243, "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/audit/index.vue": 1779543540.7356243,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/index.vue": 1779543540.734046, "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/index.vue": 1779543540.734046,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationAuditDialog.vue": 1779525781.6319423, "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationAuditDialog.vue": 1779525781.6319423,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue": 1779583781.6993396, "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue": 1779591471.046118,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationFormDialog.vue": 1779525781.635114, "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationFormDialog.vue": 1779525781.635114,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationStatusChangeDialog.vue": 1779525781.6357327, "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationStatusChangeDialog.vue": 1779525781.6357327,
"/Users/wuzilong/work/00code/zkxw/web-admin/src/views/dashboard/console/index.vue": 1779525781.636181, "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/dashboard/console/index.vue": 1779525781.636181,
@@ -0,0 +1,251 @@
<!-- 生产任务 — 只读查看(任务信息 + 产出细胞产品) -->
<!-- eslint-disable vue/no-v-model-argument -->
<template>
<SystemViewDialog
v-model:visible="innerVisible"
title="生产任务详情"
width="960px"
:grid-columns="3"
:icon="Operation"
:meta="viewDetail?.taskNo || ''"
:sections="viewSections"
:loading="loading"
append-to-body
compact
modal-class="production-task-view-dialog-mask"
>
<template #task-outputs>
<div v-if="viewOutputs.length" class="view-subtable-wrap">
<el-table :data="viewOutputs" stripe class="list-table view-subtable">
<el-table-column
type="index"
label="序号"
min-width="56"
align="center"
header-align="center"
:index="(index) => index + 1"
/>
<el-table-column
label="产品编码"
min-width="140"
align="center"
header-align="center"
show-overflow-tooltip
>
<template #default="{ row }">{{ row.productCode || row.outputBarcode || '—' }}</template>
</el-table-column>
<el-table-column
label="产品名称"
min-width="120"
align="center"
header-align="center"
show-overflow-tooltip
>
<template #default="{ row }">{{ row.productName || row.outputName || '—' }}</template>
</el-table-column>
<el-table-column label="产品类型" min-width="100" align="center" header-align="center">
<template #default="{ row }">{{ row.productTypeName || '—' }}</template>
</el-table-column>
<el-table-column label="规格" min-width="80" align="center" header-align="center">
<template #default="{ row }">{{ row.specName || '—' }}</template>
</el-table-column>
<el-table-column
prop="passage"
label="代次"
min-width="70"
align="center"
header-align="center"
/>
<el-table-column
prop="batchNo"
label="批次号"
min-width="110"
align="center"
header-align="center"
show-overflow-tooltip
/>
<el-table-column label="储物格位置" min-width="160" align="center" header-align="center">
<template #default="{ row }">{{ row.storageSlotName || '—' }}</template>
</el-table-column>
<el-table-column label="预计细胞数量(亿)" min-width="130" align="center" header-align="center">
<template #default="{ row }">{{ row.expectedCellCount ?? '—' }}</template>
</el-table-column>
<el-table-column label="活性" min-width="80" align="center" header-align="center">
<template #default="{ row }">{{ row.viability != null ? row.viability : '—' }}</template>
</el-table-column>
<el-table-column label="冻存日期" min-width="110" align="center" header-align="center">
<template #default="{ row }">{{ formatDateOnly(row.freezeDate) }}</template>
</el-table-column>
<el-table-column label="有效期" min-width="110" align="center" header-align="center">
<template #default="{ row }">{{ formatDateOnly(row.expiryDate) }}</template>
</el-table-column>
<el-table-column label="数量" min-width="80" align="center" header-align="center">
<template #default="{ row }">{{ row.quantity ?? '—' }}</template>
</el-table-column>
<el-table-column prop="unit" label="单位" min-width="70" align="center" header-align="center" />
<el-table-column label="状态" min-width="90" align="center" header-align="center">
<template #default="{ row }">
<el-tag :type="productStatusTagType(row.productStatus)" size="small">
{{ productStatusLabel(row.productStatus) }}
</el-tag>
</template>
</el-table-column>
</el-table>
</div>
<p v-else class="view-empty-hint">暂无产出产品</p>
</template>
</SystemViewDialog>
</template>
<script setup lang="ts">
import { ref, computed, watch } from 'vue'
import { Operation } from '@element-plus/icons-vue'
import SystemViewDialog from '@/components/business/system-view-dialog/index.vue'
import type { ViewSection } from '@/components/business/system-view-dialog/index.vue'
import { fetchProductionTaskDetail } from '@/api/production-task'
const props = defineProps<{
visible: boolean
taskId?: string
}>()
const emit = defineEmits<{
(e: 'update:visible', val: boolean): void
}>()
const innerVisible = computed({
get: () => props.visible,
set: (val) => emit('update:visible', val)
})
const loading = ref(false)
const viewDetail = ref<Record<string, any> | null>(null)
const TASK_STATUS_LABELS: Record<string, string> = {
dpz: '待配置',
dzx: '待执行',
jxz: '执行中',
ywc: '已完成'
}
const TASK_TYPE_LABELS: Record<string, string> = {
cell_storage: '入库生产单',
outbound: '出库生产单'
}
watch(
() => [props.visible, props.taskId] as const,
async ([vis, id]) => {
if (!vis || !id) {
viewDetail.value = null
return
}
loading.value = true
try {
viewDetail.value = await fetchProductionTaskDetail(id)
} catch {
viewDetail.value = null
} finally {
loading.value = false
}
},
{ immediate: true }
)
function taskStatusLabel(status?: string) {
return TASK_STATUS_LABELS[status || ''] || status || '—'
}
function taskStatusTagType(status?: string) {
if (status === 'ywc') return 'success' as const
if (status === 'jxz') return 'warning' as const
if (status === 'dzx') return 'info' as const
return 'info' as const
}
function taskTypeLabel(taskType?: string) {
return TASK_TYPE_LABELS[taskType || ''] || taskType || '—'
}
function taskTypeTagType(taskType?: string) {
if (taskType === 'cell_storage') return 'primary' as const
if (taskType === 'outbound') return 'warning' as const
return 'info' as const
}
function productStatusTagType(status?: string) {
const map: Record<string, 'success' | 'warning' | 'danger' | 'info'> = {
frozen: 'success',
in_production: 'warning',
voided: 'danger',
thawed: 'info'
}
return map[status || ''] || 'info'
}
function productStatusLabel(status?: string) {
const map: Record<string, string> = {
frozen: '已冻存',
in_production: '生产中',
voided: '已作废',
thawed: '已复苏'
}
return map[status || ''] || status || '—'
}
function formatDateOnly(val: unknown) {
if (!val) return '—'
const s = String(val)
return s.length >= 10 ? s.slice(0, 10) : s
}
const viewOutputs = computed(() => {
const rows = (viewDetail.value?.outputs as Array<Record<string, any>>) || []
return rows.map((row) => ({
...row,
productCode: row.productCode || row.outputBarcode || '',
productName: row.productName || row.outputName || ''
}))
})
const viewSections = computed<ViewSection[]>(() => {
const d = viewDetail.value
if (!d) return []
return [
{
title: '任务信息',
fields: [
{ label: '任务号', value: d.taskNo || '—' },
{ label: '任务名称', value: d.taskName || '—' },
{ label: '工单号', value: d.workOrderNo || '—' },
{
label: '任务类型',
value: taskTypeLabel(d.taskType),
tagType: taskTypeTagType(d.taskType)
},
{
label: '任务状态',
value: taskStatusLabel(d.taskStatus),
tagType: taskStatusTagType(d.taskStatus)
},
{ label: '协议号', value: d.protocolNo || '—' },
{ label: '样本编码', value: d.sampleCode || '—' },
{ label: '开始时间', value: d.startedTime || '—' },
{ label: '完成时间', value: d.completedTime || '—' },
{ label: '备注', value: d.remark || '—', span: true }
]
},
{
title: '产出(细胞产品)',
fields: [],
slot: 'task-outputs'
}
]
})
</script>
<style lang="scss">
.production-task-view-dialog-mask {
z-index: 4000 !important;
}
</style>
@@ -59,30 +59,11 @@
<span class="qc-kv__label">完成时间</span> <span class="qc-kv__label">完成时间</span>
<span class="qc-kv__value">{{ task.completedTime || '—' }}</span> <span class="qc-kv__value">{{ task.completedTime || '—' }}</span>
</div> </div>
<!-- 输入信息 --> </div>
<div v-if="task.inputs?.length" class="production-task-card__io"> <div class="production-task-card__foot">
<div class="production-task-card__io-label">输入</div> <button type="button" class="production-task-card__link" @click.stop="openTaskView(task)">
<div class="production-task-card__io-items"> 点击查看详情
<div v-for="(inp, idx) in task.inputs" :key="'in-' + idx" class="io-item"> </button>
<el-tag type="info" size="small" class="io-item__type">{{
inputTypeLabel(inp.inputType)
}}</el-tag>
<span class="io-item__name">{{ inp.inputName || inp.inputCode || '—' }}</span>
</div>
</div>
</div>
<!-- 输出信息 -->
<div v-if="task.outputs?.length" class="production-task-card__io">
<div class="production-task-card__io-label">输出</div>
<div class="production-task-card__io-items">
<div v-for="(out, idx) in task.outputs" :key="'out-' + idx" class="io-item">
<el-tag type="success" size="small" class="io-item__type">{{
outputTypeLabel(out.outputType)
}}</el-tag>
<span class="io-item__name">{{ out.outputName || out.outputCode || '—' }}</span>
</div>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@@ -91,10 +72,17 @@
暂无生产任务 暂无生产任务
</div> </div>
</template> </template>
<Teleport to="body">
<ProductionTaskViewDialog v-model:visible="taskViewVisible" :task-id="taskViewId" />
</Teleport>
</div> </div>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref } from 'vue'
import ProductionTaskViewDialog from '@/components/business/production-task-view-dialog/index.vue'
export type ProductionTaskInput = { export type ProductionTaskInput = {
inputType?: string inputType?: string
inputCode?: string inputCode?: string
@@ -143,6 +131,15 @@
productionInfo?: ProductionInfo | null productionInfo?: ProductionInfo | null
}>() }>()
const taskViewVisible = ref(false)
const taskViewId = ref('')
function openTaskView(task: ProductionTask) {
if (!task.id) return
taskViewId.value = task.id
taskViewVisible.value = true
}
function productionWorkOrderStatusLabel(status: string) { function productionWorkOrderStatusLabel(status: string) {
return PRODUCTION_WORK_ORDER_STATUS_LABELS[status] || status || '—' return PRODUCTION_WORK_ORDER_STATUS_LABELS[status] || status || '—'
} }
@@ -163,20 +160,6 @@
if (status === 'dzx') return 'info' as const if (status === 'dzx') return 'info' as const
return 'info' as const return 'info' as const
} }
function inputTypeLabel(type?: string) {
if (type === 'sample') return '样本'
if (type === 'reagent') return '试剂'
if (type === 'consumable') return '耗材'
return type || '—'
}
function outputTypeLabel(type?: string) {
if (type === 'sample') return '样本'
if (type === 'cell_product') return '细胞产品'
if (type === 'other') return '其他'
return type || '—'
}
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
@@ -253,41 +236,24 @@
gap: 8px; gap: 8px;
} }
.production-task-card__io { .production-task-card__foot {
margin-top: 4px; padding: 2px 12px 8px;
padding-top: 8px; text-align: right;
border-top: 1px dashed #f1f5f9; border-top: 1px dashed #f1f5f9;
} }
.production-task-card__io-label { .production-task-card__link {
padding: 0;
border: none;
background: none;
font-size: 11px; font-size: 11px;
font-weight: 600; line-height: 1.4;
color: #94a3b8; color: #10b981;
margin-bottom: 6px; cursor: pointer;
}
.production-task-card__io-items { &:hover {
display: flex; color: #059669;
flex-wrap: wrap; text-decoration: underline;
gap: 6px;
}
.io-item {
display: inline-flex;
align-items: center;
gap: 4px;
font-size: 12px;
color: #475569;
.io-item__type {
flex-shrink: 0;
}
.io-item__name {
max-width: 120px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
} }
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_sample_production_info_cards_index_vue", "label": "index.vue", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue", "source_location": "L1"}, {"id": "sample_production_info_cards_index_productiontaskstatuslabel", "label": "productionTaskStatusLabel()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue", "source_location": "L153"}], "edges": [{"source": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_sample_production_info_cards_index_vue", "target": "sample_production_info_cards_index_productiontaskstatuslabel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue", "source_location": "L153", "weight": 1.0}], "raw_calls": []}
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_types_import_components_d_ts", "label": "components.d.ts", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/components.d.ts", "source_location": "L1"}], "edges": [], "raw_calls": []}
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_types_import_components_d_ts", "label": "components.d.ts", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/components.d.ts", "source_location": "L1"}], "edges": [], "raw_calls": []}
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_types_import_components_d_ts", "label": "components.d.ts", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/components.d.ts", "source_location": "L1"}], "edges": [], "raw_calls": []}
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_types_import_components_d_ts", "label": "components.d.ts", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/types/import/components.d.ts", "source_location": "L1"}], "edges": [], "raw_calls": []}
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_production_task_view_dialog_index_vue", "label": "index.vue", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L1"}, {"id": "production_task_view_dialog_index_taskstatuslabel", "label": "taskStatusLabel()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L155"}, {"id": "production_task_view_dialog_index_tasktypelabel", "label": "taskTypeLabel()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L166"}, {"id": "production_task_view_dialog_index_productstatustagtype", "label": "productStatusTagType()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L176"}, {"id": "production_task_view_dialog_index_productstatuslabel", "label": "productStatusLabel()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L186"}, {"id": "production_task_view_dialog_index_formatdateonly", "label": "formatDateOnly()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L196"}], "edges": [{"source": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_production_task_view_dialog_index_vue", "target": "production_task_view_dialog_index_taskstatuslabel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L155", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_production_task_view_dialog_index_vue", "target": "production_task_view_dialog_index_tasktypelabel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L166", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_production_task_view_dialog_index_vue", "target": "production_task_view_dialog_index_productstatustagtype", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L176", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_production_task_view_dialog_index_vue", "target": "production_task_view_dialog_index_productstatuslabel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L186", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_production_task_view_dialog_index_vue", "target": "production_task_view_dialog_index_formatdateonly", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L196", "weight": 1.0}], "raw_calls": [{"caller_nid": "production_task_view_dialog_index_formatdateonly", "callee": "String", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L198"}, {"caller_nid": "production_task_view_dialog_index_formatdateonly", "callee": "slice", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/production-task-view-dialog/index.vue", "source_location": "L199"}]}
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_sample_production_info_cards_index_vue", "label": "index.vue", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue", "source_location": "L1"}, {"id": "sample_production_info_cards_index_productiontaskstatuslabel", "label": "productionTaskStatusLabel()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue", "source_location": "L160"}], "edges": [{"source": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_sample_production_info_cards_index_vue", "target": "sample_production_info_cards_index_productiontaskstatuslabel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/components/business/sample-production-info-cards/index.vue", "source_location": "L160", "weight": 1.0}], "raw_calls": []}
@@ -0,0 +1 @@
{"nodes": [{"id": "users_wuzilong_work_00code_zkxw_web_admin_src_views_research_donation_list_donationviewdialog_vue", "label": "DonationViewDialog.vue", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L1"}, {"id": "list_donationviewdialog_dash", "label": "dash()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L759"}, {"id": "list_donationviewdialog_formatmetric", "label": "formatMetric()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L764"}, {"id": "list_donationviewdialog_formatymd", "label": "formatYmd()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L770"}, {"id": "list_donationviewdialog_formatym", "label": "formatYm()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L776"}, {"id": "list_donationviewdialog_auditordisplay", "label": "auditorDisplay()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L782"}, {"id": "list_donationviewdialog_sampletypename", "label": "sampleTypeName()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L788"}, {"id": "list_donationviewdialog_unitname", "label": "unitName()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L792"}, {"id": "list_donationviewdialog_sitename", "label": "siteName()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L796"}, {"id": "list_donationviewdialog_expressname", "label": "expressName()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L800"}, {"id": "list_donationviewdialog_samplereceptionchecklist", "label": "sampleReceptionCheckList()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L804"}, {"id": "list_donationviewdialog_if", "label": "if()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L826"}], "edges": [{"source": "users_wuzilong_work_00code_zkxw_web_admin_src_views_research_donation_list_donationviewdialog_vue", "target": "icons_vue", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L584", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_views_research_donation_list_donationviewdialog_vue", "target": "users_wuzilong_work_00code_zkxw_web_admin_src_views_cell_storage_protocol_protocolattachmentreadonly_vue", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L585", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_views_research_donation_list_donationviewdialog_vue", "target": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_sample_qc_info_cards_index_vue", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L586", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_views_research_donation_list_donationviewdialog_vue", "target": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_sample_production_info_cards_index_vue", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDialog.vue", "source_location": "L587", "weight": 1.0}, {"source": "users_wuzilong_work_00code_zkxw_web_admin_src_views_research_donation_list_donationviewdialog_vue", "target": "users_wuzilong_work_00code_zkxw_web_admin_src_components_business_sample_storage_release_info_index_vue", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/zkxw/web-admin/src/views/research-donation/list/DonationViewDLine truncated
+1 -1
View File
@@ -109,7 +109,7 @@ export const transportTypeTagType = createTagTypeGetter(transportType)
export const receptionSource: StatusRegistry = { export const receptionSource: StatusRegistry = {
cell_storage: { label: '细胞存储', tagType: 'primary' }, cell_storage: { label: '细胞存储', tagType: 'primary' },
research_donation: { label: '科研捐赠', tagType: 'success' } research_donation: { label: '科研捐赠', tagType: 'warning' }
} }
export const receptionSourceLabel = createLabelGetter(receptionSource) export const receptionSourceLabel = createLabelGetter(receptionSource)
export const receptionSourceTagType = createTagTypeGetter(receptionSource) export const receptionSourceTagType = createTagTypeGetter(receptionSource)
@@ -478,6 +478,8 @@
<div v-else class="sample-reception-empty">暂未接收</div> <div v-else class="sample-reception-empty">暂未接收</div>
</div> </div>
<SampleQcInfoCards :qc-info="row.qcInfo" :sample-reception="row.sampleReception" /> <SampleQcInfoCards :qc-info="row.qcInfo" :sample-reception="row.sampleReception" />
<SampleProductionInfoCards :production-info="row.productionInfo" />
<SampleStorageReleaseInfo :storage-release-info="row.storageReleaseInfo" />
</div> </div>
</div> </div>
</div> </div>
@@ -582,6 +584,8 @@
import { Calendar, CircleCheck, Close, Document, User } from '@element-plus/icons-vue' import { Calendar, CircleCheck, Close, Document, User } from '@element-plus/icons-vue'
import ProtocolAttachmentReadonly from '@/views/cell-storage/protocol/ProtocolAttachmentReadonly.vue' import ProtocolAttachmentReadonly from '@/views/cell-storage/protocol/ProtocolAttachmentReadonly.vue'
import SampleQcInfoCards from '@/components/business/sample-qc-info-cards/index.vue' import SampleQcInfoCards from '@/components/business/sample-qc-info-cards/index.vue'
import SampleProductionInfoCards from '@/components/business/sample-production-info-cards/index.vue'
import SampleStorageReleaseInfo from '@/components/business/sample-storage-release-info/index.vue'
import { import {
fetchResearchDonationAuditList, fetchResearchDonationAuditList,
fetchResearchDonationDetail, fetchResearchDonationDetail,