diff --git a/b/all_table.sql b/b/all_table.sql new file mode 100644 index 0000000..a5f4c7c --- /dev/null +++ b/b/all_table.sql @@ -0,0 +1,2829 @@ +/* + Source Server : kboss_openc + Source Server Type : MariaDB + Source Server Version : 100622 + Source Host : db:3306 + Source Schema : kboss_prod + + Target Server Type : MariaDB + Target Server Version : 100622 + File Encoding : 65001 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for acc_balance +-- ---------------------------- +DROP TABLE IF EXISTS `acc_balance`; +CREATE TABLE `acc_balance` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `accountid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账户id', + `acc_date` date NULL DEFAULT NULL COMMENT '记账日期', + `balance` double(18, 6) NULL DEFAULT NULL COMMENT '账户余额', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '账户余额表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for acc_detail +-- ---------------------------- +DROP TABLE IF EXISTS `acc_detail`; +CREATE TABLE `acc_detail` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `accountid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账户id', + `acc_no` int(11) NULL DEFAULT NULL COMMENT '明细顺序号', + `acc_date` date NULL DEFAULT NULL COMMENT '记账日期', + `acc_timestamp` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '记账时间戳', + `acc_dir` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '记账方向', + `summary` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '摘要', + `amount` double(18, 2) NULL DEFAULT NULL COMMENT '记账金额', + `balance` double(18, 2) NULL DEFAULT NULL COMMENT '账户余额', + `acclogid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账务流水id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '账户明细表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for account +-- ---------------------------- +DROP TABLE IF EXISTS `account`; +CREATE TABLE `account` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `accounting_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账本机构', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构id', + `subjectid` varchar(21) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目号', + `balance_at` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '余额方向', + `max_detailno` int(11) NULL DEFAULT NULL COMMENT '最大明细顺序号', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `account_idx1`(`accounting_orgid`, `orgid`, `subjectid`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '机构账户表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for account_config +-- ---------------------------- +DROP TABLE IF EXISTS `account_config`; +CREATE TABLE `account_config` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `partytype` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '参与方类型', + `subjectname` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目名称', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '账户配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for accounting_config +-- ---------------------------- +DROP TABLE IF EXISTS `accounting_config`; +CREATE TABLE `accounting_config` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `action` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '交易', + `specstr` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '特性', + `accounting_orgtype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账务机构', + `accounting_dir` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '记账方向', + `orgtype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构类型', + `subjectname` varchar(21) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目名', + `amt_pattern` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '金额模板', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '记账配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for accounting_config_copy1 +-- ---------------------------- +DROP TABLE IF EXISTS `accounting_config_copy1`; +CREATE TABLE `accounting_config_copy1` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `action` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '交易', + `specstr` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '特性', + `accounting_orgtype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账务机构', + `accounting_dir` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '记账方向', + `orgtype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构类型', + `subjectname` varchar(21) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目名', + `amt_pattern` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '金额模板', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '记账配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for accounting_log +-- ---------------------------- +DROP TABLE IF EXISTS `accounting_log`; +CREATE TABLE `accounting_log` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `accountid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账户id', + `acc_date` date NULL DEFAULT NULL COMMENT '记账日期', + `acc_timestamp` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '记账时间戳', + `acc_dir` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '记账方向', + `summary` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '摘要', + `amount` double(18, 2) NULL DEFAULT NULL COMMENT '记账金额', + `billid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '账务流水表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for appcodes +-- ---------------------------- +DROP TABLE IF EXISTS `appcodes`; +CREATE TABLE `appcodes` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '编码名称', + `hierarchy_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '多级标志', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '应用编码表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for appcodes_kv +-- ---------------------------- +DROP TABLE IF EXISTS `appcodes_kv`; +CREATE TABLE `appcodes_kv` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `codeid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '编码id', + `parentid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '父id', + `k` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '键', + `v` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '值', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '编码键值表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_business +-- ---------------------------- +DROP TABLE IF EXISTS `apv_business`; +CREATE TABLE `apv_business` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `business_name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务名', + `callback_url` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '回调地址', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标识', + `role_level` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '可视角色', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '业务种类表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_content_template +-- ---------------------------- +DROP TABLE IF EXISTS `apv_content_template`; +CREATE TABLE `apv_content_template` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `business_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务id', + `title_template` varchar(1024) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标题模板', + `detail_template` varchar(5000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '内容模板', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '内容模板表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_data +-- ---------------------------- +DROP TABLE IF EXISTS `apv_data`; +CREATE TABLE `apv_data` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `user_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构 id', + `result_org` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '被执行机构', + `business_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务id', + `process_code` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '表单id', + `apv_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '审批id', + `apv_title` varchar(1024) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标题', + `apv_text` varchar(5000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '内容', + `apv_sender` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发起人', + `apv_start_time` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '发起时间', + `apv_finish_time` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '完成时间', + `apv_status` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '流程状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + `original_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '原充值日志id', + `apv_json` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '不同业务场景所需信息', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '审批流记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_dd_template +-- ---------------------------- +DROP TABLE IF EXISTS `apv_dd_template`; +CREATE TABLE `apv_dd_template` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `user_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `process_code` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '钉钉审批单id', + `process_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '钉钉审批单名', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '钉钉模板表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_flow +-- ---------------------------- +DROP TABLE IF EXISTS `apv_flow`; +CREATE TABLE `apv_flow` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构id', + `user_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `business_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务id', + `dd_template_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '钉钉模板id', + `level` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点级别', + `mode` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点审核模式,会签:AND;或签:OR;单人:NONE', + `apv_dd_user_id_index` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `apv_dd_user_phone` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点审核人员手机号', + `apv_dd_user_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点审核人员id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '审批流配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_form +-- ---------------------------- +DROP TABLE IF EXISTS `apv_form`; +CREATE TABLE `apv_form` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `process_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '表单名', + `process_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '表单id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '审批表单表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_key +-- ---------------------------- +DROP TABLE IF EXISTS `apv_key`; +CREATE TABLE `apv_key` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `user_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构 id', + `source` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'key所属', + `app_key` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用凭证key', + `app_secret` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用凭证secret', + `http_aes_key` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '加密aes_key', + `http_token` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '签名token', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '数据最后更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '审批流记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_send_key +-- ---------------------------- +DROP TABLE IF EXISTS `apv_send_key`; +CREATE TABLE `apv_send_key` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `orgid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '机构id', + `user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作人', + `business_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '业务id', + `send_dd_user_phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发起人钉钉手机号', + `send_dd_user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发起人钉钉id', + `process_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '钉钉表单id', + `process_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '表单名称', + `source` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'key所属公司', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for apv_status_history +-- ---------------------------- +DROP TABLE IF EXISTS `apv_status_history`; +CREATE TABLE `apv_status_history` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `apv_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '审批id', + `apv_status` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '审批状态', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '状态改变时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '审批状态记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for arrears +-- ---------------------------- +DROP TABLE IF EXISTS `arrears`; +CREATE TABLE `arrears` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `localid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '本地对应供应商账单表中id', + `billid` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单在某一聚合周期(day/month)下的唯一标识', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `business_op` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务操作', + `provider_amt` double(18, 6) NULL DEFAULT NULL COMMENT '客户在供应商处消费金额', + `amount` double(18, 6) NULL DEFAULT NULL COMMENT '客户在开元实际要扣费的金额', + `bill_timestamp` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单详细日期', + `bill_date` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单日期', + `productid` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `providerid` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `quantity` varchar(3) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1' COMMENT '产品数量', + `source` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单来源', + `starttime` timestamp NULL DEFAULT current_timestamp() COMMENT '欠费日期', + `endtime` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销账日期', + `bill_state` varchar(2) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `create_at` timestamp NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '欠费账单表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for baidu_cron_job +-- ---------------------------- +DROP TABLE IF EXISTS `baidu_cron_job`; +CREATE TABLE `baidu_cron_job` ( + `id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `source` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '来源网站', + `orderid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单ID', + `ordertype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单类型', + `userid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `reason` varchar(512) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '触发原因', + `refresh` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '是否刷新', + `feedback` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '定时器返回结果', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '百度定时器表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for baidu_kafka_msg +-- ---------------------------- +DROP TABLE IF EXISTS `baidu_kafka_msg`; +CREATE TABLE `baidu_kafka_msg` ( + `id` varchar(36) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '唯一消息ID', + `messageid` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '消息唯一标识', + `taskid` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '任务ID', + `userid` varchar(36) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户ID', + `accountid` varchar(36) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账户ID', + `usertype` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户类型', + `receiverid` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接收者ID', + `contentvar` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '内容变量', + `sendchannel` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发送渠道', + `content` varchar(512) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '消息内容', + `messagetemplateid` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板ID', + `isvirtualstore` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否虚拟店铺', + `channelmessageid` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '渠道消息ID', + `channelstatus` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '渠道状态', + `majorcategory` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '主分类', + `minorcategory` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '子分类', + `status` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '消息状态', + `createtime` datetime NULL DEFAULT NULL COMMENT '创建时间', + `updatetime` datetime NULL DEFAULT NULL COMMENT '更新时间', + `expiretime` datetime NULL DEFAULT NULL COMMENT '过期时间', + `windowtime` datetime NULL DEFAULT NULL COMMENT '窗口时间', + `valid` tinyint(1) NULL DEFAULT NULL COMMENT '是否有效', + `complete` tinyint(1) NULL DEFAULT NULL COMMENT '是否完成', + `disturbhold` tinyint(1) NULL DEFAULT NULL COMMENT '是否打扰保持', + `sendcomplete` tinyint(1) NULL DEFAULT NULL COMMENT '发送完成状态', + `kyysendstatus` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '开元发送完成状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '百度Kafka消息表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for baidu_orders +-- ---------------------------- +DROP TABLE IF EXISTS `baidu_orders`; +CREATE TABLE `baidu_orders` ( + `id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orderid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单ID', + `ordertype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单类型', + `accountid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '百度用户id', + `servicetype` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品类型', + `producttype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计费类型', + `shortids` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '实例ID', + `price` double(18, 2) NULL DEFAULT NULL COMMENT '订单总金额', + `status` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单状态', + `refundstatus` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `autoreneworder` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否自动续费', + `createtime` timestamp NULL DEFAULT NULL COMMENT '创建时间', + `updatetime` timestamp NULL DEFAULT NULL COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '百度订单表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for baidu_post_bill +-- ---------------------------- +DROP TABLE IF EXISTS `baidu_post_bill`; +CREATE TABLE `baidu_post_bill` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `billId` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单在某一聚合周期(day/month)下的唯一标识', + `accountId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `serviceType` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品名', + `serviceTypeName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品中文名', + `productType` varchar(7) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计费类型:prepay/postpay,分别表示预付费/后付费,目前只有后付费', + `region` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '区域', + `instanceId` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源长ID', + `shortId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源短ID', + `startTime` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计费项账单开始时间(后付费),utc时间', + `endTime` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计费项账单结束时间(后付费),utc时间', + `configurationCH` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品中文配置', + `unitPrice` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品单价', + `pricingUnit` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '价格单位', + `chargeItem` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '后付费计费项英文名', + `chargeItemDesc` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '后付费计费项中文名', + `amount` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用量', + `amountUnit` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用量单位', + `discountAmount` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '折扣用量', + `originPrice` double(18, 6) NULL DEFAULT NULL COMMENT '账单金额', + `catalogPrice` double(18, 6) NULL DEFAULT NULL COMMENT '原价', + `financePrice` double(18, 6) NULL DEFAULT NULL COMMENT '应付金额', + `couponPrice` double(18, 6) NULL DEFAULT NULL COMMENT '代金券金额', + `discountCouponPrice` double(18, 6) NULL DEFAULT NULL COMMENT '折扣券金额', + `cashEquivalentCouponPrice` double(18, 6) NULL DEFAULT NULL COMMENT '现金折扣券金额', + `discountPrice` double(18, 6) NULL DEFAULT NULL COMMENT '折扣金额', + `sysGold` double(18, 6) NULL DEFAULT NULL COMMENT '销账金额', + `deductPrice` double(18, 6) NULL DEFAULT NULL COMMENT 'deductPrice', + `originconfig` varchar(3000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '百度云原始配置', + `bill_state` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '支付状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `kaiyuanprice` double(18, 6) NULL DEFAULT NULL COMMENT '开云实际扣费金额', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '百度后付费账单表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for baidu_pre_bill +-- ---------------------------- +DROP TABLE IF EXISTS `baidu_pre_bill`; +CREATE TABLE `baidu_pre_bill` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `billId` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单在某一聚合周期(day/month)下的唯一标识', + `accountId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单所属账户的ID', + `serviceType` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品名', + `serviceTypeName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品中文名', + `productType` varchar(7) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计费类型', + `region` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '区域', + `instanceId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源 ID', + `instanceName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源名称', + `orderId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '预付费购买时的订单id', + `orderType` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单类型', + `orderTypeDesc` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单类型(中文)', + `orderPurchaseTime` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单的支付时间,utc时间', + `startTime` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单创建时间(预付费),资源账单开始时间(后付费),utc时间', + `serviceStartTime` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源服务开始时间,utc时间', + `serviceEndTime` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源服务结束时间(后付费资源固定为空),utc时间', + `configurationCH` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品中文配置', + `duration` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '预付费服务时长', + `unitPrice` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品单价', + `pricingUnit` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '价格单位,预付费固定为:元/个', + `originPrice` double(18, 3) NULL DEFAULT NULL COMMENT '账单金额', + `catalogPrice` double(18, 3) NULL DEFAULT NULL COMMENT '目录金额', + `financePrice` double(18, 3) NULL DEFAULT NULL COMMENT '应付金额=现金+返点+账期待还+账期退款+欠费', + `noPaidPrice` double(18, 3) NULL DEFAULT NULL COMMENT '优惠金额:代金券+折扣券+折扣金额+销账', + `cashEquivalentCouponPrice` double(18, 3) NULL DEFAULT NULL COMMENT '现金券金额', + `originconfig` varchar(3000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '百度云原始配置', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '百度预付费账单表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for baidu_users +-- ---------------------------- +DROP TABLE IF EXISTS `baidu_users`; +CREATE TABLE `baidu_users` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `user_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'kboss用户id', + `baidu_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '百度用户id', + `baidu_username` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '百度用户名', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for bill +-- ---------------------------- +DROP TABLE IF EXISTS `bill`; +CREATE TABLE `bill` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户编号', + `orderid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单编号', + `ordergoodsid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单明细id', + `business_op` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务操作', + `provider_amt` double(18, 8) NULL DEFAULT NULL COMMENT '未折扣金额', + `quantity` int(11) NULL DEFAULT NULL COMMENT '购买数量', + `amount` double(18, 8) NULL DEFAULT NULL COMMENT '金额', + `bill_date` date NULL DEFAULT NULL COMMENT '账单日期', + `bill_timestamp` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '账单时间戳', + `bill_state` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单状态', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `provider_billid` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商账单id', + `resourceid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源id', + `resource_type` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '账单' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for bill_detail +-- ---------------------------- +DROP TABLE IF EXISTS `bill_detail`; +CREATE TABLE `bill_detail` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `accounting_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账务机构id', + `billid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单ID', + `description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账务说明', + `participantid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '记账方id', + `participanttype` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '记账方类型', + `subjectname` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目名称', + `accounting_dir` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '记账方向', + `amount` double(18, 8) NULL DEFAULT NULL COMMENT '账单金额', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '账单明细' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for buy_log +-- ---------------------------- +DROP TABLE IF EXISTS `buy_log`; +CREATE TABLE `buy_log` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户编号', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售公司id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `spec_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格id', + `quantity` int(11) NULL DEFAULT NULL COMMENT '数量', + `price` double(18, 2) NULL DEFAULT NULL COMMENT '单价', + `amount` double(18, 2) NULL DEFAULT NULL COMMENT '金额', + `start_date` date NULL DEFAULT NULL COMMENT '支付日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '回佣产品购买信息表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for bz_accounting_config +-- ---------------------------- +DROP TABLE IF EXISTS `bz_accounting_config`; +CREATE TABLE `bz_accounting_config` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `opid` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务操作id', + `account_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账户类型', + `subjectid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目号', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '业务记账配置' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for bz_order +-- ---------------------------- +DROP TABLE IF EXISTS `bz_order`; +CREATE TABLE `bz_order` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户id', + `order_date` timestamp NULL DEFAULT NULL COMMENT '订单日期', + `source` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单来源网站', + `order_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单状态0:未支付,1:已交付;2:已关闭;3:已取消;4:后付费', + `business_op` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务操作', + `originalprice` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '原价', + `amount` double(18, 8) NULL DEFAULT NULL COMMENT '金额', + `provider_orderid` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商orderid', + `ordertype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单类型', + `is_big_model` tinyint(1) NULL DEFAULT 0 COMMENT '是否是大模型: 0=否, 1=是', + `servicename` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品名称', + `specdataid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格数据id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `userid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `pay_date` timestamp NULL DEFAULT NULL COMMENT '支付时间', + `refund` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '退费金额', + `thirdparty_order` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '第三方订单号', + `autoreneworder` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否自动续费', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cart_goods +-- ---------------------------- +DROP TABLE IF EXISTS `cart_goods`; +CREATE TABLE `cart_goods` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `cartid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '购物车编号', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `spec_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格id', + `quantity` int(11) NULL DEFAULT NULL COMMENT '数量', + `list_price` double(18, 2) NULL DEFAULT NULL COMMENT '原价', + `discount` double(18, 2) NULL DEFAULT NULL COMMENT '折扣', + `price` double(18, 2) NULL DEFAULT NULL COMMENT '单价', + `amount` double(18, 2) NULL DEFAULT NULL COMMENT '金额', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '购物车商品明细' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for chat_message +-- ---------------------------- +DROP TABLE IF EXISTS `chat_message`; +CREATE TABLE `chat_message` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '消息ID', + `session_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '会话ID', + `role` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '角色: user / assistant / system', + `content` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '消息内容(纯文本或JSON)', + `content_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'text' COMMENT 'text / mixed', + `created_at` datetime NULL DEFAULT current_timestamp() COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '模型对话消息' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for chat_session +-- ---------------------------- +DROP TABLE IF EXISTS `chat_session`; +CREATE TABLE `chat_session` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '会话ID', + `userid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户ID', + `model` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '模型名称', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '会话标题(首条问题摘要)', + `created_at` datetime NULL DEFAULT current_timestamp() COMMENT '创建时间', + `updated_at` datetime NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '模型对话会话' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for component +-- ---------------------------- +DROP TABLE IF EXISTS `component`; +CREATE TABLE `component` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `node_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属节点ID', + `component_type` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部件类型(如 CPU, GPU, Memory)', + `component_model` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部件型号', + `name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部件名称', + `status` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部件状态', + `description` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '部件表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for computing_voucher +-- ---------------------------- +DROP TABLE IF EXISTS `computing_voucher`; +CREATE TABLE `computing_voucher` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `issuer_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发行方名称', + `issuer_orgid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发行方 orgid', + `receiver_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接收方名称', + `receiver_orgid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接收方 orgid', + `obtain_time` date NULL DEFAULT NULL COMMENT '承接方获取到的时间', + `denomination` decimal(10, 2) NULL DEFAULT NULL COMMENT '面额', + `balance` decimal(10, 2) NULL DEFAULT NULL COMMENT '余额', + `region` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '地域', + `zone` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '可用区', + `use_scope` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '使用范围', + `status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '状态 0-未发送 1-已发放', + `distribute` timestamp NULL DEFAULT NULL COMMENT '发放给客户的时间', + `record` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '使用记录', + `start_time` date NULL DEFAULT NULL COMMENT '开始时间', + `end_time` date NULL DEFAULT NULL COMMENT '结束时间', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力券' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for contract +-- ---------------------------- +DROP TABLE IF EXISTS `contract`; +CREATE TABLE `contract` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `partyid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '对方id', + `resellerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '分销商id', + `siign_state` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否签署', + `amount` int(11) NULL DEFAULT NULL COMMENT '合同金额', + `expore_date` date NULL DEFAULT NULL COMMENT '有效期', + `contractfile` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '合同文件', + `sign_date` date NULL DEFAULT NULL COMMENT '签署日期', + `upload_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否上传', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '合同表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cp_discount +-- ---------------------------- +DROP TABLE IF EXISTS `cp_discount`; +CREATE TABLE `cp_discount` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `discount` double(18, 2) NULL DEFAULT NULL COMMENT '折扣率', + `start_date` date NULL DEFAULT NULL COMMENT '起效日期', + `end_date` date NULL DEFAULT NULL COMMENT '失效日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '客户产品折扣' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpc_list +-- ---------------------------- +DROP TABLE IF EXISTS `cpc_list`; +CREATE TABLE `cpc_list` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属机构id', + `center_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '算力中心名称', + `api_server_url` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'API Server 的访问地址', + `status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '状态 (1-运行中, 0-维护中)', + `description` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力中心表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpccluster +-- ---------------------------- +DROP TABLE IF EXISTS `cpccluster`; +CREATE TABLE `cpccluster` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '名称', + `cpcid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '算力中心id', + `clustertype` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群类型', + `ready` int(11) NULL DEFAULT 0 COMMENT '安装状态', + `controllerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '控制节点id', + `enable_date` date NULL DEFAULT NULL COMMENT '启用日期', + `export_date` date NULL DEFAULT NULL COMMENT '停用日期', + `clusterjoin` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群验证码', + `kubeconfig` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群上下文', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力集群' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpccom_pricing +-- ---------------------------- +DROP TABLE IF EXISTS `cpccom_pricing`; +CREATE TABLE `cpccom_pricing` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `center_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '算力中心ID', + `component_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部件ID', + `price` double(18, 2) NULL DEFAULT NULL COMMENT '部件单价', + `unit` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '价格时间单位', + `start_date` date NULL DEFAULT NULL COMMENT '价格启用日期', + `end_date` date NULL DEFAULT NULL COMMENT '价格停用日期(NULL 表示当前有效)', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力中心部件定价表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpclabel +-- ---------------------------- +DROP TABLE IF EXISTS `cpclabel`; +CREATE TABLE `cpclabel` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标签id', + `name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标签名称', + `orgid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '所属中心id', + `labeltype` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标签资源类型', + `label_key` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标签属性', + `symbol` varchar(2) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '等价符号', + `label_value` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标签属性值', + `update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpclist +-- ---------------------------- +DROP TABLE IF EXISTS `cpclist`; +CREATE TABLE `cpclist` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '名称', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '属主机构id', + `pcapi_url` varchar(500) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'pcapi网址', + `api_user` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接口用户', + `api_pwd` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接口密码', + `enable_date` date NOT NULL COMMENT '启用日期', + `expire_date` timestamp NULL DEFAULT NULL COMMENT '停用日期', + `contactname` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人', + `contactphone` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系电话', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力中心列表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpcluster +-- ---------------------------- +DROP TABLE IF EXISTS `cpcluster`; +CREATE TABLE `cpcluster` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `center_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属算力中心ID', + `cluster_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群名称', + `cluster_type` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群类型', + `api_server_url` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'API Server 的地址', + `status` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群状态 (Running, Maintaining)', + `node_count` int(11) NULL DEFAULT NULL COMMENT '集群中节点数量', + `description` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力中心集群' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpcnode +-- ---------------------------- +DROP TABLE IF EXISTS `cpcnode`; +CREATE TABLE `cpcnode` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `cpcid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '算力中心id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '名称', + `clusterid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属集群', + `node_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点状态', + `ip` varchar(90) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '内网ip', + `devicetype` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点类型', + `sshport` int(11) NULL DEFAULT NULL COMMENT 'ssh端口号', + `adminuser` varchar(99) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '管理账号', + `adminpwd` varchar(99) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '管理密码', + `role` varchar(11) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群角色', + `external_ip` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '未设置' COMMENT '公网ip', + `cpu_model` varchar(80) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT 'STANDARD' COMMENT 'cpu硬件型号', + `cpu_stock` int(11) NULL DEFAULT 0 COMMENT 'cpu库存量', + `memory_model` varchar(80) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT 'STANDARD' COMMENT '内存硬件型号', + `memory_stock` int(11) NULL DEFAULT 0 COMMENT '内存库存量', + `sysdisk_stock` int(11) NULL DEFAULT 0 COMMENT '系统盘库存量', + `datadisk_stock` int(11) NULL DEFAULT 0 COMMENT '数据盘库存量', + `gpu_model` varchar(80) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT 'STANDARD' COMMENT '显卡硬件型号', + `gpu_stock` int(11) NULL DEFAULT 0 COMMENT '显卡供应量', + `enable_date` date NULL DEFAULT NULL COMMENT '启用日期', + `export_date` date NULL DEFAULT NULL COMMENT '停用日期', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力设备' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpcwidget +-- ---------------------------- +DROP TABLE IF EXISTS `cpcwidget`; +CREATE TABLE `cpcwidget` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '算力部件id', + `cpcid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '所属中心id', + `type` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '算力部件类型', + `clusterid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '算力集群id', + `model` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'STANDARD' COMMENT '部件型号(系列),STANDARD为Kyy自营', + `resource_unit` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '计费资源单位(个核/Mi内存/Gi存储/块gpu)', + `stock` int(5) NOT NULL DEFAULT 0 COMMENT '库存量,默认为0无货,超过0有货', + `unit_price` float(10, 4) NULL DEFAULT 0.0000 COMMENT '单位单价数额(2.5元/Mi*小时)', + `consumed` float NULL DEFAULT 0 COMMENT '已消费数', + `charge_unit` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '小时' COMMENT '计费周期单位(小时/分钟/秒/天)', + `account_unit` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '元' COMMENT '计费货币单位(元/角/分)', + `update_time` timestamp NOT NULL DEFAULT '2025-11-02 12:21:33' ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `unique_cpc_entry`(`cpcid`, `type`, `clusterid`, `model`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpnode_config +-- ---------------------------- +DROP TABLE IF EXISTS `cpnode_config`; +CREATE TABLE `cpnode_config` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `node_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点ID', + `component_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部件 ID(外键,指向部件表)', + `quantity` int(11) NULL DEFAULT NULL COMMENT '部件数量', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力节点配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cpnode_list +-- ---------------------------- +DROP TABLE IF EXISTS `cpnode_list`; +CREATE TABLE `cpnode_list` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `center_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属算力中心ID', + `cluster_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属集群', + `name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点名称', + `status` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点状态 (idle, allocated, 等)', + `cpu_cores` int(11) NULL DEFAULT NULL COMMENT 'CPU 核心数', + `memory_size` double NULL DEFAULT NULL COMMENT '内存大小 (GB)', + `gpu_count` int(11) NULL DEFAULT NULL COMMENT 'GPU 数量', + `description` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '算力节点表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for cust_message +-- ---------------------------- +DROP TABLE IF EXISTS `cust_message`; +CREATE TABLE `cust_message` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'id', + `custid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户id', + `customer` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户名称', + `phone` varchar(11) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '手机号', + `unit` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '单位', + `product` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '资源名称', + `resources` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '资源需求', + `del_flg` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for customer +-- ---------------------------- +DROP TABLE IF EXISTS `customer`; +CREATE TABLE `customer` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户id', + `email` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱', + `join_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '成为客户途径', + `invite_code` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邀请码', + `pricing_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品定价类型', + `status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户状态', + `contract_begin` date NULL DEFAULT NULL COMMENT '合同开始日期', + `contract_end` date NULL DEFAULT NULL COMMENT '合同结束日期', + `fee_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否付费', + `industry_type` varchar(2) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '行业类型', + `salemanid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '客户属性表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for customer_cart +-- ---------------------------- +DROP TABLE IF EXISTS `customer_cart`; +CREATE TABLE `customer_cart` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户编号', + `last_date` date NULL DEFAULT NULL COMMENT '最后操作日期', + `goods_cnt` int(11) NULL DEFAULT NULL COMMENT '商品数量', + `amount` double(18, 2) NULL DEFAULT NULL COMMENT '金额', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `customer_cart_idx1`(`customerid`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '客户购物车' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for customer_goods +-- ---------------------------- +DROP TABLE IF EXISTS `customer_goods`; +CREATE TABLE `customer_goods` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `providerrid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商资源id', + `productname` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品名称', + `productdesc` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品描述', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户编号', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `specdataid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格id', + `orderid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单号', + `resourceid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商资源ID', + `expire_resourceid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除或过期的资源id', + `start_date` datetime NULL DEFAULT NULL COMMENT '首次购买日期', + `expire_date` datetime NULL DEFAULT NULL COMMENT '到期日期', + `total_quantity` int(11) NULL DEFAULT NULL COMMENT '总量', + `used_quantity` int(11) NULL DEFAULT NULL COMMENT '已用量', + `rest_quantity` int(11) NULL DEFAULT NULL COMMENT '剩余量', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `product_url` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品url', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `orderkey` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商订单列表中的key', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '客户产品持有表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for customer_mapping +-- ---------------------------- +DROP TABLE IF EXISTS `customer_mapping`; +CREATE TABLE `customer_mapping` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `cpid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户在供应商处id', + `sync_date` date NULL DEFAULT NULL COMMENT '同步日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '客户同步表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for customer_postpay +-- ---------------------------- +DROP TABLE IF EXISTS `customer_postpay`; +CREATE TABLE `customer_postpay` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customer_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户id', + `baidu` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '百度权限', + `jingdong` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '0' COMMENT '京东权限', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_op +-- ---------------------------- +DROP TABLE IF EXISTS `data_op`; +CREATE TABLE `data_op` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `userid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `databasename` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '数据库名', + `tablename` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '数据表名', + `opname` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '操作名称', + `recid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '数据主键', + `op_date` date NULL DEFAULT NULL COMMENT '操作日期', + `timestamp` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '数据操作日志表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_visualization +-- ---------------------------- +DROP TABLE IF EXISTS `data_visualization`; +CREATE TABLE `data_visualization` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `username` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名称', + `business_number` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务编号', + `cloud_vendors` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '云厂商', + `business_model` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务模式', + `product_type` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品类型', + `product_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品名称', + `primary_category` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '一级大类', + `secondary_category` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '二级分类', + `tertiary_category` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '三级分类', + `user_attribute` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户属性', + `settlement_business_type` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结算业务类别', + `user_status` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户状态', + `accounting_company` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '入账公司', + `actual_amount_received` double(18, 2) NULL DEFAULT NULL COMMENT '实收合计', + `payment_date` date NULL DEFAULT NULL COMMENT '收款日期', + `entry_date` date NULL DEFAULT NULL COMMENT '录入日期', + `start_date` date NULL DEFAULT NULL COMMENT '开始日期', + `end_date` date NULL DEFAULT NULL COMMENT '结束日期', + `payment_method` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '付费方式', + `cloud_service_discount` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '云业务折扣', + `purchase_price` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '采购价', + `saleman` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售', + `sales_director` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售总监', + `regional_manager` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '区域总经理', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '大屏数据可视化' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for department +-- ---------------------------- +DROP TABLE IF EXISTS `department`; +CREATE TABLE `department` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部门所属机构id', + `depname` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部门名称', + `depleaderid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部门领导id', + `depviceid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部门副职id', + `parentid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '上级部门id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '部门表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for doc_detail +-- ---------------------------- +DROP TABLE IF EXISTS `doc_detail`; +CREATE TABLE `doc_detail` ( + `id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '上传者', + `kind` int(4) NULL DEFAULT NULL COMMENT '文件所属分类', + `file_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文件类型', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题', + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '内容', + `file_path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文件路径', + `status` int(11) NULL DEFAULT 0 COMMENT '状态,0:不展示,1:展示', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for enterprise_audit_info +-- ---------------------------- +DROP TABLE IF EXISTS `enterprise_audit_info`; +CREATE TABLE `enterprise_audit_info` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属机构ID', + `account_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '账号类型: 1:政府 2:企业 3: 个人', + `company_name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '公司名称', + `license_number` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '执照号码', + `license_original_img` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '营业执照正本照片路径', + `license_copy_img` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '营业执照副本照片路径', + `office_address` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '办公地址', + `registered_address` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '注册地址', + `contact_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '联系人姓名', + `telephone` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '固定电话', + `mobile_phone` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '移动电话', + `email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱地址', + `audit_status` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT 'pending' COMMENT '审核状态:pending待审/approved通过/rejected拒绝/', + `reject_reason` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '驳回原因', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '政府企业信息审核表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for floorprice +-- ---------------------------- +DROP TABLE IF EXISTS `floorprice`; +CREATE TABLE `floorprice` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `offer_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '售方机构id', + `bid_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '买方机构id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `price` double(18, 2) NULL DEFAULT NULL COMMENT '价格', + `begin_date` date NULL DEFAULT NULL COMMENT '起效日期', + `end_date` date NULL DEFAULT NULL COMMENT '失效日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '底价表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for homepage_category_tree +-- ---------------------------- +DROP TABLE IF EXISTS `homepage_category_tree`; +CREATE TABLE `homepage_category_tree` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `domain_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '域名', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属机构ID', + `parentid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '父级ID, 顶级节点为NULL', + `priority` int(11) NULL DEFAULT NULL COMMENT '排序优先级', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '节点名称', + `url` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品跳转链接', + `iconurl` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '图标路径,仅顶级节点有值', + `listurl` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '跳转列表链接', + `productgroup` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品组', + `label` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签', + `source` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '来源网站标识', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '层级分类表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for intention_customer +-- ---------------------------- +DROP TABLE IF EXISTS `intention_customer`; +CREATE TABLE `intention_customer` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `mobile` varchar(11) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户电话', + `name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户姓名', + `Email` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户邮箱', + `organization` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户组织', + `intention` varchar(32) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL, + `intention_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1' COMMENT '客户意向状态', + `customer_stage` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户沟通次数', + `remark` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '备注', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for invitecode +-- ---------------------------- +DROP TABLE IF EXISTS `invitecode`; +CREATE TABLE `invitecode` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `iusserid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发出邀请人id', + `invitecode` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邀请码', + `description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邀请码说明', + `promotingid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '促销id', + `issue_date` date NULL DEFAULT NULL COMMENT '发出日期', + `expire_date` date NULL DEFAULT NULL COMMENT '有效截止日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '邀请码表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for invoice +-- ---------------------------- +DROP TABLE IF EXISTS `invoice`; +CREATE TABLE `invoice` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户号', + `billingid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账单id', + `invoice_amont` double(18, 2) NULL DEFAULT NULL COMMENT '发票金额', + `apply_date` date NULL DEFAULT NULL COMMENT '申请日期', + `invloce_state` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发票状态', + `invoce_date` date NULL DEFAULT NULL COMMENT '开票日期', + `post_date` date NULL DEFAULT NULL COMMENT '邮寄日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '发票' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for invoice_apv +-- ---------------------------- +DROP TABLE IF EXISTS `invoice_apv`; +CREATE TABLE `invoice_apv` ( + `id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `apv_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '审批id', + `user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作人user_id', + `user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作人', + `sender` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '审核发起人的机构id', + `customerid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户id', + `apv_status` int(1) NULL DEFAULT NULL COMMENT '审核状态,0:待审核,1:审核中,2:同意,3:拒绝,4:撤销', + `invoice_time` datetime NULL DEFAULT NULL COMMENT '申请开票时间', + `total_amount` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开票金额', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '数据最后更新时间', + `recharge_id` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '本次审批的充值日志id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '发票开票审批记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for invoice_attr +-- ---------------------------- +DROP TABLE IF EXISTS `invoice_attr`; +CREATE TABLE `invoice_attr` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户号', + `invoice_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发票类型', + `invoice_title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发票抬头', + `tax_no` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '税号', + `bank_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '银行名称', + `bank_account` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '银行账号', + `phone` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系电话', + `receiver_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人', + `address` varchar(400) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '地址', + `post_code` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮政编码', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '开票信息表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for invoice_info +-- ---------------------------- +DROP TABLE IF EXISTS `invoice_info`; +CREATE TABLE `invoice_info` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `orgid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '机构id', + `user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '销售id', + `client_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户id(机构id)', + `contract_number` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '合同号', + `invoice_type` int(11) NULL DEFAULT NULL COMMENT '发票类型,1:增值税专票,2:增值税普票', + `invoice_title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发票抬头', + `title_type` int(1) NULL DEFAULT NULL COMMENT '抬头类型,1:个人,2:公司,3:组织', + `tax_rate` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '税率', + `tax_no` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '税号', + `bank_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '开户行', + `bank_account` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '银行卡号', + `phone` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系电话', + `receiver_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人', + `address` varchar(400) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮寄地址', + `post_code` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮政编码', + `update_time` datetime NULL DEFAULT NULL COMMENT '修改时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `contract_number`(`contract_number`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '销售配置用户发票信息' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for invoice_status +-- ---------------------------- +DROP TABLE IF EXISTS `invoice_status`; +CREATE TABLE `invoice_status` ( + `id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `recharge_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '充值日志id', + `status` int(1) NULL DEFAULT 0 COMMENT '是否已开票,0:未开票,1:开票中,2:已开票,3:开票失败', + `apv_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '审批id', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '发票开票审批日志' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_detail +-- ---------------------------- +DROP TABLE IF EXISTS `issue_detail`; +CREATE TABLE `issue_detail` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `issueid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '工单id', + `title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标题', + `description` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `specid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '配置id', + `issue_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '工单状态', + `create_date` date NULL DEFAULT NULL COMMENT '创建日期', + `finish_date` date NULL DEFAULT NULL COMMENT '完成日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '工单明细' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issues +-- ---------------------------- +DROP TABLE IF EXISTS `issues`; +CREATE TABLE `issues` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标题', + `description` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '工单描述', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户号', + `resourceid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源id', + `orderid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单id', + `create_date` date NULL DEFAULT NULL COMMENT '工单创建日期', + `finish_date` date NULL DEFAULT NULL COMMENT '工单完成日期', + `issue_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '工单状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '工单' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issues_handle +-- ---------------------------- +DROP TABLE IF EXISTS `issues_handle`; +CREATE TABLE `issues_handle` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `issueid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '工单号', + `handle_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '处理时间', + `handlerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理人员id', + `handle_text` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '内容', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '工单处理' ROW_FORMAT = Dynamic; + + +-- ---------------------------- +-- Table structure for kyy8s_ins +-- ---------------------------- +DROP TABLE IF EXISTS `kyy8s_ins`; +CREATE TABLE `kyy8s_ins` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customer_goods_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户资源id', + `orgid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户orgid', + `productid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `productname` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品名称', + `podname` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'pod名称', + `namespace` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '命名空间', + `pvcname` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'pvc名称', + `containername` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '容器名称', + `image` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '镜像', + `volumename` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '挂载卷名称', + `ip_region` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'IP/地域', + `port` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '对外端口', + `loginname` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '登录名称', + `loginpwd` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '登录密码', + `storage` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '存储', + `cpu` int(11) NULL DEFAULT NULL COMMENT 'cpu', + `memory` int(11) NULL DEFAULT NULL COMMENT '内存', + `gpu` int(11) NULL DEFAULT NULL COMMENT '卡数', + `gpumem` int(11) NULL DEFAULT NULL COMMENT '卡数容量', + `status` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = 'k8s用户实例表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for kyy_supply +-- ---------------------------- +DROP TABLE IF EXISTS `kyy_supply`; +CREATE TABLE `kyy_supply` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'orgid', + `basic_info` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '集群基础信息', + `excel_info` longtext CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT 'excel详情', + `file_path` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '上传文件路径', + `remark` varchar(500) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '备注信息', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '开元线下供应表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for lease_server_data +-- ---------------------------- +DROP TABLE IF EXISTS `lease_server_data`; +CREATE TABLE `lease_server_data` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `providerid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `productid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '产品id', + `product_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商品名', + `provider_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '供应商名', + `user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '入库人', + `store_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '机房', + `other_data` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '其他', + `end_date` date NULL DEFAULT NULL COMMENT '可租赁截止日期', + `price` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '单价(分)', + `status` int(1) NULL DEFAULT 0 COMMENT '产品状态,备用字段,库存根据stock判断', + `stock` int(11) NULL DEFAULT NULL COMMENT '库存', + `amount` int(11) NULL DEFAULT NULL COMMENT '总数', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '租赁-服务器数据表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for lease_server_parameter +-- ---------------------------- +DROP TABLE IF EXISTS `lease_server_parameter`; +CREATE TABLE `lease_server_parameter` ( + `id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `server_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备id', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '名字', + `parameter` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数', + `number` int(4) NULL DEFAULT NULL COMMENT '数量', + `del_flg` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for lease_server_status +-- ---------------------------- +DROP TABLE IF EXISTS `lease_server_status`; +CREATE TABLE `lease_server_status` ( + `id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `productid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '产品id', + `server_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备id', + `status` int(1) NULL DEFAULT 0 COMMENT '租赁状态: 0:可租,1:下单锁定,2:租赁中,3:租赁到期,4:产品到期', + `lease_start_time` date NULL DEFAULT NULL COMMENT '对外租赁开始日期', + `lease_end_time` date NULL DEFAULT NULL COMMENT '对外租赁结束日期', + `end_date` date NULL DEFAULT NULL COMMENT '可租赁截止日期', + `order_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '订单id', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for lease_store_data +-- ---------------------------- +DROP TABLE IF EXISTS `lease_store_data`; +CREATE TABLE `lease_store_data` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '录入人', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '机房名字', + `location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '坐标', + `address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '地址', + `bandwidth_price` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '带宽单价', + `stored_price` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '存储空间单价', + `ip_price` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'ip单价', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '修改时间戳', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `name`(`name`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for ledger +-- ---------------------------- +DROP TABLE IF EXISTS `ledger`; +CREATE TABLE `ledger` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `accounting_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账本机构', + `subjectid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目号', + `acc_date` date NULL DEFAULT NULL COMMENT '账务日期', + `d_balance` double(18, 2) NULL DEFAULT NULL COMMENT '借方余额', + `c_balance` double(18, 2) NULL DEFAULT NULL COMMENT '贷方余额', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '总账表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for llm +-- ---------------------------- +DROP TABLE IF EXISTS `llm`; +CREATE TABLE `llm` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '模型记录ID', + `name` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '展示名称', + `model` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '厂商模型标识', + `description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模型说明', + `llmcatelogid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '所属目录ID', + `iconid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '图标标识', + `upappid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '上游应用ID', + `apiname` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'API 类型名', + `providerid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务商ID', + `ownerid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '所有者ID', + `enabled_date` date NULL DEFAULT NULL COMMENT '生效日期', + `expired_date` date NULL DEFAULT NULL COMMENT '失效日期', + `query_apiname` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '异步任务查询 API', + `query_period` int(11) NULL DEFAULT NULL COMMENT '轮询间隔(秒),无则 NULL', + `ppid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '定价/产品协议ID', + `created_at` datetime NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + `updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'LLM/多模态模型' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for llm_catelog +-- ---------------------------- +DROP TABLE IF EXISTS `llm_catelog`; +CREATE TABLE `llm_catelog` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '目录ID', + `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '目录名称,如文生文、图生视频', + `created_at` datetime NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + `updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '模型分类目录' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for login_fail_log +-- ---------------------------- +DROP TABLE IF EXISTS `login_fail_log`; +CREATE TABLE `login_fail_log` ( + `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID', + `user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户名', + `first_failed_time` datetime NULL DEFAULT NULL COMMENT '首次失败时间(当前连续失败周期的开始时间)', + `failed_count` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '连续登录失败次数', + `last_failed_time` datetime NULL DEFAULT NULL COMMENT '最后一次失败时间', + `lock_until` datetime NULL DEFAULT NULL COMMENT '账户锁定截止时间,NULL表示未锁定', + `created_at` datetime NULL DEFAULT current_timestamp() COMMENT '记录创建时间', + `updated_at` datetime NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_user_name`(`user_name`) USING BTREE COMMENT '确保每个用户只有一条聚合记录' +) ENGINE = InnoDB AUTO_INCREMENT = 27 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '登录失败统计与锁定状态表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for mail_code +-- ---------------------------- +DROP TABLE IF EXISTS `mail_code`; +CREATE TABLE `mail_code` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `mailcode` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '编码id', + `customer_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '编码id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for message +-- ---------------------------- +DROP TABLE IF EXISTS `message`; +CREATE TABLE `message` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `senderid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发送方id', + `receiverid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接收方类型', + `msgtype` varchar(90) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '消息类型', + `msgtext` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '消息内容', + `msgstatus` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '消息状态', + `sendtime` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '消息发送时间', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '消息' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for message_config +-- ---------------------------- +DROP TABLE IF EXISTS `message_config`; +CREATE TABLE `message_config` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `msgtype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '消息模板类型', + `msgtext` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '消息模板内容', + `msgstatus` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '消息状态权限', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '站内信配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for model_api_doc +-- ---------------------------- +DROP TABLE IF EXISTS `model_api_doc`; +CREATE TABLE `model_api_doc` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID', + `model_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '模型ID', + `api_url` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '接口地址', + `curl_code` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'Curl请求代码', + `python_code` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'Python请求代码', + `created_at` datetime NULL DEFAULT current_timestamp() COMMENT '创建时间', + `updated_at` datetime NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 72 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '模型API文档表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for model_management +-- ---------------------------- +DROP TABLE IF EXISTS `model_management`; +CREATE TABLE `model_management` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID', + `llmid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '映射微服务的llmid', + `provider` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '厂商名称', + `model_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '模型标识名', + `display_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '展示名称', + `model_logo` varchar(400) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模型logo', + `model_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模型类型', + `listing_status` tinyint(1) NOT NULL DEFAULT 0 COMMENT '上架状态:0待上架 1已上架', + `sort_order` int(11) NOT NULL DEFAULT 0 COMMENT '排序权重,数值越小越靠前', + `context_length` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '上下文长度(token数)', + `input_token_price` decimal(12, 8) NOT NULL DEFAULT 0.00000000 COMMENT '输入token单价(元/千token)', + `output_token_price` decimal(12, 8) NOT NULL DEFAULT 0.00000000 COMMENT '输出token单价(元/千token)', + `cache_hit_input_price` decimal(12, 8) NOT NULL DEFAULT 0.00000000 COMMENT '输入缓存命中token单价(元/千token)', + `billing_method` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '计费方式', + `billing_unit` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '1K tokens' COMMENT '计费单位', + `capabilities` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模型能力描述', + `limitations` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模型限制', + `highlights` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模型亮点', + `is_active` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否启用', + `experience` tinyint(1) NULL DEFAULT 0 COMMENT '是否体验字段', + `description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模型备注描述', + `created_at` datetime NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + `updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 79 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '模型管理表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for model_usage +-- ---------------------------- +DROP TABLE IF EXISTS `model_usage`; +CREATE TABLE `model_usage` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'id', + `userid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户id', + `apikey` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'apikey', + `llmid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '映射微服务的llmid', + `original_price` decimal(12, 8) NOT NULL DEFAULT 0.00000000 COMMENT '原始价格', + `orderid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '订单ID', + `bill_status` tinyint(1) NOT NULL DEFAULT 0 COMMENT '账单状态:0未支付 1已支付', + `usage_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '使用详情数据', + `created_at` datetime NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + `updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '模型使用记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for order_goods +-- ---------------------------- +DROP TABLE IF EXISTS `order_goods`; +CREATE TABLE `order_goods` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orderid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `spec_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格id', + `quantity` int(11) NULL DEFAULT NULL COMMENT '数量', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `chargeduration` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '购买时长', + `unit` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '购买时长单位', + `chargemode` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计费方式', + `servicename` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品名称', + `list_price` double(18, 8) NULL DEFAULT NULL COMMENT '原价', + `discount` double(18, 2) NULL DEFAULT NULL COMMENT '折扣', + `price` double(18, 8) NULL DEFAULT NULL COMMENT '单价', + `amount` double(18, 8) NULL DEFAULT NULL COMMENT '金额', + `is_big_model` tinyint(1) NULL DEFAULT 0 COMMENT '是否是大模型: 0=否, 1=是', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `end_date` date NULL DEFAULT NULL COMMENT '到期日期', + `resourcestarttime` timestamp NULL DEFAULT NULL, + `resourceendtime` timestamp NULL DEFAULT NULL, + `resourceids` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `orderkey` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商订单列表中的key', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单商品' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for order_state +-- ---------------------------- +DROP TABLE IF EXISTS `order_state`; +CREATE TABLE `order_state` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orderid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单id', + `state_no` int(11) NULL DEFAULT NULL COMMENT '状态编号', + `state_date` date NULL DEFAULT NULL COMMENT '状态日期', + `order_state` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `order_state_idx1`(`orderid`, `state_no`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单状态表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for org_roles +-- ---------------------------- +DROP TABLE IF EXISTS `org_roles`; +CREATE TABLE `org_roles` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构编码', + `roleid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '角色编码', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '机构角色' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for org_type_subject +-- ---------------------------- +DROP TABLE IF EXISTS `org_type_subject`; +CREATE TABLE `org_type_subject` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `org_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构类型', + `subjectid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `creat_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '机构类型科目对照表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for organization +-- ---------------------------- +DROP TABLE IF EXISTS `organization`; +CREATE TABLE `organization` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '机构编码', + `orgname` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构名称', + `contactor` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人', + `contactor_phone` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人电话', + `province_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所在省id', + `city_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所在城市id', + `distinct_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所在地区id', + `emailaddress` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱', + `address` varchar(400) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '地址', + `main_business` varchar(1000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '主营业务描述', + `orgcode` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '组织结构代码', + `license_img` varchar(400) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '营业执照', + `id_img` varchar(400) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '身份证', + `parentid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '父机构id', + `org_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构类型', + `accountid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账号', + `picture` varchar(400) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '机构' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for params +-- ---------------------------- +DROP TABLE IF EXISTS `params`; +CREATE TABLE `params` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `pname` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '参数名称', + `pvalue` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '参数值', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '参数表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for permission +-- ---------------------------- +DROP TABLE IF EXISTS `permission`; +CREATE TABLE `permission` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '权限id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '名称', + `description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `ptype` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '类型', + `parentid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '父权限id', + `path` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '路径', + `title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标题', + `icon` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '图标', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE, + INDEX `permission_idx1`(`ptype`) USING BTREE, + INDEX `permission_idx2`(`parentid`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '权限' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for product +-- ---------------------------- +DROP TABLE IF EXISTS `product`; +CREATE TABLE `product` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商编号', + `providerpid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应方产品id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '名称', + `description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `label` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品标签', + `productgroup` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品组', + `ptype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品类型', + `classify` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '专属分类 用于批量配置', + `state` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '状态', + `effect_date` date NULL DEFAULT NULL COMMENT '起效日期', + `expire_date` date NULL DEFAULT NULL COMMENT '失效日期', + `salemode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售模式', + `product_code` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品编码', + `spec_note` varchar(2000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `product_area` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品区域', + `specific_pattern` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格模版id', + `reseller_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属分销商id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `hotshow` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1' COMMENT '1展示 0不展示', + `hotdiscount` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '热门折扣', + `hotshows` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for product_config +-- ---------------------------- +DROP TABLE IF EXISTS `product_config`; +CREATE TABLE `product_config` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `price` int(11) NULL DEFAULT NULL COMMENT '产品价格', + `server_username` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务器用户名', + `server_password` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务器密码', + `ip` varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL COMMENT '服务器ip', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳' +) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for product_inquiry +-- ---------------------------- +DROP TABLE IF EXISTS `product_inquiry`; +CREATE TABLE `product_inquiry` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '唯一标识符', + `domain_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属域名', + `publish_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发布商品1/ 发布需求2', + `relate_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发布商品1/ 发布需求2', + `content` varchar(1024) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '咨询需求内容', + `custom_type` tinyint(1) NULL DEFAULT NULL COMMENT '客户类型(0-个人/1-企业)', + `name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人姓名', + `phone` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系电话', + `company` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '企业客户公司名称', + `email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '电子邮箱', + `feedback` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '反馈状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志(0-正常/1-已删除)', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `create_at` timestamp NULL DEFAULT current_timestamp() COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品咨询表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for product_salemode +-- ---------------------------- +DROP TABLE IF EXISTS `product_salemode`; +CREATE TABLE `product_salemode` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `protocolid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售协议id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `discount` double(18, 2) NULL DEFAULT NULL COMMENT '折扣率', + `price` double(18, 2) NULL DEFAULT NULL COMMENT '价格', + `unit` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '时间单位', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for product_smart +-- ---------------------------- +DROP TABLE IF EXISTS `product_smart`; +CREATE TABLE `product_smart` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '序号', + `product_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '产品型号', + `location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备所在地', + `scale` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '规模', + `leadtime` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '交付时间', + `brand` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备品牌', + `resource_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '资源类型', + `card_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '算卡型号', + `card_interface` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '算卡接口', + `cpu` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'CPU ', + `memory` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '内存', + `system_disk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '系统盘', + `data_disk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据盘', + `data_network` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据网卡', + `card_network` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '管理网卡', + `outer_bandwidth` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '外网带宽 ', + `shared_storage` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '共享存储', + `address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'ip地址', + `test_claim` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '测试要求0免费1收费', + `yearly_rant` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年租金(元/月)', + `quarterly_rent` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度租金 (元/月)', + `monthly_rent` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '月租金(元/月) ', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '类型名称11A100、12A800、13H800、15A200', + `del_flg` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标志', + `update_date` timestamp NULL DEFAULT current_timestamp() COMMENT '更新日期', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for product_type +-- ---------------------------- +DROP TABLE IF EXISTS `product_type`; +CREATE TABLE `product_type` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '类型名称', + `parentid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '父节点id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品类型' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for productauth +-- ---------------------------- +DROP TABLE IF EXISTS `productauth`; +CREATE TABLE `productauth` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `authfromid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '授权机构id', + `authtoid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接受授权机构id', + `salemode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售方式', + `start_date` date NULL DEFAULT NULL COMMENT '开始日期', + `end_date` date NULL DEFAULT NULL COMMENT '结束日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品授权销售表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for promote_discount +-- ---------------------------- +DROP TABLE IF EXISTS `promote_discount`; +CREATE TABLE `promote_discount` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `promotingid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '促销id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '促销产品', + `discount` double(18, 2) NULL DEFAULT NULL COMMENT '促销折扣', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '促销产品折扣' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for promoted_cutomer +-- ---------------------------- +DROP TABLE IF EXISTS `promoted_cutomer`; +CREATE TABLE `promoted_cutomer` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `inviteid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邀请码id', + `customer` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户id', + `join_date` date NULL DEFAULT NULL COMMENT '获客日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '促销活动获客清单' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for promoting +-- ---------------------------- +DROP TABLE IF EXISTS `promoting`; +CREATE TABLE `promoting` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '促销机构', + `title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '促销标题', + `description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '促销说明', + `start_date` date NULL DEFAULT NULL COMMENT '启动日期', + `end_date` date NULL DEFAULT NULL COMMENT '截止日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '促销活动' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for provider +-- ---------------------------- +DROP TABLE IF EXISTS `provider`; +CREATE TABLE `provider` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '别名名称', + `description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', + `appid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用id', + `providerkey` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用key', + `state` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '状态', + `settle_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '销售结算方式', + `settle_flowid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '结算流程', + `settle_datep` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结算日期模版', + `start_date` date NULL DEFAULT NULL COMMENT '起效日期', + `end_date` date NULL DEFAULT NULL COMMENT '失效日期', + `discount_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否支持折扣销售模式', + `rebate_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否支持折返佣售模式', + `floorprice_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否支持底价销售模式', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `user_orgid` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户供应商模式,用户机构id', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品供应商' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for provider_settle_data +-- ---------------------------- +DROP TABLE IF EXISTS `provider_settle_data`; +CREATE TABLE `provider_settle_data` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '名字', + `user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作人id', + `orgid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '机构id', + `provider_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `settle_mode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '销售结算方式', + `provider_settle_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '结算方式', + `apv_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '审批id', + `bill_start_date` date NULL DEFAULT NULL COMMENT '周期开始日期', + `bill_end_date` date NULL DEFAULT NULL COMMENT '周期结束日期', + `money` int(11) NULL DEFAULT NULL COMMENT '周期结算额(分)', + `money_2` int(11) NULL DEFAULT NULL COMMENT '底价结算额', + `money_1` int(11) NULL DEFAULT NULL COMMENT '佣金结算额', + `money_0` int(11) NULL DEFAULT NULL COMMENT '折扣结算额', + `detail_status` int(1) NULL DEFAULT 0 COMMENT '详单状态,0:未生成,1:已生成', + `apv_start_time` datetime NULL DEFAULT NULL COMMENT '审核发起时间', + `apv_end_time` datetime NULL DEFAULT NULL COMMENT '审核结束时间', + `status` int(11) NULL DEFAULT NULL COMMENT '审核状态,0:待审核,1:审核中,2:同意,3:拒绝,4:撤销', + `settle_status` int(1) NULL DEFAULT 0 COMMENT '账单状态,0:未结账,1:已结账,2:结账失败', + `failure_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '账单失败类型id# 0:折扣, 1:返佣 2:低价', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `del_flg` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, + `create_at` datetime NULL DEFAULT current_timestamp(), + `update_at` datetime NULL DEFAULT current_timestamp(), + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `provide_un`(`provider_id`, `bill_start_date`, `bill_end_date`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for rebate_cycle +-- ---------------------------- +DROP TABLE IF EXISTS `rebate_cycle`; +CREATE TABLE `rebate_cycle` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `protocolid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '协议id', + `rebate_cycle` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '返佣周期', + `sette_dp` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结算日期模板', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '返佣周期表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for rebate_settledp +-- ---------------------------- +DROP TABLE IF EXISTS `rebate_settledp`; +CREATE TABLE `rebate_settledp` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构id', + `resellerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '分销商id', + `rebate_cycle` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '返佣周期', + `date_pattern` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '日期模板', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '返佣结算日期模板表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for recharge_log +-- ---------------------------- +DROP TABLE IF EXISTS `recharge_log`; +CREATE TABLE `recharge_log` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `original_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '原充值日志id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户号', + `action` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '操作', + `recharge_amt` double(18, 2) NULL DEFAULT NULL COMMENT '充值金额', + `fee_amt` double(18, 2) NULL DEFAULT NULL COMMENT '手续费', + `recharge_path` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '充值途径', + `recharge_date` date NULL DEFAULT NULL COMMENT '充值日期', + `recharge_sno` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '支付流水号', + `recharge_timestamp` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '支付完成时间', + `op_userid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '操作员id', + `weixin_sno` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '微信流水号', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '充值日志' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for reseller +-- ---------------------------- +DROP TABLE IF EXISTS `reseller`; +CREATE TABLE `reseller` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL, + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '分销商id', + `settle_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '结算方式', + `settle_flow` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '结算流程', + `settle_datep` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结算日期模版', + `salemanid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '上级机构销售id', + `domain_name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '域名地址', + `logo` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'logo', + `license_number` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '经营许可证号', + `license` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '经营许可证', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `address` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `mobile` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `email` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `IPC` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `copyright` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `publicsecurity` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '分销商属性表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for resource_using +-- ---------------------------- +DROP TABLE IF EXISTS `resource_using`; +CREATE TABLE `resource_using` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `resourceid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '资源id', + `use_date` date NULL DEFAULT NULL COMMENT '使用日期', + `total_quantity` double(18, 2) NULL DEFAULT NULL COMMENT '总量', + `used_quantity` int(11) NULL DEFAULT NULL COMMENT '已用量', + `rest_quantity` int(11) NULL DEFAULT NULL COMMENT '剩余量', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '资源使用日志' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for role +-- ---------------------------- +DROP TABLE IF EXISTS `role`; +CREATE TABLE `role` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '角色id', + `role` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '角色名称', + `org_type` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '机构类型', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `role_idx1`(`org_type`, `role`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = ' 角色' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for rolepermission +-- ---------------------------- +DROP TABLE IF EXISTS `rolepermission`; +CREATE TABLE `rolepermission` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `roleid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '角色id', + `permid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '权限id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '角色权限表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for rp_discount +-- ---------------------------- +DROP TABLE IF EXISTS `rp_discount`; +CREATE TABLE `rp_discount` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `resellerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '分销商id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `discount` double(18, 2) NULL DEFAULT NULL COMMENT '折扣率', + `income_pzt` double(18, 2) NULL DEFAULT NULL COMMENT '收入百分比', + `start_date` date NULL DEFAULT NULL COMMENT '起效日期', + `end_date` date NULL DEFAULT NULL COMMENT '失效日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '分销商产品折扣' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for rp_rebate +-- ---------------------------- +DROP TABLE IF EXISTS `rp_rebate`; +CREATE TABLE `rp_rebate` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `rebatecycleid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '返佣周期id', + `sale_amount` double(18, 2) NULL DEFAULT NULL COMMENT '最低销售额', + `rebate_rate` double(18, 2) NULL DEFAULT NULL COMMENT '返佣率', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '返佣周期阶段表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for rp_rebate_ctl +-- ---------------------------- +DROP TABLE IF EXISTS `rp_rebate_ctl`; +CREATE TABLE `rp_rebate_ctl` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构id', + `resellerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '分销商id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `start_date` date NULL DEFAULT NULL COMMENT '起效日期', + `end_date` date NULL DEFAULT NULL COMMENT '失效日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE, + INDEX `rp_rebate_ctl_idx2`(`resellerid`, `productid`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '返佣控制表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for saleprotocol +-- ---------------------------- +DROP TABLE IF EXISTS `saleprotocol`; +CREATE TABLE `saleprotocol` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `offer_salemanid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '售方销售id', + `offer_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '售方机构id', + `bid_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '买方机构id', + `salemode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售方式', + `settle_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结算方式', + `settle_dp` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结算日期模版', + `protocolfile` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '协议文件', + `start_date` date NULL DEFAULT NULL COMMENT '起效日期', + `end_date` date NULL DEFAULT NULL COMMENT '失效日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '销售协议' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for settle_log +-- ---------------------------- +DROP TABLE IF EXISTS `settle_log`; +CREATE TABLE `settle_log` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `accounting_orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账务机构id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应商id', + `settle_date` date NULL DEFAULT NULL COMMENT '结算日期', + `settle_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结算模式', + `sale_mode` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售模式', + `settle_amt` double(18, 2) NULL DEFAULT NULL COMMENT '结算金额', + `business_op` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '业务操作', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '结算日志' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for sms_limit +-- ---------------------------- +DROP TABLE IF EXISTS `sms_limit`; +CREATE TABLE `sms_limit` ( + `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID', + `mobile` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '手机号码', + `first_send_time` datetime NULL DEFAULT NULL COMMENT '首次发送时间', + `send_count` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '发送次数', + `last_send_time` datetime NULL DEFAULT NULL COMMENT '最后发送时间', + `lock_until` datetime NULL DEFAULT NULL COMMENT '锁定截止时间', + `created_at` datetime NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + `updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 28 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '手机短信发送限制表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for sms_record +-- ---------------------------- +DROP TABLE IF EXISTS `sms_record`; +CREATE TABLE `sms_record` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `customerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '客户id', + `send_type` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发送类型', + `mobile` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '手机号', + `email` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱', + `message` varchar(510) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发送内容', + `send_time` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发送时间', + `send_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发送状态', + `task_status` varchar(2) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '任务状态 1:待发送,2:待定时发送,11:发送MQ成功,12:MQ消费成功,21:请求成功,22:请求失败,31:取消发送', + `remark` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '发送失败备注信息', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `create_at` timestamp NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '短信邮箱记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for sms_template +-- ---------------------------- +DROP TABLE IF EXISTS `sms_template`; +CREATE TABLE `sms_template` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板名称', + `template_type` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板类型', + `code` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板编码', + `content` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板内容', + `description` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '场景说明', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '短信模板表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for specification +-- ---------------------------- +DROP TABLE IF EXISTS `specification`; +CREATE TABLE `specification` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板所属机构id', + `providerid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '指定供应商id', + `patternname` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板名称', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `spec_pattern` varchar(4000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格模版', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品规格' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for specificdata +-- ---------------------------- +DROP TABLE IF EXISTS `specificdata`; +CREATE TABLE `specificdata` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品id', + `sourceid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '来源id', + `spec_data` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规格数据', + `create_date` date NULL DEFAULT NULL COMMENT '规格创建日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品规格数据' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for subject +-- ---------------------------- +DROP TABLE IF EXISTS `subject`; +CREATE TABLE `subject` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '科目名称', + `balance_side` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '余额方向', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '科目表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for transfer_record +-- ---------------------------- +DROP TABLE IF EXISTS `transfer_record`; +CREATE TABLE `transfer_record` ( + `dimission_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, + `change_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, + `customer_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, + `del_flg` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for ucloud_users +-- ---------------------------- +DROP TABLE IF EXISTS `ucloud_users`; +CREATE TABLE `ucloud_users` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机构id', + `accesskey` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公钥', + `accesskeysecret` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '私钥', + `username` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'ucloud存储得用户名 重复就会报错', + `useremail` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'ucloud自动生成得邮箱', + `projectid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '项目ID', + `attachpoliciesstatus` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '项目策略绑定状态', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '优刻得同步用户表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_action +-- ---------------------------- +DROP TABLE IF EXISTS `user_action`; +CREATE TABLE `user_action` ( + `id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `source` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '来源网站', + `orderid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单ID', + `ordertype` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单类型', + `userid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `reason` varchar(512) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '触发原因', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `refresh` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '是否刷新', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户行为操作表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_api_keys +-- ---------------------------- +DROP TABLE IF EXISTS `user_api_keys`; +CREATE TABLE `user_api_keys` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID', + `userid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户ID', + `opc_apikey` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'API Key', + `appid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '应用ID', + `secretkey` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密钥', + `remote_table_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '远程表ID', + `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '名称', + `expire_time` timestamp NULL DEFAULT NULL COMMENT '过期时间', + `action` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作类型', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间', + `update_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'API Key映射表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_browse_history +-- ---------------------------- +DROP TABLE IF EXISTS `user_browse_history`; +CREATE TABLE `user_browse_history` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '记录ID', + `userid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '用户ID', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '产品ID', + `browse_time` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '浏览时间', + `ip_address` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'IP地址', + `user_agent` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户代理信息', + `priority` int(11) NULL DEFAULT NULL COMMENT '排序优先级', + `tag` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签, upp是供需表', + `publish_type` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '发布商品1/ 发布需求2', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志(0-正常/1-删除)', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户浏览记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_demand +-- ---------------------------- +DROP TABLE IF EXISTS `user_demand`; +CREATE TABLE `user_demand` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `UserId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户ID', + `remark` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '备注', + `companyId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公司ID', + `demandTitle` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求标题', + `demandDesc` varchar(600) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求说明', + `brandName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '品牌', + `modelName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '型号', + `demandType` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求类型', + `provinceName` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '省', + `cityName` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '市区', + `budgetPrice` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求预算', + `demandBegin` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求开始日期', + `demandEnd` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求结束日期', + `endTime` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '截止日期', + `status` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '状态', + `contactUser` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人姓名', + `contactUserMobile` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人手机号', + `orderNum` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求数量', + `recommendStatus` varchar(12) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求状态', + `priceUnit` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '单价', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户需求表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_favorite +-- ---------------------------- +DROP TABLE IF EXISTS `user_favorite`; +CREATE TABLE `user_favorite` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `userid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '用户ID', + `productid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '产品ID', + `favorite_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1' COMMENT '收藏类型: 1-商品, 2-需求', + `tag` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签, upp是供需表', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '收藏时间戳', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户收藏关注表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_publish_company_category +-- ---------------------------- +DROP TABLE IF EXISTS `user_publish_company_category`; +CREATE TABLE `user_publish_company_category` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `domain_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属域名', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属机构', + `company_category` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公司类别', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '公司类别' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_publish_product +-- ---------------------------- +DROP TABLE IF EXISTS `user_publish_product`; +CREATE TABLE `user_publish_product` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `publish_type` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '发布商品1/ 发布需求2', + `img` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '图片链接', + `cart_flag` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否支持显卡', + `domain_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属域名', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属机构', + `product_name` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '商品名称', + `product_category` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属类别', + `company_name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '企业名称', + `company_type` varchar(512) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公司类别', + `contact_person` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '联系人', + `job_title` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '职务', + `phone_number` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '手机号码', + `email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱', + `cpu` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'cpu', + `memory` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '内存', + `gpu` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'gpu', + `sys_disk` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '系统盘', + `data_disk` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '数据盘', + `net_card` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '网卡', + `price` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '价格', + `unit` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '价格单位', + `discount` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '价格折扣', + `discount_price` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '折扣后价格', + `service_charge` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务费', + `short_term` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否短租', + `priority` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '排序优先级', + `status` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '上架状态', + `title` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '主题', + `label` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签', + `first_page` varchar(2) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '是否推送到首页', + `admin_push` varchar(2) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '是否是运营人员提交', + `requirement_summary` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '需求概述', + `related_parameters` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '相关参数', + `application_scenario` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用场景', + `audit_status` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT 'pending' COMMENT '审核状态:pending待审/approved通过/rejected拒绝/', + `listing_status` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '上架状态:listing上架/delisting下架', + `reject_reason` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '驳回原因', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `publish_time` datetime NULL DEFAULT NULL COMMENT '发布日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品发布表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_publish_product_category +-- ---------------------------- +DROP TABLE IF EXISTS `user_publish_product_category`; +CREATE TABLE `user_publish_product_category` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `domain_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属域名', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属机构', + `product_category` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品类别', + `parentid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '父级id', + `priority` int(11) NULL DEFAULT NULL COMMENT '排序优先级', + `permission` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1' COMMENT '普通用户权限 1:能看到 0:不能看到', + `cart_flag` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否显示cpu,gpu规格输入框', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '产品类别' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_publish_requirement +-- ---------------------------- +DROP TABLE IF EXISTS `user_publish_requirement`; +CREATE TABLE `user_publish_requirement` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `domain_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属域名', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属机构', + `product_name` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '需求名称', + `product_category` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '所属类别', + `company_name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '企业名称', + `company_type` varchar(512) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公司类别', + `contact_person` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '联系人', + `job_title` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '职务', + `phone_number` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '手机号码', + `email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱', + `cpu` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'cpu', + `memory` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '内存', + `gpu` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'gpu', + `sys_disk` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '系统盘', + `data_disk` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '数据盘', + `net_card` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '网卡', + `price` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '价格', + `priority` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '排序优先级', + `status` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '上架状态', + `title` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '主题', + `label` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签', + `first_page` varchar(2) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '是否推送到首页', + `admin_push` varchar(2) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '是否是运营人员提交', + `requirement_summary` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '需求概述', + `related_parameters` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '相关参数(JSON格式存储)', + `application_scenario` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用场景', + `audit_status` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT 'pending' COMMENT '审核状态:pending待审/approved通过/rejected拒绝', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志' +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '需求发布表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for user_supply +-- ---------------------------- +DROP TABLE IF EXISTS `user_supply`; +CREATE TABLE `user_supply` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `createBy` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建者', + `UserId` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建者ID', + `updateTime` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '备注', + `companyID` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公司ID', + `supplyTitle` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标题', + `supplyDesc` varchar(600) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供给说明', + `supplyType` varchar(5) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供给分类', + `provinceName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '省', + `cityName` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '市区', + `framePowerWay` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供电方式', + `framePower` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供电功率', + `frameHeight` varchar(5) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '机柜高度', + `framePrice` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供电价格', + `supplyNum` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '可租数量', + `supplyBegin` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供给开始日期', + `supplyEnd` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供给结束日期', + `endTime` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '结束日期', + `status` varchar(3) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '状态', + `bwOperator` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '运营商', + `bwRouteType` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '路由类型', + `bwBandwidthPrice` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '带宽单价', + `bwBandwidthNum` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '带宽可租数量', + `bwIpPrice` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'IP价格', + `bwIpPriceUnit` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'IP单价', + `bwIpNum` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'IP可租数量', + `gpuAbilityType` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '类型', + `gpuApplyPflops` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '可租算力浮点数', + `gpuResource` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计算资源/GPU', + `gpuType` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'GPU类型/H800', + `gpuNet` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '网络架构', + `gpuNum` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '可租数量', + `gpuOccasion` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '适用场景', + `gpuPrice` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT 'GPU价格', + `supplyNodeId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '供应节点ID', + `nodeDataId` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '节点数据ID', + `orderNum` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '订单量', + `recommendStatus` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '需求状态', + `priceUnit` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '单价/1卡/卡时/月', + `brandName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '品牌', + `modelName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '型号', + `infoPicUrl` varchar(256) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '图片链接', + `goodsType` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '货源性质/现货', + `goodsNumber` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品数量', + `goodsPrice` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '产品单价', + `goodsAddress` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '交货地址', + `contactUser` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人姓名', + `contactUserMobile` varchar(16) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '联系人手机号', + `companyName` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '企业名称', + `batchNum` varchar(24) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '销售数量 /300/台', + `expireTime` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '货源过期日期', + `arriveTime` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '货源生效日期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户供应表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for userdepartment +-- ---------------------------- +DROP TABLE IF EXISTS `userdepartment`; +CREATE TABLE `userdepartment` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `userid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `depid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '部门id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户部门表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for userrole +-- ---------------------------- +DROP TABLE IF EXISTS `userrole`; +CREATE TABLE `userrole` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '用户id', + `userid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户id', + `roleid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '角色id', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户角色' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for users +-- ---------------------------- +DROP TABLE IF EXISTS `users`; +CREATE TABLE `users` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '用户id', + `username` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名', + `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '姓名', + `password` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '密码', + `email` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮件地址', + `orgid` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '所属机构', + `nick_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '显示名', + `address` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '地址', + `mobile` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '手机', + `user_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '用户状态', + `picture` varchar(400) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `text` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, + `user_reseller` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '普通客户为0,分销商为1', + `wechat_openid` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '微信openid', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `users_idx2`(`username`) USING BTREE, + INDEX `users_idx1`(`orgid`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for validatecode +-- ---------------------------- +DROP TABLE IF EXISTS `validatecode`; +CREATE TABLE `validatecode` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `vcode` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '验证码', + `expore_time` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '有效期', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '验证码表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for warn_error_log +-- ---------------------------- +DROP TABLE IF EXISTS `warn_error_log`; +CREATE TABLE `warn_error_log` ( + `id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '主键ID', + `log_level` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '日志级别:DEBUG, INFO, WARN, ERROR, FATAL', + `log_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '日志内容/错误信息', + `request_url` varchar(500) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '请求URL', + `request_method` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '请求方法:GET, POST等', + `request_params` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '请求参数', + `user_id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户ID', + `exception_stack` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '异常堆栈信息', + `track_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '追踪状态:0-未处理,1-处理中,2-已解决', + `handler` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理人', + `solution` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '解决方案', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志:0-正常,1-删除', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + `update_time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '警告错误日志表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for wechat_login_code +-- ---------------------------- +DROP TABLE IF EXISTS `wechat_login_code`; +CREATE TABLE `wechat_login_code` ( + `id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `code` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '微信登录临时code', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '微信登录临时code' ROW_FORMAT = Dynamic; + + +-- ---------------------------- +-- Table structure for white_list +-- ---------------------------- +DROP TABLE IF EXISTS `white_list`; +CREATE TABLE `white_list` ( + `id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'id', + `user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户id', + `insider_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '允许开白的运营', + `type` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '开白状态,0为待审核,1为已开白,2为拒绝', + `del_flg` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '0' COMMENT '删除标志', + `create_at` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '创建时间戳', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + diff --git a/b/bill/finance_order_report.dspy b/b/bill/finance_order_report.dspy index 2bf333f..d9ede32 100644 --- a/b/bill/finance_order_report.dspy +++ b/b/bill/finance_order_report.dspy @@ -1069,10 +1069,10 @@ async def finance_billing_overview(ns=None): include_sub = _parse_bool(ns.get('include_sub_reseller_customers'), True) only_accounted = _parse_bool(ns.get('only_accounted'), False) try: - max_bills = int(ns.get('max_bills', 5000) or 5000) + max_bills = int(ns.get('max_bills', 50000) or 50000) except (TypeError, ValueError): - max_bills = 5000 - max_bills = max(100, min(max_bills, 20000)) + max_bills = 50000 + max_bills = max(100, min(max_bills, 200000)) db = DBPools() async with db.sqlorContext(DBNAME) as sor: @@ -1228,11 +1228,13 @@ async def finance_billing_overview(ns=None): return {'status': True, 'msg': 'ok', 'data': data} -_report = params_kw.get('report') or params_kw.get('api') or 'order_list' +# _report = params_kw.get('report') or params_kw.get('api') or 'order_list' +_report = None if _report in ('overview', 'billing_overview', 'finance_billing_overview'): ret = await finance_billing_overview(params_kw) elif _report in ('detail', 'order_detail'): ret = await finance_order_report_detail(params_kw) else: ret = await finance_order_report(params_kw) +return ret return ret \ No newline at end of file diff --git a/b/bill/finance_order_report_overview.dspy b/b/bill/finance_order_report_overview.dspy new file mode 100644 index 0000000..43af926 --- /dev/null +++ b/b/bill/finance_order_report_overview.dspy @@ -0,0 +1,1239 @@ +# -*- coding: utf-8 -*- +""" +管理人员财务订单报表接口。 + +视角:以 accounting_orgid(账本机构)为查看主体,展示客户订单的定价、利润、本级应付结算。 + +依赖运行环境:DBPools, sor.sqlExe, sor.R + +业务口径(已确认): + - product_salemode.providerid = provider.orgid + - 分销商不直接对供应商结算;仅本机构(parentid 为空)对供应商结算 + - 一级分销对本机构结算,二级分销对一级分销结算(即对直接上级结算) + - settle_upstream_amount:本级应付(本机构→供应商;分销→直接上级机构) + - profit_amount:本级账本「折扣收入」「底价收入」贷方合计 + - include_sub_reseller_customers:是否包含下级分销商发展的客户 +""" + +async def get_parent_orgid(sor, orgid): + sql = """select a.id from organization a, organization b +where b.parentid = a.id + and a.del_flg = '0' + and b.del_flg = '0' + and b.id = ${orgid}$""" + recs = await sor.sqlExe(sql, {'orgid':orgid}) + if len(recs) == 0: + return None + return recs[0]['id'] + +DBNAME = 'kboss' +RESELLER_ORG = '1' +OWNER_OGR = '0' +CORP_CUSTOMER = '2' +PERSONAL = '3' +PROVIDER = '4' +PUBLISHER = '5' +UNDERWRITER = '6' + +PARTY_OWNER = '本机构' +PARTY_CUSTOMER = '客户' +PARTY_RESELLER = '分销商' +PARTY_PROVIDER = '供应商' +PARTY_PUBLISHER = '算力券发行方' +PARTY_UNDERWRITER = '算力券承销方' + +DEBT = '借' +CREDIT = '贷' + +ACTNAME_BUY = '付费' +ACTNAME_RECHARGE = '充值' +ACTNAME_RECHARGE_ALIPAY = '支付宝充值' +ACTNAME_SETTLE = '结算' + +SALEMODE_DISCOUNT = '折扣' +SALEMODE_REBATE = '代付费' +SALEMODE_FLOORPRICE = '底价' + +ACTION_RECHARGE_ALIPAY = 'RECHARGE_ALIPAY' +ACTION_RECHARGE_ALIPAY_REVERSE = 'RECHARGE_ALIPAY_REVERSE' +ACTION_RECHARGE = 'RECHARGE' +ACTION_RECHARGE_REVERSE = 'RECHARGE_REVERSE' +ACTION_BUY = 'BUY' +ACTION_REVERSE_BUY = 'BUY_REVERSE' +ACTION_RENEW = 'RENEW' +ACTION_RENEW_REVERSE = 'RENEW_REVERSE' +ACTION_SETTLE = 'SETTLE' +ACTION_SETTLE_REVERSE = 'SETTLE_REVERSE' + +DBNAME = 'kboss' +CUSTOMER_ORG_TYPES = ('2', '3') + +SALEMODE_LABEL = { + '0': SALEMODE_DISCOUNT, + '1': SALEMODE_REBATE, + '2': SALEMODE_FLOORPRICE, +} + +INCOME_SUBJECTS = ('折扣收入', '底价收入') +PARENT_SETTLE_SUBJECT = '分销商存放资金' +SUPPLIER_SETTLE_PREFIX = '待结转' + +_SALEMODE_SQL_OWN = """ +SELECT a.salemode, a.settle_mode, b.discount, b.price +FROM saleprotocol a, product_salemode b +WHERE a.id = b.protocolid + AND a.bid_orgid = ${bid_orgid}$ + AND (b.productid = ${productid}$ OR b.productid = '*') + AND b.providerid = ${providerid}$ + AND a.start_date <= ${curdate}$ + AND a.end_date > ${curdate}$ + AND a.del_flg = '0' + AND b.del_flg = '0' +ORDER BY b.productid DESC +LIMIT 1 +""" + +_SALEMODE_SQL_OFFER = """ +SELECT a.salemode, a.settle_mode, b.discount, b.price +FROM saleprotocol a, product_salemode b +WHERE a.id = b.protocolid + AND a.offer_orgid = ${offer_orgid}$ + AND a.bid_orgid = ${bid_orgid}$ + AND (b.productid = ${productid}$ OR b.productid = '*') + AND b.providerid = ${providerid}$ + AND a.start_date <= ${curdate}$ + AND a.end_date > ${curdate}$ + AND a.del_flg = '0' + AND b.del_flg = '0' +ORDER BY b.productid DESC +LIMIT 1 +""" + + +def _round_money(v): + if v is None: + return None + return round(float(v), 2) + + +def _salemode_label(code): + if code is None: + return None + return SALEMODE_LABEL.get(str(code), str(code)) + + +def _parse_bool(v, default=False): + if v is None: + return default + if isinstance(v, bool): + return v + return str(v).strip().lower() in ('1', 'true', 'yes', 'on') + + +def _parse_page(ns, default_page=1, default_size=20, max_size=100): + """解析分页,避免 page_size=0 导致 LIMIT 0 无数据。""" + try: + page_size = int(ns.get('page_size', default_size) or default_size) + except (TypeError, ValueError): + page_size = default_size + try: + current_page = int(ns.get('current_page', default_page) or default_page) + except (TypeError, ValueError): + current_page = default_page + page_size = max(1, min(page_size, max_size)) + current_page = max(1, current_page) + offset = (current_page - 1) * page_size + return current_page, page_size, offset + + +def _sql_rows(result): + """统一 sqlExe 查询结果为 list[dict]。""" + if result is None: + return [] + if isinstance(result, list): + return result + if isinstance(result, dict): + return [result] + return list(result) + + +def _row_get(row, *keys, default=None): + """兼容不同驱动返回的大小写字段名。""" + if not row: + return default + for key in keys: + if key in row: + return row[key] + lower = key.lower() + for k, v in row.items(): + if k.lower() == lower: + return v + return default + + +async def _check_viewer(sor, accounting_orgid, userid=None): + if not userid: + return True, None + users = await sor.R('users', {'id': userid, 'del_flg': '0'}) + if not users: + return False, '用户不存在' + user_orgid = users[0].get('orgid') + if user_orgid == accounting_orgid: + return True, None + parent = await get_parent_orgid(sor, accounting_orgid) + if parent and user_orgid == parent: + return True, None + return False, '无权查看该机构财务数据' + + +async def _org_name(sor, orgid): + if not orgid: + return None + rows = await sor.R('organization', {'id': orgid, 'del_flg': '0'}) + return rows[0]['orgname'] if rows else None + + +async def _is_business_owner(sor, orgid): + rows = await sor.sqlExe( + "SELECT id FROM organization WHERE id=${id}$ AND parentid IS NULL AND del_flg='0'", + {'id': orgid}, + ) + return len(rows) > 0 + + +async def _collect_descendant_reseller_ids(sor, root_orgid): + """递归收集 root 下所有下级分销商 organization.id(org_type=1)。""" + found = [] + queue = [root_orgid] + seen = {root_orgid} + while queue: + pid = queue.pop(0) + rows = await sor.sqlExe( + """SELECT id FROM organization + WHERE parentid=${pid}$ AND org_type=${org_type}$ AND del_flg='0'""", + {'pid': pid, 'org_type': RESELLER_ORG}, + ) + for r in rows: + cid = r['id'] + if cid not in seen: + seen.add(cid) + found.append(cid) + queue.append(cid) + return found + + +async def _build_customer_scope_sql(sor, accounting_orgid, include_sub_reseller_customers): + """ + 客户范围 SQL 片段与参数。 + 直属:cust.parentid = accounting_orgid + 含下级分销:直属 + cust.parentid IN (下级分销商 id 列表) + """ + params = {'accounting_orgid': accounting_orgid} + if not include_sub_reseller_customers: + return "cust.parentid = ${accounting_orgid}$", params, [] + + reseller_ids = await _collect_descendant_reseller_ids(sor, accounting_orgid) + if not reseller_ids: + return "cust.parentid = ${accounting_orgid}$", params, [] + + in_keys = [] + for i, rid in enumerate(reseller_ids): + key = 'reseller_%d' % i + params[key] = rid + in_keys.append('${%s}$' % key) + in_sql = ', '.join(in_keys) + cond = "(cust.parentid = ${accounting_orgid}$ OR cust.parentid IN (%s))" % in_sql + return cond, params, reseller_ids + + +async def _customer_in_scope(customer_parentid, accounting_orgid, reseller_ids, include_sub): + if customer_parentid == accounting_orgid: + return True + if include_sub and customer_parentid in reseller_ids: + return True + return False + + +async def _fetch_salemode_row(sor, sql, params): + rows = await sor.sqlExe(sql, params) + return rows[0] if rows else None + + +async def _settle_upstream_meta(sor, accounting_orgid, provider_orgid): + """本级应付对象:本机构→供应商;分销→直接上级。""" + if await _is_business_owner(sor, accounting_orgid): + return { + 'settle_upstream_type': 'supplier', + 'settle_upstream_orgid': provider_orgid, + 'settle_upstream_orgname': await _org_name(sor, provider_orgid), + 'immediate_parent_orgid': None, + } + parent_orgid = await get_parent_orgid(sor, accounting_orgid) + return { + 'settle_upstream_type': 'parent_org', + 'settle_upstream_orgid': parent_orgid, + 'settle_upstream_orgname': await _org_name(sor, parent_orgid), + 'immediate_parent_orgid': parent_orgid, + } + + +async def _protocol_snapshot(sor, accounting_orgid, customerid, providerid, productid, bill_date, quantity): + curdate = bill_date + if hasattr(curdate, 'strftime'): + curdate = curdate.strftime('%Y-%m-%d') + elif curdate is not None: + curdate = str(curdate)[:10] + + qty = int(quantity or 1) + base = {'providerid': providerid, 'productid': productid, 'curdate': curdate} + + own = await _fetch_salemode_row( + sor, _SALEMODE_SQL_OWN, dict(base, bid_orgid=accounting_orgid), + ) + cust = await _fetch_salemode_row( + sor, _SALEMODE_SQL_OFFER, + dict(base, offer_orgid=accounting_orgid, bid_orgid=customerid), + ) + if not cust: + cust = await _fetch_salemode_row( + sor, _SALEMODE_SQL_OFFER, + dict(base, offer_orgid=accounting_orgid, bid_orgid='*'), + ) + + parent_orgid = await get_parent_orgid(sor, accounting_orgid) + reseller = None + if parent_orgid: + reseller = await _fetch_salemode_row( + sor, _SALEMODE_SQL_OFFER, + dict(base, offer_orgid=parent_orgid, bid_orgid=accounting_orgid), + ) + + return { + 'parent_orgid': parent_orgid, + 'parent_orgname': await _org_name(sor, parent_orgid), + 'own_salemode': own.get('salemode') if own else None, + 'own_discount': own.get('discount') if own else None, + 'own_floor_unit_price': own.get('price') if own else None, + 'customer_salemode': cust.get('salemode') if cust else None, + 'customer_discount': cust.get('discount') if cust else None, + 'customer_floor_unit_price': cust.get('price') if cust else None, + 'reseller_discount': reseller.get('discount') if reseller else None, + 'reseller_salemode': reseller.get('salemode') if reseller else None, + 'reseller_floor_unit_price': reseller.get('price') if reseller else None, + 'quantity': qty, + } + + +def _estimate_finance(catalog_amount, protocol, is_owner): + """未记账:估算本级利润与本级应付(不含代付费单独字段)。""" + catalog_amount = float(catalog_amount or 0) + qty = protocol.get('quantity') or 1 + profit = None + settle_upstream = None + + own_mode = protocol.get('own_salemode') + cust_mode = protocol.get('customer_salemode') + own_disc = protocol.get('own_discount') + cust_disc = protocol.get('customer_discount') + reseller_disc = protocol.get('reseller_discount') + + if own_mode == '0' or cust_mode == '0': + if own_disc is not None and cust_disc is not None: + profit = catalog_amount * (float(cust_disc) - float(own_disc)) + if is_owner: + if own_disc is not None: + settle_upstream = catalog_amount * float(own_disc) + elif reseller_disc is not None: + settle_upstream = catalog_amount * float(reseller_disc) + + elif own_mode == '2' or cust_mode == '2': + own_price = protocol.get('own_floor_unit_price') + cust_price = protocol.get('customer_floor_unit_price') + reseller_price = protocol.get('reseller_floor_unit_price') + if own_price is not None and cust_price is not None: + profit = (float(cust_price) - float(own_price)) * qty + if is_owner and own_price is not None: + settle_upstream = float(own_price) * qty + elif not is_owner and reseller_price is not None: + settle_upstream = float(reseller_price) * qty + elif not is_owner and cust_price is not None: + settle_upstream = float(cust_price) * qty + + return { + 'profit_amount': _round_money(profit), + 'settle_upstream_amount': _round_money(settle_upstream), + 'amount_source': 'estimated', + } + + +async def _bill_detail_rows(sor, billid): + """单表读 bill_detail,优先 sor.R(避免 sqlExe 多表问题)。""" + rows = await sor.R('bill_detail', {'billid': billid, 'del_flg': '0'}) + if rows: + return rows + return _sql_rows(await sor.sqlExe( + """SELECT accounting_orgid, subjectname, accounting_dir, + participantid, participanttype, amount + FROM bill_detail WHERE billid=${billid}$ AND del_flg='0'""", + {'billid': billid}, + )) + + +async def _finance_from_bill_detail(sor, billid, accounting_orgid, is_owner, parent_orgid): + """已记账:从 bill_detail 取本级利润与本级应付。""" + rows = await _bill_detail_rows(sor, billid) + profit = 0.0 + settle_upstream = 0.0 + legs = [] + + for r in rows: + legs.append({ + 'accounting_orgid': r['accounting_orgid'], + 'subjectname': r['subjectname'], + 'accounting_dir': r['accounting_dir'], + 'participanttype': r.get('participanttype'), + 'participantid': r.get('participantid'), + 'amount': _round_money(r['amount']), + }) + amt = float(r['amount'] or 0) + book = r['accounting_orgid'] + subj = r['subjectname'] or '' + direction = r['accounting_dir'] + + if book == accounting_orgid and subj in INCOME_SUBJECTS and direction == '贷': + profit += amt + + if is_owner: + if ( + book == accounting_orgid + and subj.startswith(SUPPLIER_SETTLE_PREFIX) + and direction == '贷' + ): + settle_upstream += amt + else: + if ( + parent_orgid + and book == parent_orgid + and subj == PARENT_SETTLE_SUBJECT + and direction == '借' + and r.get('participantid') == accounting_orgid + ): + settle_upstream += amt + + return { + 'profit_amount': _round_money(profit), + 'settle_upstream_amount': _round_money(settle_upstream) if settle_upstream else _round_money(0), + 'amount_source': 'bill_detail', + 'bill_detail_legs': legs, + } + + +async def _build_report_row(sor, row, accounting_orgid, is_owner): + bill_id = _row_get(row, 'bill_id') + customerid = _row_get(row, 'customerid') + providerid = _row_get(row, 'providerid') + productid = _row_get(row, 'productid') + bill_date = _row_get(row, 'bill_date') + quantity = _row_get(row, 'quantity') or 1 + catalog_amount = _round_money(_row_get(row, 'catalog_amount')) + customer_pay = _round_money(_row_get(row, 'customer_pay_amount')) + customer_parentid = _row_get(row, 'customer_parentid') + + protocol = await _protocol_snapshot( + sor, accounting_orgid, customerid, providerid, productid, bill_date, quantity, + ) + parent_orgid = protocol['parent_orgid'] + settle_meta = await _settle_upstream_meta(sor, accounting_orgid, providerid) + + bill_state = _row_get(row, 'bill_state') + if str(bill_state) == '1': + amounts = await _finance_from_bill_detail( + sor, bill_id, accounting_orgid, is_owner, parent_orgid, + ) + else: + amounts = _estimate_finance(catalog_amount, protocol, is_owner) + amounts['bill_detail_legs'] = [] + + product_name = _row_get(row, 'product_name') + if not product_name and productid: + prows = await sor.R('product', {'id': productid, 'del_flg': '0'}) + if prows: + product_name = prows[0].get('name') + provider_name = _row_get(row, 'provider_name') + if not provider_name and providerid: + prov_rows = await sor.sqlExe( + "SELECT name FROM provider WHERE orgid=${orgid}$ AND del_flg='0' LIMIT 1", + {'orgid': providerid}, + ) + if prov_rows: + provider_name = prov_rows[0].get('name') + + serving_reseller_id = None + serving_reseller_name = None + is_direct = customer_parentid == accounting_orgid + if not is_direct and customer_parentid: + serving_reseller_id = customer_parentid + serving_reseller_name = await _org_name(sor, customer_parentid) + + order_date = _row_get(row, 'order_date') + servicename = _row_get(row, 'servicename') + + return { + 'bill_id': bill_id, + 'order_id': _row_get(row, 'order_id'), + 'bill_date': str(bill_date)[:10] if bill_date else None, + 'order_date': str(order_date)[:19] if order_date else None, + 'business_op': _row_get(row, 'business_op'), + 'bill_state': bill_state, + 'accounted': str(bill_state) == '1', + 'customer': { + 'id': customerid, + 'name': _row_get(row, 'customer_name'), + 'parent_orgid': customer_parentid, + 'is_direct_customer': is_direct, + 'serving_reseller': { + 'id': serving_reseller_id, + 'name': serving_reseller_name, + } if serving_reseller_id else None, + }, + 'product': { + 'id': productid, + 'name': product_name or servicename, + 'servicename': servicename, + }, + 'provider': { + 'orgid': providerid, + 'name': provider_name, + }, + 'quantity': quantity, + 'pricing': { + 'catalog_amount': catalog_amount, + 'list_price_unit': _round_money(_row_get(row, 'list_price')), + 'order_discount': _round_money(_row_get(row, 'order_discount')) + if _row_get(row, 'order_discount') is not None + else None, + 'order_unit_price': _round_money(_row_get(row, 'order_unit_price')), + 'customer_pay_amount': customer_pay, + }, + 'viewer_org': { + 'id': accounting_orgid, + 'is_business_owner': is_owner, + 'immediate_parent': { + 'id': settle_meta.get('immediate_parent_orgid'), + 'name': await _org_name(sor, settle_meta.get('immediate_parent_orgid')), + } if settle_meta.get('immediate_parent_orgid') else None, + }, + 'protocol': { + 'parent_salemode': _salemode_label(protocol.get('own_salemode')), + 'parent_discount_to_us': _round_money(protocol.get('own_discount')), + 'parent_floor_unit_price': _round_money(protocol.get('own_floor_unit_price')), + 'our_salemode_to_customer': _salemode_label(protocol.get('customer_salemode')), + 'our_discount_to_customer': _round_money(protocol.get('customer_discount')), + 'our_floor_unit_price_to_customer': _round_money(protocol.get('customer_floor_unit_price')), + 'our_discount_as_reseller_to_parent': _round_money(protocol.get('reseller_discount')), + }, + 'finance': { + 'profit_amount': amounts['profit_amount'], + 'settle_upstream_amount': amounts['settle_upstream_amount'], + 'settle_upstream_type': settle_meta['settle_upstream_type'], + 'settle_upstream_target': { + 'id': settle_meta['settle_upstream_orgid'], + 'name': settle_meta['settle_upstream_orgname'], + }, + 'amount_source': amounts['amount_source'], + }, + 'bill_detail_legs': amounts.get('bill_detail_legs', []), + } + + +def _bill_core_from_clause(): + """统计/查 ID 用最小 JOIN(兼容无 ordergoodsid 字段的库)。""" + return """ +FROM bill b +INNER JOIN bz_order o ON b.orderid = o.id +INNER JOIN organization cust ON b.customerid = cust.id +""" + + +def _bill_ids_sql(where_sql): + """不在 SQL 里写 LIMIT:部分环境 sqlExe 对 LIMIT 会返回空列表。""" + return f""" +SELECT b.id AS bill_id +{_bill_core_from_clause()} +WHERE {where_sql} +ORDER BY b.bill_date DESC, b.create_at DESC +""" + + +def _sql_quote_bill_id(bill_id): + if bill_id is None: + return None + s = str(bill_id).strip() + if not s: + return None + for ch in s: + if not (ch.isalnum() or ch in ('_', '-')): + return None + return "'" + s.replace("'", "''") + "'" + + +async def _fetch_overview_bill_rows(sor, where_sql, params, max_bills): + """ + 概览取数:先用仅 bill_id 的 SQL(已验证可用),再 sor.R 组装明细。 + 多列 + JOIN 的 _bill_scope_list_sql 在本环境 sqlExe 会返回空列表。 + """ + id_rows = _sql_rows(await sor.sqlExe(_bill_ids_sql(where_sql), params)) + all_ids = [] + seen = set() + for r in id_rows: + bid = _normalize_bill_id(_row_get(r, 'bill_id', 'id', 'ID')) + if bid and bid not in seen: + seen.add(bid) + all_ids.append(bid) + + total_ids = len(all_ids) + truncated = total_ids > max_bills + if truncated: + all_ids = all_ids[:max_bills] + + rows = [] + for bid in all_ids: + row = await _fetch_bill_row_via_R(sor, bid) + if row: + rows.append(row) + + return { + 'total_ids': total_ids, + 'truncated': truncated, + 'id_query_len': len(id_rows), + 'rows': rows, + } + + +def _new_amount_bucket(): + return { + 'sales_total': 0.0, + 'profit_total': 0.0, + 'settle_upstream_total': 0.0, + 'bill_count': 0, + } + + +def _bucket_add(bucket, sales, profit, settle): + bucket['sales_total'] += float(sales or 0) + bucket['profit_total'] += float(profit or 0) + bucket['settle_upstream_total'] += float(settle or 0) + bucket['bill_count'] += 1 + + +def _bucket_round(bucket): + return { + 'sales_total': _round_money(bucket['sales_total']), + 'profit_total': _round_money(bucket['profit_total']), + 'settle_upstream_total': _round_money(bucket['settle_upstream_total']), + 'bill_count': bucket['bill_count'], + } + + +def _norm_org_id(orgid): + if orgid is None: + return None + s = str(orgid).strip() + return s if s else None + + +def _customer_segment(customer_parentid, accounting_orgid, reseller_id_set): + pid = _norm_org_id(customer_parentid) + acc = _norm_org_id(accounting_orgid) + if pid == acc: + return 'direct_customers' + if pid in reseller_id_set: + return 'from_sub_resellers' + return None + + +async def _bill_finance_amounts(sor, row, accounting_orgid, is_owner, parent_orgid): + """单笔:销售额、本级利润、本级应付上级/供应商。""" + sales = float(_row_get(row, 'customer_pay_amount') or 0) + bill_id = _row_get(row, 'bill_id') + bill_state = _row_get(row, 'bill_state') + quantity = int(_row_get(row, 'quantity') or 1) + + if str(bill_state) == '1': + fin = await _finance_from_bill_detail( + sor, bill_id, accounting_orgid, is_owner, parent_orgid, + ) + else: + catalog = float(_row_get(row, 'catalog_amount') or 0) + protocol = await _protocol_snapshot( + sor, + accounting_orgid, + _row_get(row, 'customerid'), + _row_get(row, 'providerid'), + _row_get(row, 'productid'), + _row_get(row, 'bill_date'), + quantity, + ) + fin = _estimate_finance(catalog, protocol, is_owner) + + profit = float(fin.get('profit_amount') or 0) + settle = float(fin.get('settle_upstream_amount') or 0) + return sales, profit, settle, fin.get('amount_source', 'unknown') + + +async def _provider_name_cache(sor, cache, provider_orgid): + if not provider_orgid: + return None + if provider_orgid in cache: + return cache[provider_orgid] + name = None + rows = await sor.sqlExe( + "SELECT name FROM provider WHERE orgid=${oid}$ AND del_flg='0' LIMIT 1", + {'oid': provider_orgid}, + ) + if rows: + name = rows[0].get('name') + cache[provider_orgid] = name + return name + + +async def _product_name_cache(sor, cache, productid): + if not productid: + return None + if productid in cache: + return cache[productid] + name = None + rows = await sor.R('product', {'id': productid, 'del_flg': '0'}) + if rows: + name = rows[0].get('name') + cache[productid] = name + return name + + +def _count_sql(where_sql): + return f""" +SELECT COUNT(*) AS total_count +{_bill_core_from_clause()} +WHERE {where_sql} +""" + + +def _normalize_bill_id(bill_id): + if bill_id is None: + return None + s = str(bill_id).strip() + return s if s else None + + +async def _fetch_bill_row_via_R(sor, bill_id): + """ + 用 sor.R 按表组装明细(与 mu_ban / process_user_billing 一致)。 + 已证实:本环境 sqlExe 多表 JOIN + WHERE b.id 会返回空,但 sor.R('bill') 可用。 + """ + bid = _normalize_bill_id(bill_id) + if not bid: + return None + + bills = await sor.R('bill', {'id': bid, 'del_flg': '0'}) + if not bills: + bills = await sor.R('bill', {'id': bid}) + if not bills: + return None + b = bills[0] + + o = {} + oid = b.get('orderid') + if oid: + orders = await sor.R('bz_order', {'id': oid, 'del_flg': '0'}) + if not orders: + orders = await sor.R('bz_order', {'id': oid}) + if orders: + o = orders[0] + + cust = {} + cid = b.get('customerid') + if cid: + custs = await sor.R('organization', {'id': cid, 'del_flg': '0'}) + if not custs: + custs = await sor.R('organization', {'id': cid}) + if custs: + cust = custs[0] + + og = {} + ogid = b.get('ordergoodsid') + if ogid: + ogs = await sor.R('order_goods', {'id': ogid, 'del_flg': '0'}) + if ogs: + og = ogs[0] + if not og and oid: + ogs = await sor.sqlExe( + """SELECT list_price, discount, price FROM order_goods + WHERE orderid=${oid}$ AND del_flg='0' LIMIT 1""", + {'oid': oid}, + ) + if ogs: + og = ogs[0] + + return { + 'bill_id': b.get('id'), + 'order_id': oid, + 'customerid': cid, + 'productid': b.get('productid'), + 'providerid': b.get('providerid'), + 'bill_date': b.get('bill_date'), + 'bill_state': b.get('bill_state'), + 'catalog_amount': b.get('provider_amt'), + 'customer_pay_amount': b.get('amount'), + 'quantity': b.get('quantity'), + 'order_date': o.get('order_date'), + 'business_op': o.get('business_op'), + 'servicename': o.get('servicename'), + 'customer_name': cust.get('orgname'), + 'customer_parentid': cust.get('parentid'), + 'list_price': og.get('list_price'), + 'order_discount': og.get('discount'), + 'order_unit_price': og.get('price'), + } + + +async def _fetch_bill_rows_by_ids(sor, bill_ids): + rows = [] + for bid in bill_ids: + one = await _fetch_bill_row_via_R(sor, bid) + if one: + rows.append(one) + return rows + + +async def _fetch_bill_rows_page(sor, where_sql, base_params, offset, page_size): + """ + 先查全部符合条件的 bill_id(通常数量可控),再在 Python 分页; + 明细用 IN 字面量或逐条查询,不用 IN (${bid_n}$) 占位符。 + """ + id_sql = _bill_ids_sql(where_sql) + id_rows = _sql_rows(await sor.sqlExe(id_sql, base_params)) + all_ids = [] + seen = set() + for r in id_rows: + bid = _normalize_bill_id(_row_get(r, 'bill_id', 'id', 'ID')) + if bid and bid not in seen: + seen.add(bid) + all_ids.append(bid) + total = len(all_ids) + page_ids = all_ids[offset: offset + page_size] + if not page_ids: + return total, [] + ordered = await _fetch_bill_rows_by_ids(sor, page_ids) + return total, ordered + + +async def _finance_report_debug(sor, where_sql, params, page_size, offset): + """debug=true 时返回,便于在服务器上对比哪一步 SQL 无数据。""" + dbg = {} + try: + c = _sql_rows(await sor.sqlExe(_count_sql(where_sql), params)) + dbg['count_total'] = int(_row_get(c[0], 'total_count', 0) or 0) if c else None + except Exception as e: + dbg['count_error'] = str(e) + try: + ids = _sql_rows(await sor.sqlExe(_bill_ids_sql(where_sql), params)) + dbg['ids_query_len'] = len(ids) + except Exception as e: + dbg['ids_error'] = str(e) + try: + lim_sql = _bill_ids_sql(where_sql).strip() + ' LIMIT %d OFFSET %d' % (page_size, offset) + lim = _sql_rows(await sor.sqlExe(lim_sql, params)) + dbg['ids_with_limit_len'] = len(lim) + except Exception as e: + dbg['ids_with_limit_error'] = str(e) + try: + page_ids = [] + id_rows = _sql_rows(await sor.sqlExe(_bill_ids_sql(where_sql), params)) + if id_rows: + dbg['first_id_row_keys'] = list(id_rows[0].keys()) + dbg['first_id_raw'] = _row_get(id_rows[0], 'bill_id', 'id', 'ID') + for r in id_rows[offset: offset + page_size]: + bid = _normalize_bill_id(_row_get(r, 'bill_id', 'id', 'ID')) + if bid: + page_ids.append(bid) + dbg['page_ids_len'] = len(page_ids) + if page_ids: + dbg['sample_page_id'] = page_ids[0] + rb = await sor.R('bill', {'id': page_ids[0], 'del_flg': '0'}) + dbg['sor_R_bill_count'] = len(rb) if rb else 0 + one = await _fetch_bill_row_via_R(sor, page_ids[0]) + dbg['sor_R_row_ok'] = one is not None + except Exception as e: + dbg['detail_fetch_error'] = str(e) + return dbg + + +async def finance_order_report(ns=None): + """ + 管理人员 — 客户订单财务列表(分页)。 + + 入参 ns: + accounting_orgid (必填) 账本机构 + include_sub_reseller_customers (可选) 默认 false;true 时含下级分销商的客户订单 + userid, start_date, end_date, customerid, productid, order_id, bill_state + current_page (默认1), page_size (默认20, 最大100) + + 返回 finance.settle_upstream_*: + - 本机构:应付供应商(待结转* 贷方,仅本机构账本) + - 分销商:应付直接上级(上级账本「分销商存放资金」借方,participant=本级) + """ + ns = ns or {} + accounting_orgid = ns.get('accounting_orgid') + if not accounting_orgid: + return {'status': False, 'msg': '缺少 accounting_orgid(当前账本机构)'} + + include_sub = _parse_bool(ns.get('include_sub_reseller_customers'), False) + current_page, page_size, offset = _parse_page(ns) + + db = DBPools() + async with db.sqlorContext(DBNAME) as sor: + ok, err = await _check_viewer(sor, accounting_orgid, ns.get('userid')) + if not ok: + return {'status': False, 'msg': err} + + scope_sql, scope_params, reseller_ids = await _build_customer_scope_sql( + sor, accounting_orgid, include_sub, + ) + is_owner = await _is_business_owner(sor, accounting_orgid) + + conditions = ["b.del_flg = '0'", "o.del_flg = '0'", scope_sql] + params = dict(scope_params) + + if ns.get('start_date'): + conditions.append('b.bill_date >= ${start_date}$') + params['start_date'] = ns['start_date'] + if ns.get('end_date'): + conditions.append('b.bill_date <= ${end_date}$') + params['end_date'] = ns['end_date'] + if ns.get('customerid'): + conditions.append('b.customerid = ${customerid}$') + params['customerid'] = ns['customerid'] + if ns.get('productid'): + conditions.append('b.productid = ${productid}$') + params['productid'] = ns['productid'] + if ns.get('order_id'): + conditions.append('b.orderid = ${order_id}$') + params['order_id'] = ns['order_id'] + if ns.get('bill_state') is not None: + conditions.append('b.bill_state = ${bill_state}$') + params['bill_state'] = str(ns['bill_state']) + + where_sql = ' AND '.join(conditions) + + total_count, rows = await _fetch_bill_rows_page( + sor, where_sql, params, offset, page_size, + ) + if total_count > 0 and offset >= total_count: + current_page = 1 + offset = 0 + total_count, rows = await _fetch_bill_rows_page( + sor, where_sql, params, offset, page_size, + ) + + debug_info = None + if _parse_bool(ns.get('debug'), False): + debug_info = await _finance_report_debug( + sor, where_sql, params, page_size, offset, + ) + debug_info['page_ids_fetched'] = len(rows) + + items = [] + sum_profit = 0.0 + sum_pay = 0.0 + sum_upstream = 0.0 + row_errors = [] + + for row in rows: + try: + item = await _build_report_row(sor, row, accounting_orgid, is_owner) + except Exception as exc: + row_errors.append({ + 'bill_id': _row_get(row, 'bill_id'), + 'error': str(exc), + }) + continue + items.append(item) + fin = item['finance'] + if fin.get('profit_amount') is not None: + sum_profit += fin['profit_amount'] + pay = item['pricing'].get('customer_pay_amount') + if pay is not None: + sum_pay += pay + up = fin.get('settle_upstream_amount') + if up is not None: + sum_upstream += up + + return { + 'status': True, + 'msg': 'ok', + 'data': { + 'accounting_orgid': accounting_orgid, + 'accounting_orgname': await _org_name(sor, accounting_orgid), + 'is_business_owner': is_owner, + 'customer_scope': { + 'include_sub_reseller_customers': include_sub, + 'descendant_reseller_ids': reseller_ids, + 'descendant_reseller_count': len(reseller_ids), + }, + 'total_count': total_count, + 'current_page': current_page, + 'page_size': page_size, + 'summary': { + 'customer_pay_total': _round_money(sum_pay), + 'profit_total': _round_money(sum_profit), + 'settle_upstream_total': _round_money(sum_upstream), + }, + 'items': items, + 'row_errors': row_errors, + 'list_row_count': len(rows), + 'debug': debug_info, + }, + } + + +async def finance_order_report_detail(ns=None): + """ + 管理人员 — 单笔账单财务明细。 + + 入参:accounting_orgid, bill_id, include_sub_reseller_customers(与列表一致,用于校验客户范围) + """ + ns = ns or {} + accounting_orgid = ns.get('accounting_orgid') + bill_id = ns.get('bill_id') + if not accounting_orgid or not bill_id: + return {'status': False, 'msg': '缺少 accounting_orgid 或 bill_id'} + + include_sub = _parse_bool(ns.get('include_sub_reseller_customers'), False) + + db = DBPools() + async with db.sqlorContext(DBNAME) as sor: + ok, err = await _check_viewer(sor, accounting_orgid, ns.get('userid')) + if not ok: + return {'status': False, 'msg': err} + + _, _, reseller_ids = await _build_customer_scope_sql(sor, accounting_orgid, include_sub) + is_owner = await _is_business_owner(sor, accounting_orgid) + + rows = await _fetch_bill_rows_by_ids(sor, [bill_id]) + if not rows: + return {'status': False, 'msg': '账单不存在'} + + row = rows[0] + if not await _customer_in_scope( + _row_get(row, 'customer_parentid'), + accounting_orgid, + reseller_ids, + include_sub, + ): + return {'status': False, 'msg': '该账单不在当前查询客户范围内'} + + detail = await _build_report_row(sor, row, accounting_orgid, is_owner) + detail['customer_scope'] = {'include_sub_reseller_customers': include_sub} + return {'status': True, 'msg': 'ok', 'data': detail} + + +async def finance_billing_overview(ns=None): + """ + 计费概览页 — 销售/利润/应付上级 汇总(单接口,建议概览页只调此接口)。 + + 入参 ns: + accounting_orgid (必填) 当前账本机构 + include_sub_reseller_customers (可选) 默认 true;是否含下级分销商客户带来的金额 + start_date / end_date (可选) 按 bill.bill_date 筛选 + bill_state (可选) 仅统计指定账单状态,默认不筛(含未记账则利润/结算为估算) + only_accounted (可选) true 时仅 bill_state=1(推荐概览页使用) + userid (可选) 权限 + max_bills (可选) 默认 5000,超出则截断并返回 truncated=true + + 口径(与订单明细接口一致): + sales_total = 客户实付合计 bill.amount + profit_total = 本级账本折扣收入+底价收入(bill_detail)或协议估算 + settle_upstream_total= 本机构→供应商待结转;分销→上级账本分销商存放资金借方 + + 分段: + direct_customers 直属客户(cust.parentid = accounting_orgid) + from_sub_resellers 下级分销商的客户(cust.parentid in 下级分销 org) + + 返回 by_provider_product:按供应商 orgid + 产品 id 拆分上述三项及合计。 + """ + ns = ns or {} + accounting_orgid = ns.get('accounting_orgid') + if not accounting_orgid: + return {'status': False, 'msg': '缺少 accounting_orgid(当前账本机构)'} + + include_sub = _parse_bool(ns.get('include_sub_reseller_customers'), True) + only_accounted = _parse_bool(ns.get('only_accounted'), False) + try: + max_bills = int(ns.get('max_bills', 50000) or 50000) + except (TypeError, ValueError): + max_bills = 50000 + max_bills = max(100, min(max_bills, 200000)) + + db = DBPools() + async with db.sqlorContext(DBNAME) as sor: + ok, err = await _check_viewer(sor, accounting_orgid, ns.get('userid')) + if not ok: + return {'status': False, 'msg': err} + + scope_sql, scope_params, reseller_ids = await _build_customer_scope_sql( + sor, accounting_orgid, include_sub, + ) + is_owner = await _is_business_owner(sor, accounting_orgid) + parent_orgid = await get_parent_orgid(sor, accounting_orgid) + + conditions = ["b.del_flg = '0'", "o.del_flg = '0'", scope_sql] + params = dict(scope_params) + if ns.get('start_date'): + conditions.append('b.bill_date >= ${start_date}$') + params['start_date'] = ns['start_date'] + if ns.get('end_date'): + conditions.append('b.bill_date <= ${end_date}$') + params['end_date'] = ns['end_date'] + if only_accounted: + conditions.append("b.bill_state = '1'") + elif ns.get('bill_state') is not None: + conditions.append('b.bill_state = ${bill_state}$') + params['bill_state'] = str(ns['bill_state']) + + where_sql = ' AND '.join(conditions) + fetch = await _fetch_overview_bill_rows(sor, where_sql, params, max_bills) + bill_rows = fetch['rows'] + truncated = fetch['truncated'] + reseller_id_set = {_norm_org_id(r) for r in reseller_ids if _norm_org_id(r)} + + totals = { + 'direct_customers': _new_amount_bucket(), + 'from_sub_resellers': _new_amount_bucket(), + 'grand_total': _new_amount_bucket(), + } + by_pp = {} + provider_names = {} + product_names = {} + skipped = 0 + errors = [] + + for row in bill_rows: + seg = _customer_segment( + _row_get(row, 'customer_parentid'), + accounting_orgid, + reseller_id_set, + ) + if seg is None: + skipped += 1 + continue + try: + sales, profit, settle, _src = await _bill_finance_amounts( + sor, row, accounting_orgid, is_owner, parent_orgid, + ) + except Exception as exc: + errors.append({ + 'bill_id': _row_get(row, 'bill_id'), + 'error': str(exc), + }) + continue + + _bucket_add(totals[seg], sales, profit, settle) + _bucket_add(totals['grand_total'], sales, profit, settle) + + pid = _row_get(row, 'providerid') or '' + prid = _row_get(row, 'productid') or '' + key = (pid, prid) + if key not in by_pp: + by_pp[key] = { + 'provider_orgid': pid, + 'product_id': prid, + 'direct_customers': _new_amount_bucket(), + 'from_sub_resellers': _new_amount_bucket(), + 'total': _new_amount_bucket(), + } + _bucket_add(by_pp[key][seg], sales, profit, settle) + _bucket_add(by_pp[key]['total'], sales, profit, settle) + + breakdown = [] + for (pid, prid), node in by_pp.items(): + breakdown.append({ + 'provider': { + 'orgid': pid, + 'name': await _provider_name_cache(sor, provider_names, pid), + }, + 'product': { + 'id': prid, + 'name': await _product_name_cache(sor, product_names, prid), + }, + 'direct_customers': _bucket_round(node['direct_customers']), + 'from_sub_resellers': _bucket_round(node['from_sub_resellers']), + 'total': _bucket_round(node['total']), + }) + breakdown.sort(key=lambda x: float(x['total']['sales_total'] or 0), reverse=True) + + settle_target = await _settle_upstream_meta(sor, accounting_orgid, None) + if is_owner: + settle_label = '应付供应商' + else: + settle_label = '应付上级机构' + + data = { + 'accounting_orgid': accounting_orgid, + 'accounting_orgname': await _org_name(sor, accounting_orgid), + 'is_business_owner': is_owner, + 'settle_upstream_label': settle_label, + 'settle_upstream_target': { + 'type': settle_target['settle_upstream_type'], + 'orgid': settle_target['settle_upstream_orgid'], + 'name': settle_target['settle_upstream_orgname'], + }, + 'period': { + 'start_date': ns.get('start_date'), + 'end_date': ns.get('end_date'), + }, + 'customer_scope': { + 'include_sub_reseller_customers': include_sub, + 'descendant_reseller_ids': reseller_ids, + 'descendant_reseller_count': len(reseller_ids), + }, + 'filters': { + 'only_accounted': only_accounted, + 'bill_state': ns.get('bill_state'), + }, + 'bill_count': len(bill_rows), + 'bill_id_count': fetch['total_ids'], + 'id_query_len': fetch['id_query_len'], + 'truncated': truncated, + 'max_bills': max_bills, + 'skipped_out_of_scope': skipped, + 'totals': { + 'direct_customers': _bucket_round(totals['direct_customers']), + 'from_sub_resellers': _bucket_round(totals['from_sub_resellers']), + 'grand_total': _bucket_round(totals['grand_total']), + }, + 'by_provider_product': breakdown, + 'errors': errors, + } + if _parse_bool(ns.get('debug'), False) or ( + data['totals']['grand_total']['bill_count'] == 0 + and fetch['id_query_len'] > 0 + ): + data['debug'] = { + 'id_query_len': fetch['id_query_len'], + 'bill_id_count': fetch['total_ids'], + 'overview_rows_len': len(bill_rows), + 'skipped_out_of_scope': skipped, + 'sample_parentid': _row_get(bill_rows[0], 'customer_parentid') if bill_rows else None, + } + return {'status': True, 'msg': 'ok', 'data': data} + + +# _report = params_kw.get('report') or params_kw.get('api') or 'order_list' +_report = 'overview' +if _report in ('overview', 'billing_overview', 'finance_billing_overview'): + ret = await finance_billing_overview(params_kw) +elif _report in ('detail', 'order_detail'): + ret = await finance_order_report_detail(params_kw) +else: + ret = await finance_order_report(params_kw) +return ret \ No newline at end of file diff --git a/b/cntoai/model_management_add.dspy b/b/cntoai/model_management_add.dspy index 6ff492d..e858e61 100644 --- a/b/cntoai/model_management_add.dspy +++ b/b/cntoai/model_management_add.dspy @@ -1,6 +1,6 @@ # model_management 可写入字段(不含 id、created_at、updated_at) _MODEL_FIELDS = ( - 'llmid', 'provider', 'model_name', 'display_name', 'model_type', + 'llmid', 'provider', 'model_name', 'display_name', 'model_logo', 'model_type', 'context_length', 'input_token_price', 'output_token_price', 'cache_hit_input_price', 'billing_method', 'billing_unit', 'capabilities', 'limitations', 'highlights', 'is_active', diff --git a/b/cntoai/model_management_customer_search.dspy b/b/cntoai/model_management_customer_search.dspy index 1876e1f..25c197c 100644 --- a/b/cntoai/model_management_customer_search.dspy +++ b/b/cntoai/model_management_customer_search.dspy @@ -5,7 +5,7 @@ def _escape(value): # 客户侧可见字段(不含 listing_status、is_active 等运营字段) _CUSTOMER_MODEL_COLUMNS = """ - id, llmid, provider, model_name, display_name, model_type, + id, llmid, provider, model_name, display_name, model_logo, model_type, context_length, input_token_price, output_token_price, cache_hit_input_price, billing_method, billing_unit, capabilities, limitations, highlights, description, sort_order,is_active, experience diff --git a/b/cntoai/model_management_search.dspy b/b/cntoai/model_management_search.dspy index 2547234..da350a9 100644 --- a/b/cntoai/model_management_search.dspy +++ b/b/cntoai/model_management_search.dspy @@ -1,6 +1,6 @@ # 可写入/更新的字段(不含 id、created_at、updated_at) _MODEL_FIELDS = ( - 'llmid', 'provider', 'model_name', 'display_name', 'model_type', + 'llmid', 'provider', 'model_name', 'display_name', 'model_logo', 'model_type', 'context_length', 'input_token_price', 'output_token_price', 'cache_hit_input_price', 'billing_method', 'billing_unit', 'capabilities', 'limitations', 'highlights', 'is_active', diff --git a/b/cntoai/model_management_update.dspy b/b/cntoai/model_management_update.dspy index c28d5b5..fcb6ae0 100644 --- a/b/cntoai/model_management_update.dspy +++ b/b/cntoai/model_management_update.dspy @@ -1,6 +1,6 @@ # model_management 可写入字段(不含 id、created_at、updated_at) _MODEL_FIELDS = ( - 'llmid', 'provider', 'model_name', 'display_name', 'model_type', + 'llmid', 'provider', 'model_name', 'display_name', 'model_logo', 'model_type', 'context_length', 'input_token_price', 'output_token_price', 'cache_hit_input_price', 'billing_method', 'billing_unit', 'capabilities', 'limitations', 'highlights', 'is_active', diff --git a/b/cntoai/model_usage_admin_report.dspy b/b/cntoai/model_usage_admin_report.dspy index 254aa3e..6b235db 100644 --- a/b/cntoai/model_usage_admin_report.dspy +++ b/b/cntoai/model_usage_admin_report.dspy @@ -1,3 +1,26 @@ +async def get_user_role(ns={}): + sor = ns['sor'] + ns['del_flg'] = '0' + res_role = await sor.R('userrole', ns) + if res_role: + user_role = res_role[0] + else: + return { + 'status': False, + 'msg': 'userrole table, user id can not find...', + } + roleid = user_role.get('roleid') + role_name = await sor.R('role', {'id': roleid}) + if role_name: + role = role_name[0].get('role') + else: + return { + 'status': False, + 'msg': 'role table, can not get role name', + } + return role + + def _escape(value): if value is None: return None @@ -182,18 +205,74 @@ async def _enrich_usage_rows(sor, rows): return items -async def _fetch_customer_users(sor, orgid, customerid=None): - """获取机构下客户及其用户映射。""" - org_rows = await sor.R('organization', {'parentid': orgid, 'del_flg': '0'}) - if customerid: - org_rows = [row for row in org_rows if row.get('id') == customerid] - org_map = {row['id']: row for row in org_rows} +async def _resolve_scope_orgid(sor, user_orgid, user_role): + """ + 解析报表统计范围的机构 id。 + 运营/运营管理员:users.orgid 即所在机构 id。 + 其他管理员:users.orgid 为用户机构 id,所在机构为 organization.parentid。 + """ + if user_role in ('运营', '运营管理员'): + return user_orgid + org_rows = await sor.R('organization', {'id': user_orgid, 'del_flg': '0'}) + if org_rows and org_rows[0].get('parentid'): + return org_rows[0]['parentid'] + return user_orgid + +async def _fetch_customer_users(sor, institution_orgid, customerid=None): + """ + 获取机构下辖用户。 + 普通用户:users.orgid = organization.id,organization.parentid = 机构 id。 + 管理/运营:users.orgid 直接等于机构 id。 + 邀请注册可能存在二级 organization(parentid 指向上级客户机构)。 + """ + inst_esc = _escape(institution_orgid) + if customerid: + cid_esc = _escape(customerid) + if customerid == institution_orgid: + user_scope = """( + o.parentid = '%s' + OR o.parentid IN ( + SELECT id FROM organization WHERE parentid = '%s' AND del_flg = '0' + ) + OR u.orgid = '%s' + )""" % (inst_esc, inst_esc, inst_esc) + else: + user_scope = "(u.orgid = '%s' OR o.parentid = '%s')" % (cid_esc, cid_esc) + else: + user_scope = """( + o.parentid = '%s' + OR o.parentid IN ( + SELECT id FROM organization WHERE parentid = '%s' AND del_flg = '0' + ) + OR u.orgid = '%s' + )""" % (inst_esc, inst_esc, inst_esc) + + sql = """ + SELECT u.id, u.username, u.name, u.orgid, o.orgname, o.parentid AS org_parentid + FROM users u + INNER JOIN organization o ON u.orgid = o.id AND o.del_flg = '0' + WHERE u.del_flg = '0' AND %s + """ % user_scope + rows = await sor.sqlExe(sql, {}) + + org_map = {} user_map = {} - for oid in org_map: - user_rows = await sor.R('users', {'orgid': oid, 'del_flg': '0'}) - for user in user_rows: - user_map[user['id']] = user + for row in rows: + uid = row['id'] + oid = row.get('orgid') + user_map[uid] = { + 'id': uid, + 'username': row.get('username'), + 'name': row.get('name'), + 'orgid': oid, + } + if oid and oid not in org_map: + org_map[oid] = { + 'id': oid, + 'orgname': row.get('orgname'), + 'parentid': row.get('org_parentid'), + } return org_map, user_map @@ -376,7 +455,6 @@ async def model_usage_user_report(ns={}): except Exception as e: return {'status': False, 'msg': '查询失败, %s' % str(e)} - async def model_usage_admin_report(ns={}): """ 管理员查看当前机构下所有客户的模型使用汇总。 @@ -413,8 +491,8 @@ async def model_usage_admin_report(ns={}): if group_by and group_by not in ('hour', 'day', 'week'): return {'status': False, 'msg': 'group_by 仅支持 hour / day / week'} - page_size = int(ns.get('page_size', 20)) - current_page = int(ns.get('current_page', 1)) + page_size = int(ns.get('page_size')) if ns.get('page_size') else 20 + current_page = int(ns.get('current_page')) if ns.get('current_page') else 1 offset = (current_page - 1) * page_size db = DBPools() @@ -424,11 +502,12 @@ async def model_usage_admin_report(ns={}): if not user_rows: return {'status': False, 'msg': '用户不存在'} - orgid = user_rows[0].get('orgid') + user_orgid = user_rows[0].get('orgid') user_role = await get_user_role({'userid': userid, 'sor': sor}) if user_role not in ('管理员', '运营', '运营管理员'): return {'status': False, 'msg': '无权限,仅机构管理员可查看'} + orgid = await _resolve_scope_orgid(sor, user_orgid, user_role) org_map, user_map = await _fetch_customer_users(sor, orgid, customerid) user_ids = list(user_map.keys()) if not user_ids: diff --git a/b/cntoai/model_usage_user_report.dspy b/b/cntoai/model_usage_user_report.dspy index befac12..1cb5896 100644 --- a/b/cntoai/model_usage_user_report.dspy +++ b/b/cntoai/model_usage_user_report.dspy @@ -316,8 +316,8 @@ async def model_usage_user_report(ns={}): if group_by and group_by not in ('hour', 'day', 'week'): return {'status': False, 'msg': 'group_by 仅支持 hour / day / week'} - page_size = int(ns.get('page_size', 20)) - current_page = int(ns.get('current_page', 1)) + page_size = int(ns.get('page_size')) if ns.get('page_size') else 20 + current_page = int(ns.get('current_page')) if ns.get('current_page') else 1 offset = (current_page - 1) * page_size db = DBPools() diff --git a/f/web-kboss/src/api/FinancialOverview/FinancialOverview.js b/f/web-kboss/src/api/FinancialOverview/FinancialOverview.js new file mode 100644 index 0000000..9e4c7aa --- /dev/null +++ b/f/web-kboss/src/api/FinancialOverview/FinancialOverview.js @@ -0,0 +1,17 @@ +import request from "@/utils/request"; +// 获取财务概览 +export const reqFinancialOverview = (params = {}) => { + return request({ + url: '/bill/finance_order_report_overview.dspy', + method: 'get', + params + }) +} +// 计费统计 +export const reqBillingStatistics = (params = {}) => { + return request({ + url: '/bill/finance_order_report.dspy', + method: 'get', + params + }) +} \ No newline at end of file diff --git a/f/web-kboss/src/api/model/model.js b/f/web-kboss/src/api/model/model.js index 65e0b79..07fb52c 100644 --- a/f/web-kboss/src/api/model/model.js +++ b/f/web-kboss/src/api/model/model.js @@ -126,19 +126,25 @@ export const reqTokenUsage = (params = {}) => { // 模型信息配置添加 export const reqModelInfoConfig = (params = {}) => { + const isFormData = params instanceof FormData return request({ url: '/cntoai/model_management_add.dspy', - method: 'get', - params + method: isFormData ? 'post' : 'get', + params: isFormData ? undefined : params, + data: isFormData ? params : undefined, + headers: isFormData ? { 'Content-Type': 'multipart/form-data' } : undefined }) } // 模型信息配置编辑(编辑时需要额外传 id) export const reqModelInfoConfigEdit = (params = {}) => { + const isFormData = params instanceof FormData return request({ url: '/cntoai/model_management_update.dspy', - method: 'get', - params + method: isFormData ? 'post' : 'get', + params: isFormData ? undefined : params, + data: isFormData ? params : undefined, + headers: isFormData ? { 'Content-Type': 'multipart/form-data' } : undefined }) } @@ -149,4 +155,13 @@ export const reqModelInfoConfigList = (params = {}) => { method: 'get', params }) +} + +// 运营报表 +export const reqOperationReport = (params = {}) => { + return request({ + url: '/cntoai/model_usage_admin_report.dspy', + method: 'post', + params + }) } \ No newline at end of file diff --git a/f/web-kboss/src/router/index.js b/f/web-kboss/src/router/index.js index c3f628c..0828d53 100644 --- a/f/web-kboss/src/router/index.js +++ b/f/web-kboss/src/router/index.js @@ -436,6 +436,44 @@ export const constantRoutes = [ * 需要根据用户角色动态加载的路由 */ export const asyncRoutes = [ + // 财务——财务概览 + { + path: "/financialOverview", + component: Layout, + meta: { + title: "财务概览", + fullPath: "/financialOverview", + noCache: true, + icon: "el-icon-data-analysis", + roles: ["财务"] + }, + children: [ + { + path: "", + component: () => import('@/views/finance/financialOverview/index.vue'), + name: 'FinancialOverview', + meta: { + title: "财务概览", + fullPath: "/financialOverview", + noCache: true, + roles: ["财务"] + } + }, + // 计费统计 + { + path: "billingStatistics", + component: () => import('@/views/finance/billingStatistics/index.vue'), + name: 'BillingStatistics', + meta: { + title: "计费统计", + fullPath: "/financialOverview/billingStatistics", + noCache: false, + roles: ["财务"] + } + } + ] + }, + // 运营——模型管理 { path: "/modelManagement", @@ -539,29 +577,29 @@ export const asyncRoutes = [ ] }, // Token用量 - 一级菜单(所有登录用户都能看到) - // { - // path: "/tokenUsage", - // component: Layout, - // meta: { - // title: "Token用量", - // fullPath: "/tokenUsage", - // noCache: true, - // icon: "el-icon-data-line" - // }, - // children: [ - // { - // path: "", - // component: () => import('@/views/tokenUsage/index.vue'), - // name: 'TokenUsage', - // meta: { - // title: "Token用量", - // fullPath: "/tokenUsage", - // noCache: true, - // icon: "el-icon-data-line" - // } - // }, - // ] - // }, + { + path: "/tokenUsage", + component: Layout, + meta: { + title: "Token用量", + fullPath: "/tokenUsage", + noCache: true, + icon: "el-icon-data-line" + }, + children: [ + { + path: "", + component: () => import('@/views/tokenUsage/index.vue'), + name: 'TokenUsage', + meta: { + title: "Token用量", + fullPath: "/tokenUsage", + noCache: true, + icon: "el-icon-data-line" + } + }, + ] + }, // 模型体验 { path: "/modelExperience", @@ -2049,9 +2087,19 @@ export const asyncRoutes = [ }, { - path: "/finance", component: Layout, redirect: "/finance", meta: { + path: "/finance", component: Layout, redirect: "/finance/financialOverview", meta: { title: "财务", icon: "el-icon-s-data", noCache: true, fullPath: "/finance", }, children: [{ + path: "financialOverview", + component: () => import("@/views/finance/financialOverview"), + name: "FinancialOverview", + meta: { + title: "财务概览", + fullPath: "/finance/financialOverview", + icon: "el-icon-data-analysis", + roles: ["财务"] + }, + }, { path: "supplierSettlement", hidden: true, component: () => import( diff --git a/f/web-kboss/src/store/modules/permission.js b/f/web-kboss/src/store/modules/permission.js index 719ba05..1b2d5bb 100644 --- a/f/web-kboss/src/store/modules/permission.js +++ b/f/web-kboss/src/store/modules/permission.js @@ -6,6 +6,7 @@ const MOBILE_UA_REGEXP = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Ope // 项目里用到的固定角色名,集中放这里,避免代码里到处写字符串。 const CUSTOMER_ROLE = '客户'; const OPERATION_ROLE = '运营'; +const FINANCE_ROLE = '财务'; // 这个用户能看到订单管理里的特殊子菜单,比如历史订单和订单详情。 const SPECIAL_ORDER_USER = 'ZhipuHZ'; @@ -19,6 +20,9 @@ const COMMON_ROUTE_PATHS = ['/product', '/tokenManagement', '/tokenUsage', '/mod // 运营角色需要额外补出来的菜单。 const OPERATION_EXTRA_ROUTE_PATHS = ['/modelManagement', '/modelInfoConfig', '/operationReport']; +// 财务角色需要额外补出来的菜单。 +const FINANCE_EXTRA_ROUTE_PATHS = ['/financialOverview']; + // 普通客户账号默认要补出来的基础菜单。 const BASE_USER_ROUTE_PATHS = ['/orderManagement', '/resourceManagement']; @@ -336,6 +340,15 @@ function addOperationRoutes(accessedRoutes, routes, userRoles = [], deviceType = return appendMissingRoutes(accessedRoutes, getRoutesByPath(routes, OPERATION_EXTRA_ROUTE_PATHS)); } +// 财务角色额外补财务菜单,目前只在 PC 端展示。 +function addFinanceRoutes(accessedRoutes, routes, userRoles = [], deviceType = 'pc') { + if (!userRoles.includes(FINANCE_ROLE) || deviceType !== 'pc') { + return accessedRoutes; + } + + return appendMissingRoutes(accessedRoutes, getRoutesByPath(routes, FINANCE_EXTRA_ROUTE_PATHS)); +} + // token市集是公共菜单,所有登录用户都要能看到。 function addCommonRoutes(accessedRoutes, routes, deviceType = 'pc') { const commonRoutes = getRoutesByPath(routes, COMMON_ROUTE_PATHS) @@ -499,6 +512,9 @@ const actions = { // 6. 运营角色额外补模型管理。 accessedRoutes = addOperationRoutes(accessedRoutes, asyncRoutes, userRoles, deviceType); + // 6.1 财务角色额外补财务菜单。 + accessedRoutes = addFinanceRoutes(accessedRoutes, asyncRoutes, userRoles, deviceType); + // 7. 最后处理订单管理里的特殊子菜单权限。 accessedRoutes = filterOrderChildrenByUser(accessedRoutes, username); diff --git a/f/web-kboss/src/views/finance/billingStatistics/index.vue b/f/web-kboss/src/views/finance/billingStatistics/index.vue new file mode 100644 index 0000000..8275f74 --- /dev/null +++ b/f/web-kboss/src/views/finance/billingStatistics/index.vue @@ -0,0 +1,669 @@ + + + + + diff --git a/f/web-kboss/src/views/finance/financialOverview/index.vue b/f/web-kboss/src/views/finance/financialOverview/index.vue new file mode 100644 index 0000000..3d0f4b6 --- /dev/null +++ b/f/web-kboss/src/views/finance/financialOverview/index.vue @@ -0,0 +1,736 @@ + + + + + diff --git a/f/web-kboss/src/views/operation/modelInfoConfig/ModelInfoEditDialog.vue b/f/web-kboss/src/views/operation/modelInfoConfig/ModelInfoEditDialog.vue index 90823b8..ee2e91e 100644 --- a/f/web-kboss/src/views/operation/modelInfoConfig/ModelInfoEditDialog.vue +++ b/f/web-kboss/src/views/operation/modelInfoConfig/ModelInfoEditDialog.vue @@ -44,10 +44,23 @@ - +
- 选择文件 - {{ editForm.logo || '未选择任何文件' }} + +
+ model logo +
+
+ 选择文件 + 移除 + {{ editForm.logo || (editForm.modelLogoPreview ? '已上传图片' : '未选择任何文件') }} +
@@ -260,6 +273,9 @@ const DEFAULT_EDIT_FORM = { type: '', provider: '', logo: '', + modelLogo: '', + modelLogoFile: null, + modelLogoPreview: '', apiUrl: '', description: '', contextLength: '', @@ -321,6 +337,7 @@ export default { const apiUrl = this.toFormValue(apiDoc.api_url || row.api_url || '') const curlCode = this.toTextareaValue(apiDoc.curl_code || row.curl_code || '') const pythonCode = this.toTextareaValue(apiDoc.python_code || row.python_code || '') + const modelLogo = row.model_logo || row.modelLogo || row.provider_logo || '' this.editForm = { ...defaultForm, @@ -330,7 +347,10 @@ export default { displayName: row.display_name || row.displayName || row.model_name || row.name || '', type: row.model_type || row.type || '', provider: row.provider || '', - logo: row.provider_logo || row.logo || '', + logo: row.logo || '', + modelLogo, + modelLogoFile: null, + modelLogoPreview: modelLogo, apiUrl, requestUrl: apiUrl, description: row.description || '', @@ -376,7 +396,7 @@ export default { this.submitLoading = true try { const res = isEdit - ? await reqModelInfoConfigEdit({ ...params, id: this.editForm.id }) + ? await reqModelInfoConfigEdit(this.appendEditId(params)) : await reqModelInfoConfig(params) if (res && res.status) { this.$message.success(res.msg || (isEdit ? '模型信息编辑成功' : '模型信息添加成功')) @@ -392,7 +412,7 @@ export default { } }, buildSubmitParams() { - return { + const params = { provider: this.editForm.provider, model_name: this.editForm.modelName, display_name: this.editForm.displayName, @@ -408,10 +428,68 @@ export default { highlights: JSON.stringify(this.filterNameValueList(this.editForm.highlights)), description: this.editForm.description, experience: this.editForm.experience, + model_logo: this.editForm.modelLogo, api_url: this.editForm.apiUrl || this.editForm.requestUrl, curl_code: this.editForm.curlCode, python_code: this.editForm.pythonCode } + return this.editForm.modelLogoFile ? this.buildFormData(params) : params + }, + buildFormData(params) { + const formData = new FormData() + Object.keys(params).forEach(key => { + if (params[key] !== undefined && params[key] !== null) { + formData.append(key, params[key]) + } + }) + formData.set('model_logo', this.editForm.modelLogoFile) + return formData + }, + appendEditId(params) { + if (params instanceof FormData) { + params.append('id', this.editForm.id) + return params + } + return { ...params, id: this.editForm.id } + }, + triggerLogoUpload() { + if (this.$refs.modelLogoInput) { + this.$refs.modelLogoInput.click() + } + }, + handleLogoFileChange(event) { + const file = event.target.files && event.target.files[0] + if (!file) return + if (file.size > 5 * 1024 * 1024) { + this.$message.error('图片大小不能超过5MB') + event.target.value = '' + return + } + if (!file.type || !file.type.startsWith('image/')) { + this.$message.error('请选择图片文件') + event.target.value = '' + return + } + if (this.editForm.modelLogoPreview && this.editForm.modelLogoPreview.startsWith('blob:')) { + URL.revokeObjectURL(this.editForm.modelLogoPreview) + } + this.editForm.modelLogoFile = file + this.editForm.modelLogo = '' + this.editForm.modelLogoPreview = URL.createObjectURL(file) + this.editForm.logo = file.name + event.target.value = '' + }, + clearModelLogo() { + if (this.editForm.modelLogoPreview && this.editForm.modelLogoPreview.startsWith('blob:')) { + URL.revokeObjectURL(this.editForm.modelLogoPreview) + } + this.editForm.modelLogo = '' + this.editForm.modelLogoFile = null + this.editForm.modelLogoPreview = '' + this.editForm.logo = '' + if (this.$refs.modelLogoInput) { + this.$refs.modelLogoInput.value = '' + } }, buildCapabilities() { return [ @@ -775,6 +853,36 @@ export default { align-items: center; gap: 10px; min-height: 32px; +} + +.logo-file-input { + display: none; +} + +.logo-preview { + display: flex; + align-items: center; + justify-content: center; + flex: 0 0 42px; + width: 42px; + height: 42px; + overflow: hidden; + background: #f6f8fb; + border: 1px solid #edf1f7; + border-radius: 10px; + + img { + width: 100%; + height: 100%; + object-fit: cover; + } +} + +.logo-actions { + display: flex; + align-items: center; + gap: 8px; + min-width: 0; span { color: #98a2b3; diff --git a/f/web-kboss/src/views/operation/modelInfoConfig/index.vue b/f/web-kboss/src/views/operation/modelInfoConfig/index.vue index faa41f0..5fde449 100644 --- a/f/web-kboss/src/views/operation/modelInfoConfig/index.vue +++ b/f/web-kboss/src/views/operation/modelInfoConfig/index.vue @@ -100,63 +100,7 @@ export default { modelType: '', provider: '' }, - tableData: [ - { - id: 'M006', - name: 'GPT-3.5-Turbo', - type: '文本生成', - provider: 'OpenAI', - logo: '-', - apiUrl: 'https://api.openai.com/v1/chat/completions', - description: 'GPT-3.5-Turbo高效对话模型,适合文本生成和问答。', - status: '待上架', - updatedAt: '2026-04-15' - }, - { - id: 'M007', - name: 'ViT-B/16', - type: '图像生成', - provider: 'Google', - logo: '-', - apiUrl: 'https://api.kaiyuan.cloud/v1/images', - description: 'ViT-B/16视觉Transformer模型,适合图像理解。', - status: '待上架', - updatedAt: '2026-04-14' - }, - { - id: 'M008', - name: 'Bark', - type: '语音合成', - provider: '开元云', - logo: '-', - apiUrl: 'https://api.kaiyuan.cloud/v1/audio', - description: 'Bark多语言语音合成模型,支持自然语音生成。', - status: '待上架', - updatedAt: '2026-04-13' - }, - { - id: 'M009', - name: 'CLIP', - type: '多模态', - provider: 'OpenAI', - logo: '-', - apiUrl: 'https://api.kaiyuan.cloud/v1/clip', - description: 'CLIP多模态模型,支持图文检索和理解。', - status: '待上架', - updatedAt: '2026-04-12' - }, - { - id: 'M011', - name: 'Falcon-180B', - type: '文本生成', - provider: 'Meta', - logo: '-', - apiUrl: 'https://api.kaiyuan.cloud/v1/chat', - description: 'Falcon-180B开源大语言模型,适合复杂文本任务。', - status: '待上架', - updatedAt: '2026-04-27' - } - ] + tableData: [] } }, computed: { diff --git a/f/web-kboss/src/views/operation/operationReport/index.vue b/f/web-kboss/src/views/operation/operationReport/index.vue index 688f2c8..924e650 100644 --- a/f/web-kboss/src/views/operation/operationReport/index.vue +++ b/f/web-kboss/src/views/operation/operationReport/index.vue @@ -2,196 +2,529 @@
-

运营报表

-

模型使用与计费数据概览

+
+ + + +

运营报表

+
+

查看机构下模型调用次数、Token 消耗和费用统计。

+
+
+ {{ filterTimeText }} + + 刷新 +
- 导出报表
-
-
活跃用户
-
{{ statCards.activeUsers }}
-
-
-
Token消耗
-
{{ statCards.tokenUsage }}
-
-
-
Tokens总费用
-
¥{{ statCards.totalFee }}
+
+
+
{{ item.label }}
+ +
+
{{ item.value }}
+
{{ item.desc }}
- - - - - - - +
+
+

筛选条件

+

按模型和时间范围查询运营用量。

+
+ + + + + - - - - - - - - - - - - 查询 - 重置 - - + + + + 查询 + 重置 + +
- - - - - +
+
+

用量明细

+

共 {{ total }} 条记录

+
+ {{ timeText }} +
+ + + + + + - - - - - - + + + - + + + + + + + + + + +
+ >
diff --git a/f/web-kboss/src/views/product/allProduct/index.vue b/f/web-kboss/src/views/product/allProduct/index.vue index 675af6b..ae2749e 100644 --- a/f/web-kboss/src/views/product/allProduct/index.vue +++ b/f/web-kboss/src/views/product/allProduct/index.vue @@ -116,37 +116,65 @@ @click="goModelDetail(product)" >
-

{{ product.display_name || product.model_name }}

- - + + + {{ getProviderInitial(product.provider || product.display_name || product.model_name) }} + +
+

{{ product.display_name || product.model_name }}

+

{{ product.provider || product.model_name || '-' }}

+
-
- {{ product.model_type || '-' }} - {{ product.billing_method || '-' }} - {{ product.provider || '-' }} - {{ product.llmid }} + +
+
+ 输入 + ¥{{ formatTokenPrice(product.input_token_price) }} + 元/百万 tokens +
+
+ 输出 + ¥{{ formatTokenPrice(product.output_token_price) }} + 元/百万 tokens +
+
+ 缓存读 + ¥{{ formatTokenPrice(product.cache_hit_input_price) }} + 元/百万 tokens +
+
+ 缓存创建 + ¥{{ formatTokenPrice(product.input_token_price) }} + 元/百万 tokens +
-
- 输入 ¥{{ formatTokenPrice(product.input_token_price) }}/千Token - 输出 ¥{{ formatTokenPrice(product.output_token_price) }}/千Token + + + + -
- {{ getProviderInitial(product.provider) }} - {{ product.provider || '-' }} -
-
- + +
+
@@ -202,6 +230,20 @@ import { reqNavList, reqNewHomeSync, reqNewHomeFestival } from "@/api/newHome"; import { gotoYuanJingAPI } from '@/api/gotoYuanJing' import TopBox from '@/views/homePage/components/topBox/index.vue' +const getImageUrlPrefix = () => { + const origin = window.location.origin + if (origin.includes('localhost') || origin.includes('dev.opencomputing.cn')) { + return 'https://dev.opencomputing.cn/idfile?path=' + } + if (origin.includes('www.opencomputing.cn')) { + return 'https://www.opencomputing.cn/idfile?path=' + } + if (origin.includes('www.ncmatch.cn')) { + return 'https://www.ncmatch.cn/idfile?path=' + } + return `${origin}/idfile?path=` +} + export default { name: "ProductServicePage", components: { @@ -219,7 +261,8 @@ export default { tokenModelTypeList: [], tokenProviderList: [], tokenActiveModelType: '', - tokenActiveProvider: '' + tokenActiveProvider: "", + IMG_URL: getImageUrlPrefix(), }; }, computed: { @@ -359,6 +402,61 @@ export default { return provider ? provider.slice(0, 1) : 'M'; }, + getModelLogoUrl(modelLogo) { + if (!modelLogo) return ''; + if (/^https?:\/\//.test(modelLogo) || modelLogo.startsWith('data:') || modelLogo.startsWith('blob:')) { + return modelLogo; + } + return `${this.IMG_URL}${modelLogo}`; + }, + + normalizeTokenConfigList(value) { + if (!value) return []; + let parsedValue = value; + if (typeof value === 'string') { + try { + parsedValue = JSON.parse(value); + } catch (error) { + return []; + } + } + if (Array.isArray(parsedValue)) { + return parsedValue.map(item => ({ + name: item.name || item.label || item.key || '', + value: item.value || item.text || item.content || '' + })).filter(item => item.name || item.value); + } + if (parsedValue && typeof parsedValue === 'object') { + return Object.keys(parsedValue).map(key => ({ name: key, value: parsedValue[key] })); + } + return []; + }, + + getTokenFeatureTags(model) { + const capabilities = this.normalizeTokenConfigList(model.capabilities); + const highlights = this.normalizeTokenConfigList(model.highlights); + const inputType = capabilities.find(item => item.name === '输入类型'); + const outputType = capabilities.find(item => item.name === '输出类型'); + const highlight = highlights[0]; + return [ + { + text: inputType && inputType.value ? inputType.value : (model.model_type || '模型能力'), + icon: 'el-icon-view', + type: 'green' + }, + { + text: outputType && outputType.value ? outputType.value : (highlight && (highlight.value || highlight.name)) || '智能生成', + icon: 'el-icon-magic-stick', + type: 'purple' + }, + { + text: model.billing_method || '按量计费', + icon: 'el-icon-coin', + type: 'blue' + } + ].filter(item => item.text); + }, + // experience 为 1 才允许模型体验,0 时按钮置灰禁用。 isModelExperienceEnabled(model) { return Number(model && model.experience) === 1; @@ -1293,42 +1391,86 @@ export default { } .token-market-grid { - display: flex; - flex-wrap: wrap; - gap: 14px; + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: 12px; + align-items: stretch; } .token-market-card { - flex: 0 0 calc((100% - 28px) / 3); + position: relative; + display: flex; + flex-direction: column; + overflow: hidden; min-width: 0; - padding: 14px; + min-height: 224px; + padding: 12px; background: #ffffff; - border: 1px solid #edf1f7; - border-radius: 12px; - box-shadow: 0 10px 24px rgba(31, 45, 61, 0.05); + border: 1px solid #dfe7f3; + border-radius: 10px; + box-shadow: 0 8px 20px rgba(31, 45, 61, 0.08); cursor: pointer; transition: all 0.2s ease; &:hover { - border-color: #d7e4f5; + border-color: #8bbcff; transform: translateY(-2px); - box-shadow: 0 16px 32px rgba(31, 45, 61, 0.08); + box-shadow: 0 0 0 3px rgba(30, 111, 255, 0.1), 0 18px 38px rgba(30, 111, 255, 0.18); + + &:before { + opacity: 1; + } + + .token-hover-actions { + opacity: 1; + transform: translateY(0); + } + } + + &:before { + position: absolute; + inset: 0; + content: ''; + pointer-events: none; + opacity: 0; + background: radial-gradient(420px circle at 45% 0%, rgba(51, 133, 255, 0.16), transparent 42%); + transition: opacity 0.35s ease; } } .token-card-top { + position: relative; + z-index: 1; display: flex; align-items: center; - gap: 6px; - margin-bottom: 8px; + gap: 10px; + min-height: 38px; + margin-bottom: 10px; + + .token-title-group { + flex: 1; + min-width: 0; + } h3 { - flex: 1; margin: 0; - color: #1f2d3d; - font-size: 14px; + color: #111827; + font-size: 15px; font-weight: 700; - line-height: 1.35; + line-height: 1.25; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + + p { + margin: 3px 0 0; + color: #6b7890; + font-size: 12px; + line-height: 1.2; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } } @@ -1346,70 +1488,164 @@ export default { transform: rotate(90deg); } - .token-tags { - display: flex; - flex-wrap: wrap; - gap: 6px; - padding-bottom: 10px; + .token-price-grid { + position: relative; + z-index: 1; + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 8px 12px; margin-bottom: 10px; - border-bottom: 1px dashed #d8e0ee; + } + + .token-price-item { + span, + em { + display: block; + color: #6b7890; + font-style: normal; + } span { - padding: 2px 6px; - color: #667085; + margin-bottom: 2px; font-size: 11px; - background: #f8fafc; - border: 1px solid #edf1f7; - border-radius: 6px; + } + + strong { + display: block; + color: #111827; + font-size: 15px; + font-weight: 800; + line-height: 1.1; + } + + em { + margin-top: 0; + font-size: 10px; } } - .token-price-line { - display: flex; - flex-wrap: wrap; - gap: 10px; - margin-bottom: 8px; - color: #1f2937; - font-size: 12px; - font-weight: 600; + .token-description { + position: relative; + z-index: 1; + min-height: 58px; + margin-bottom: 12px; + color: #728096; + font-size: 13px; + line-height: 1.5; + display: -webkit-box; + overflow: hidden; + text-overflow: ellipsis; + line-clamp: 3; + -webkit-line-clamp: 3; + -webkit-box-orient: vertical; } - .token-meta { + .token-card-footer { + position: relative; + z-index: 1; display: flex; align-items: center; - gap: 6px; - margin-bottom: 10px; - color: #667085; - font-size: 12px; + justify-content: space-between; + gap: 8px; + min-width: 0; + margin-top: auto; + padding-top: 0; + } + + .token-feature-tags { + display: flex; + align-items: center; + flex-wrap: wrap; + flex: 1; + min-width: 0; + gap: 5px; } .token-provider-avatar { display: inline-flex; align-items: center; justify-content: center; - width: 16px; - height: 16px; + flex: 0 0 36px; + width: 34px; + height: 34px; color: #ffffff; - font-size: 10px; - background: #1e6fff; - border-radius: 4px; + font-size: 16px; + font-weight: 700; + // background: #7c3aed; + // border-radius: 8px; + overflow: hidden; + // box-shadow: 0 6px 16px rgba(124, 58, 237, 0.18); + + img { + display: block; + width: 100%; + height: 100%; + object-fit: cover; + } } - .token-actions { + .token-feature-tags span { + display: inline-flex; + align-items: center; + gap: 4px; + max-width: 104px; + height: 20px; + padding: 0 7px; + font-size: 11px; + border-radius: 999px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + + &.green { + color: #047857; + background: #dcfce7; + border: 1px solid #86efac; + } + + &.purple { + color: #4338ca; + background: #eef2ff; + border: 1px solid #c7d2fe; + } + + &.blue { + color: #1d4ed8; + background: #eff6ff; + border: 1px solid #bfdbfe; + } + } + + .token-hover-actions { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 2; display: flex; gap: 6px; + padding: 6px; + opacity: 0; + background: rgba(255, 255, 255, 0.94); + border-top: 1px solid #edf1f7; + backdrop-filter: blur(10px); + transform: translateY(100%); + transition: all 0.25s ease; button { display: inline-flex; align-items: center; + justify-content: center; + flex: 1; gap: 4px; height: 28px; - padding: 0 10px; + padding: 0 8px; color: #475467; font-size: 12px; + font-weight: 600; background: #ffffff; border: 1px solid #d8e0ee; - border-radius: 7px; + border-radius: 8px; cursor: pointer; transition: all 0.2s ease; @@ -1417,30 +1653,32 @@ export default { color: #1e6fff; border-color: #9ec5ff; background: #f4f8ff; + box-shadow: 0 0 0 3px rgba(30, 111, 255, 0.08); } } - .experience { - color: #4f46e5; - border-color: #c7d2fe; + .primary-action { + color: #ffffff; + background: #1e6fff; + border-color: #1e6fff; &:hover { - color: #4338ca; - border-color: #a5b4fc; - background: #eef2ff; + color: #ffffff; + background: #155eef; + border-color: #155eef; } &.disabled, &:disabled { - color: #98a2b3; + color: #ffffff; cursor: not-allowed; - background: #f3f4f6; - border-color: #e5e7eb; + background: #cbd5e1; + border-color: #cbd5e1; &:hover { - color: #98a2b3; - background: #f3f4f6; - border-color: #e5e7eb; + color: #ffffff; + background: #cbd5e1; + border-color: #cbd5e1; } } } @@ -1618,14 +1856,14 @@ export default { } } - .product-content .main-content .token-market-card { - flex-basis: calc((100% - 14px) / 2); + .product-content .main-content .token-market-grid { + grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 768px) { - .product-content .main-content .token-market-card { - flex-basis: 100%; + .product-content .main-content .token-market-grid { + grid-template-columns: 1fr; } } } diff --git a/f/web-kboss/src/views/tokenUsage/index.vue b/f/web-kboss/src/views/tokenUsage/index.vue index bf7ea06..4ca7265 100644 --- a/f/web-kboss/src/views/tokenUsage/index.vue +++ b/f/web-kboss/src/views/tokenUsage/index.vue @@ -1,7 +1,7 @@ @@ -92,13 +409,15 @@ export default { .token-usage-page { min-height: 100vh; padding: 24px; - background: linear-gradient(180deg, #f3f7ff 0%, #f7f9fc 48%, #ffffff 100%); + background: + radial-gradient(circle at top left, rgba(64, 158, 255, 0.16), transparent 34%), + linear-gradient(180deg, #f3f7ff 0%, #f7f9fc 48%, #ffffff 100%); } .usage-shell { min-height: calc(100vh - 48px); padding: 24px; - background: #ffffff; + background: rgba(255, 255, 255, 0.92); border: 1px solid #edf1f7; border-radius: 18px; box-shadow: 0 12px 30px rgba(31, 45, 61, 0.06); @@ -113,7 +432,18 @@ export default { } .page-header { - margin-bottom: 24px; + align-items: center; + padding: 20px 22px; + margin-bottom: 20px; + overflow: hidden; + color: #ffffff; + background: linear-gradient(135deg, #1e6fff 0%, #409eff 48%, #7c3aed 100%); + border-radius: 18px; + box-shadow: 0 14px 34px rgba(64, 158, 255, 0.22); + + p { + color: rgba(255, 255, 255, 0.82); + } } .title-line { @@ -124,7 +454,7 @@ export default { h2 { margin: 0; - color: #1f2d3d; + color: #ffffff; font-size: 24px; } } @@ -135,9 +465,9 @@ export default { justify-content: center; width: 36px; height: 36px; - color: #409eff; + color: #ffffff; font-size: 18px; - background: #eef5ff; + background: rgba(255, 255, 255, 0.18); border-radius: 12px; } @@ -149,9 +479,26 @@ export default { } .refresh-btn { + color: #1e6fff; + border: none; border-radius: 10px; } +.header-actions { + display: flex; + align-items: center; + gap: 12px; +} + +.range-badge { + padding: 7px 12px; + color: #ffffff; + font-size: 12px; + background: rgba(255, 255, 255, 0.16); + border: 1px solid rgba(255, 255, 255, 0.24); + border-radius: 999px; +} + .stat-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); @@ -160,10 +507,19 @@ export default { } .stat-card { + position: relative; + overflow: hidden; padding: 20px; border-radius: 16px; border: 1px solid #edf1f7; background: #ffffff; + box-shadow: 0 8px 24px rgba(31, 45, 61, 0.04); + transition: transform 0.2s ease, box-shadow 0.2s ease; + + &:hover { + transform: translateY(-2px); + box-shadow: 0 12px 28px rgba(31, 45, 61, 0.08); + } span, em { @@ -180,20 +536,130 @@ export default { font-size: 26px; } + &:before { + position: absolute; + top: 0; + right: 0; + width: 86px; + height: 86px; + content: ''; + background: rgba(255, 255, 255, 0.52); + border-radius: 0 0 0 86px; + } + &.primary { - background: #eef5ff; + background: linear-gradient(135deg, #eef5ff 0%, #ffffff 100%); } &.success { - background: #f0fdf4; + background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%); } &.warning { - background: #fff7ed; + background: linear-gradient(135deg, #fff7ed 0%, #ffffff 100%); } &.purple { - background: #f5f3ff; + background: linear-gradient(135deg, #f5f3ff 0%, #ffffff 100%); + } +} + +.stat-card-head { + position: relative; + z-index: 1; + display: flex; + align-items: center; + justify-content: space-between; + + i { + display: flex; + align-items: center; + justify-content: center; + width: 34px; + height: 34px; + color: #409eff; + font-size: 18px; + background: rgba(64, 158, 255, 0.12); + border-radius: 12px; + } +} + +.usage-dashboard { + display: grid; + grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); + gap: 16px; + margin-bottom: 20px; +} + +.dashboard-card { + padding: 22px; + border: 1px solid #edf1f7; + border-radius: 16px; + background: #ffffff; + box-shadow: 0 10px 26px rgba(31, 45, 61, 0.05); +} + +.dashboard-title { + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 16px; + + h3 { + margin: 0; + color: #1f2d3d; + font-size: 16px; + } + + span { + color: #909399; + font-size: 12px; + } +} + +.token-total { + color: #1f2d3d; + font-size: 34px; + font-weight: 700; + line-height: 1.2; +} + +.token-ratio-card { + p { + margin: 6px 0 18px; + color: #909399; + font-size: 13px; + } +} + +.chart-box { + width: 100%; + height: 240px; +} + +.model-rank-chart { + height: 300px; +} + +.ratio-list, +.rank-list { + display: flex; + flex-direction: column; + gap: 14px; +} + +.ratio-label, +.rank-info { + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 8px; + color: #606266; + font-size: 13px; + + strong { + color: #1f2d3d; + font-weight: 700; } } @@ -201,6 +667,8 @@ export default { padding: 22px; border: 1px solid #edf1f7; border-radius: 16px; + background: #ffffff; + box-shadow: 0 10px 26px rgba(31, 45, 61, 0.05); } .card-header { @@ -212,15 +680,57 @@ export default { } } +.filter-actions { + display: flex; + align-items: center; + gap: 10px; + padding: 8px; + background: #f6f8fb; + border: 1px solid #edf1f7; + border-radius: 12px; + + /deep/ .el-select { + width: 110px; + } + + /deep/ .el-input { + width: 160px; + } + + /deep/ .el-input__inner { + border-color: transparent; + } +} + .usage-table { border-radius: 12px; overflow: hidden; + + /deep/ .el-table__header th { + color: #475467; + font-weight: 700; + background: #f8fafc; + } + + /deep/ .el-table__row:hover > td { + background: #f6faff; + } +} + +.table-pagination { + display: flex; + justify-content: flex-end; + margin-top: 16px; } @media (max-width: 1100px) { .stat-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } + + .usage-dashboard { + grid-template-columns: 1fr; + } } @media (max-width: 700px) { @@ -232,5 +742,15 @@ export default { .card-header { flex-direction: column; } + + .filter-actions { + align-items: flex-start; + flex-direction: column; + width: 100%; + + /deep/ .el-date-editor { + width: 100%; + } + } }