CREATE TABLE IF NOT EXISTS "crm_contract" (
  "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
  "name" varchar NOT NULL,
  "customer_id" bigint,
  "business_id" bigint,
  "process_instance_id" bigint,
  "order_date" varchar,
  "owner_user_id" bigint,
  "no" varchar,
  "start_time" varchar,
  "end_time" varchar,
  "price" int,
  "discount_percent" int,
  "product_price" int,
  "ro_user_ids" varchar,
  "rw_user_ids" varchar,
  "contact_id" bigint,
  "sign_user_id" bigint,
  "contact_last_time" varchar,
  "remark" varchar,
  "creator" varchar DEFAULT '',
  "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  "updater" varchar DEFAULT '',
  "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  "deleted" bit NOT NULL DEFAULT FALSE,
  PRIMARY KEY ("id")
) COMMENT '合同表';

CREATE TABLE IF NOT EXISTS "crm_clue" (
  "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
  "transform_status" bit NOT NULL,
  "follow_up_status" bit NOT NULL,
  "name" varchar NOT NULL,
  "customer_id" bigint NOT NULL,
  "contact_next_time" varchar,
  "telephone" varchar,
  "mobile" varchar,
  "address" varchar,
  "owner_user_id" bigint,
  "contact_last_time" varchar,
  "remark" varchar,
  "creator" varchar DEFAULT '',
  "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  "updater" varchar DEFAULT '',
  "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  "deleted" bit NOT NULL DEFAULT FALSE,
  "tenant_id" bigint NOT NULL,
  PRIMARY KEY ("id")
) COMMENT '线索表';

CREATE TABLE IF NOT EXISTS "crm_receivable" (
    "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
    "no" varchar,
    "plan_id" bigint,
    "customer_id" bigint,
    "contract_id" bigint,
    "check_status" int,
    "process_instance_id" bigint,
    "return_time" varchar,
    "return_type" varchar,
    "price" varchar,
    "owner_user_id" bigint,
    "batch_id" bigint,
    "sort" int,
    "data_scope" int,
    "data_scope_dept_ids" varchar,
    "status" int NOT NULL,
    "remark" varchar,
    "creator" varchar DEFAULT '',
    "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "updater" varchar DEFAULT '',
    "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    "deleted" bit NOT NULL DEFAULT FALSE,
    PRIMARY KEY ("id")
) COMMENT '回款管理';

CREATE TABLE IF NOT EXISTS "crm_receivable_plan" (
     "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
     "index_no" bigint,
     "receivable_id" bigint,
     "status" int NOT NULL,
     "check_status" varchar,
     "process_instance_id" bigint,
     "price" varchar,
     "return_time" varchar,
     "remind_days" bigint,
     "remind_time" varchar,
     "customer_id" bigint,
     "contract_id" bigint,
     "owner_user_id" bigint,
     "sort" int,
     "remark" varchar,
     "creator" varchar DEFAULT '',
     "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
     "updater" varchar DEFAULT '',
     "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
     "deleted" bit NOT NULL DEFAULT FALSE,
     PRIMARY KEY ("id")
) COMMENT '回款计划';

CREATE TABLE IF NOT EXISTS "crm_customer" (
  "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
  "name" varchar,
  "follow_up_status" bit NOT NULL,
  "lock_status" bit NOT NULL,
  "deal_status" bit NOT NULL,
  "mobile" varchar,
  "telephone" varchar,
  "website" varchar,
  "remark" varchar,
  "owner_user_id" bigint,
  "ro_user_ids" varchar,
  "rw_user_ids" varchar,
  "area_id" bigint,
  "detail_address" varchar,
  "contact_last_time" varchar,
  "contact_next_time" varchar,
  "creator" varchar DEFAULT '',
  "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  "updater" varchar DEFAULT '',
  "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  "deleted" bit NOT NULL DEFAULT FALSE,
  "tenant_id" bigint NOT NULL,
  PRIMARY KEY ("id")
) COMMENT '客户表';