# -*- coding: utf-8 -*- """环境盘点第三轮:补齐截断数据(票 02)""" import sys, io sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8') import pymysql CONF = dict(host='8.129.84.155', port=3306, user='root', password='Itc@123456', database='crm', charset='utf8mb4', autocommit=True, connect_timeout=10, cursorclass=pymysql.cursors.DictCursor) def q(sql): with pymysql.connect(**CONF) as conn, conn.cursor() as cur: cur.execute(sql) return cur.fetchall() print('用户总数(deleted=0):', q('SELECT COUNT(*) c FROM crm_auth_user WHERE deleted=0')[0]['c']) print('用户总数(全部):', q('SELECT COUNT(*) c FROM crm_auth_user')[0]['c']) print('部门总数:', q('SELECT COUNT(*) c FROM sys_dept WHERE deleted=0')[0]['c']) roots = q("SELECT id, dept_name, parent_id FROM sys_dept WHERE deleted=0 AND (parent_id IS NULL OR parent_id=0 OR parent_id='')") print('根部门:', roots) print('ROLE_ADMIN data_scope/builtin:', q("SELECT id, role_code, data_scope, builtin FROM sys_role")) print('一级部门(parent=根):', q("SELECT id, dept_name FROM sys_dept WHERE deleted=0 AND parent_id='744841292348915712' ORDER BY id")) print('dict 24组(code|name|items):') for r in q("SELECT g.code gc, g.name gn, COUNT(i.id) c FROM dict_group g LEFT JOIN dict_item i ON i.group_id=g.id AND i.deleted=0 WHERE g.deleted=0 GROUP BY g.code, g.name ORDER BY g.code"): print(f" {r['gc']} | {r['gn']} | {r['c']}") print('customer 5条 customer_no 前缀核对 KH20260903%:', q("SELECT COUNT(*) c FROM customer WHERE customer_no LIKE 'KH20260903%'")[0]['c']) print('opportunity 总数:', q('SELECT COUNT(*) c FROM opportunity')[0]['c'], ' deleted=0:', q('SELECT COUNT(*) c FROM opportunity WHERE deleted=0')[0]['c'], ' e2e-:', q("SELECT COUNT(*) c FROM opportunity WHERE opp_name LIKE 'e2e-%'")[0]['c']) print('opportunity 非 e2e 名称:') for r in q("SELECT id, opp_name, opp_status FROM opportunity WHERE opp_name NOT LIKE 'e2e-%' LIMIT 10"): print(f" {r['id']} | {r['opp_name']} | {r['opp_status']}") print('customer_reminder_rule 明细:', q('SELECT id, customer_id, enabled, deleted FROM customer_reminder_rule')) print('user_saved_view 明细:') for r in q('SELECT id, user_id, view_name, scope_key FROM user_saved_view LIMIT 5'): print(f" {r}") print('DONE3')