{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "'''\n", "连接数据库信息\n", "对数据进行过滤\n", "宜搭新建普通表单——字段一一对应\n", "将读取数据写入宜搭表单\n", "设置定时任务校验数据变动\n", "'''" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# 连接数据库信息" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# -*- coding: utf-8 -*-\n", "import psycopg2\n", "import pandas as pd\n", "# 获得连接\n", "conn = psycopg2.connect(database=\"f6_bi\", user=\"BASIC$ro_caowei\", password=\"!ro_caowei123\", host=\"hgprecn-cn-nif1vnv0y002-cn-shanghai.hologres.aliyuncs.com\", port=\"80\")\n", "# 获得游标对象,一个游标对象可以对数据库进行执行操作\n", "cursor = conn.cursor()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# 对数据进行过滤" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import datetime\n", "now_time = datetime.datetime.now()\n", "yes_time = now_time + datetime.timedelta(days=-1)\n", "yes_time_nyr = int(yes_time.strftime('%Y%m%d'))# 获取前一天日期\n", "# sql语句 建表\n", "sql =f\"\"\"SELECT * FROM \"public\".\"holo_ads_report_sales_saas_commission_info_d\" WHERE \"date_fmt\" LIKE '%{yes_time_nyr}%' AND \"org_type\" LIKE '%一般%' ;\"\"\"\n", "# 执行语句\n", "cursor.execute(sql)\n", "# 获取结果集的每一行\n", "rows = cursor.fetchall()\n", "# 获取所有字段名\n", "all_fields = cursor.description\n", "#执行结果转化为dataframe\n", "col = []\n", "for i in all_fields:\n", " col.append(i[0])\n", "data_F6 = pd.DataFrame(list(rows),columns=col)\n", "# data_F6.to_excel(r'C:\\Users\\admin\\Desktop\\小六提成明细.xlsx')\n", "# 关闭数据库连接\n", "cursor.close()\n", "conn.close()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# 基础函数配置" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# 基础函数配置\n", "import pandas as pd\n", "import pandas as pd\n", "import requests\n", "from pathlib import Path\n", "from urllib.parse import quote\n", "import json\n", "import numpy as np\n", "import time\n", "\n", "ROOT = Path('.').absolute() # 当前工作目录\n", "\n", "def generateToken() -> str:\n", " \"\"\" 生成 token \"\"\"\n", "\n", " token_api = 'https://api.dingtalk.com/v1.0/oauth2/accessToken'\n", "\n", " # 该信息在钉钉开放应用中\n", " data = {\n", " \"appKey\": \"ding5kqocon5s9oph5uq\",\n", " \"appSecret\": 'HL1jgsIIfLAC0eTH0A1m4mwxUDqbgsiPeCCGGE3ocM6qJBTIW7Ivt9drxF_Z4Kb_'\n", " }\n", "\n", " res = requests.post(token_api, json=data)\n", " token = res.json()['accessToken']\n", "\n", " return token\n", "\n", "def read_instances(token, formUuid, page, n):\n", " \"\"\" 函数功能:读取普通表单的所有数据 \"\"\"\n", "\n", " api = f'https://api.dingtalk.com//v1.0/yida/forms/instances/search'\n", "\n", " headers = {\n", " \"Content-Type\": \"application/json\",\n", " \"x-acs-dingtalk-access-token\": token\n", " }\n", "\n", " formData = {\n", " \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n", " \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n", " \"userId\" : \"yida_pub_account\",\n", " \"language\" : \"zh_CN\",\n", " \"formUuid\" : formUuid,\n", " \"currentPage\" : page,\n", " \"pageSize\" : n\n", " }\n", "\n", " res = requests.post(api, headers=headers, json=formData)\n", " return res.json()\n", "\n", "def read_delete(token, formInstanceId):\n", " \"\"\" 函数功能:调用本接口删除表单数据。 \"\"\"\n", "\n", " api = f'https://api.dingtalk.com//v1.0/yida/forms/instances'\n", "\n", " headers = {\n", " \"Content-Type\": \"application/json\",\n", " \"x-acs-dingtalk-access-token\": token\n", " }\n", "\n", " formData = {\n", " \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n", " \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n", " \"userId\" : \"yida_pub_account\",\n", " \"language\" : \"zh_CN\",\n", " \"formInstanceId\" : formInstanceId\n", " }\n", "\n", " res = requests.delete(api, headers=headers, json=formData)\n", " return res.json()\n", "\n", "class NpEncoder(json.JSONEncoder):\n", " def default(self, obj):\n", " if isinstance(obj, np.integer):\n", " return int(obj)\n", " elif isinstance(obj, np.floating):\n", " return float(obj)\n", " elif isinstance(obj, np.ndarray):\n", " return obj.tolist()\n", " else:\n", " return super(NpEncoder, self).default(obj)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# 读取员工对应关系" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "读取到流程表单中 84 条数据!\n" ] } ], "source": [ "# 读取员工对应关系:宜搭员工-ID对应表\n", "TOKEN = generateToken()\n", "FORMID = \"FORM-EA866E715PF9YA7ECCAGSABX91Q72PVA3WRFL6\" # 宜搭员工-ID对应表 FORM-EA866E715PF9YA7ECCAGSABX91Q72PVA3WRFL6\n", "# 读取流程表单数据\n", "form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n", "PAGES = form_data.get('totalCount')//10 + 1\n", "\n", "ALL_DATA_staff = []\n", "\"\"\" 获取全量数据 \"\"\"\n", "for i in range(1, PAGES+1):\n", " # form_data = read_processes_instances(token=TOKEN, formUuid=FORMID, createFromTimeGMT=CREATE_FROM, createToTimeGMT=CREATE_TO, page=i, n=100, searchField={'textField_l7if5ff9': '否'})\n", " form_data = read_instances(token=TOKEN, formUuid=FORMID, page=i, n=100)\n", " for data in form_data.get('data'):\n", " ALL_DATA_staff.append(data)\n", "print(f'读取到流程表单中 {len(ALL_DATA_staff)} 条数据!')\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# 写入数据" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def read_new(FORMID,formData):\n", " \"\"\" 通过实例id 获取表单内容 \"\"\"\n", " api = f'https://api.dingtalk.com/v1.0/yida/forms/instances'\n", "\n", " headers = {\n", " \"Content-Type\": \"application/json\",\n", " \"x-acs-dingtalk-access-token\": TOKEN\n", " }\n", " payload = {\n", " \"formUuid\" : FORMID,\n", " \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n", " \"formDataJson\" : json.dumps(formData, cls=NpEncoder),\n", " \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n", " \"language\" : \"zh_CN\",\n", " \"userId\" : \"yida_pub_account\"\n", " }\n", "\n", " res = requests.post(api, headers=headers, json=payload)\n", " print(res.json())\n", "\n", " return res.json()\n", "\n", "TOKEN = generateToken()\n", "FORMID = \"FORM-GP666M71TNE9GFK57V2O85NLM04I34CSG1TFLC\" # holo_ads_report_sales_saas_commission_info_d\n", "data_F6 = data_F6.astype('string')\n", "data_F6 = data_F6.fillna('',inplace=False)\n", "for i in range(0,len(data_F6)):\n", " formData = {\n", " \"textField_xgaye7b\":data_F6[\"date_fmt\"][i],\n", " \"textField_5aunjjz\":data_F6[\"to_grant_employee_id\"][i],\n", " \"employeeField_lft1hn2e\":[v['formData']['textField_lfrw3u59'] for v in ALL_DATA_staff if v['formData']['textField_lfrw3u58']== data_F6[\"to_grant_person\"][i]],\n", " \"employeeField_lft1hn2f\":[v['formData']['textField_lfrw3u59'] for v in ALL_DATA_staff if v['formData']['textField_lfrw3u58']== data_F6[\"area_manager\"][i]],\n", " \"textField_3qsnt9b\":data_F6[\"region_name\"][i],\n", " \"textField_ua446tp\":data_F6[\"province_name\"][i],\n", " \"textField_j9ljlkf\":data_F6[\"commission_type_1st\"][i],\n", " \"textField_b0zcpw7\":data_F6[\"commission_type_2nd\"][i],\n", " \"textField_07mm4y7\":data_F6[\"order_id\"][i],\n", " \"textField_m3fpjk2\":data_F6[\"order_no\"][i],\n", " \"textField_6glka3o\":data_F6[\"org_id\"][i],\n", " \"textField_dfvhslm\":data_F6[\"org_code\"][i],\n", " \"textField_syljyve\":data_F6[\"org_name\"][i],\n", " \"textField_xindatc\":data_F6[\"org_crm_id\"][i],\n", " \"textField_ewa0fov\":data_F6[\"group_id\"][i],\n", " \"textField_kqi0lgg\":data_F6[\"group_name\"][i],\n", " \"dateField_9rmplmj\":int(time.mktime(time.strptime(data_F6[\"saas_create_time\"][i], \"%Y-%m-%d %H:%M:%S\"))*1000),\n", " \"textField_gkzyime\":data_F6[\"saas_edition_fmt\"][i],\n", " \"textField_nz7bokd\":data_F6[\"spu_id\"][i],\n", " \"textField_czwr4gi\":data_F6[\"spu_name\"][i],\n", " \"numberField_u2uxl9r\":data_F6[\"is_upgrade_order\"][i],\n", " \"numberField_zriq77s\":data_F6[\"is_finish_follow\"][i],\n", " \"numberField_zwvyzuw\":data_F6[\"is_first_renew\"][i],\n", " \"dateField_dezcysa\":int(time.mktime(time.strptime(data_F6[\"pay_date\"][i], \"%Y-%m-%d\"))*1000),\n", " \"numberField_7soucf9\":data_F6[\"order_trade_amount\"][i],\n", " \"numberField_vbubqg5\":data_F6[\"amount_real_base\"][i],\n", " \"numberField_322ap3t\":data_F6[\"amount_real_beyond\"][i],\n", " \"numberField_9r0pqjh\":data_F6[\"r_within_base\"][i],\n", " \"numberField_86nt5n9\":data_F6[\"r_beyond_base\"][i],\n", " \"numberField_4zq0um5\":data_F6[\"commission_proportion\"][i],\n", " \"numberField_4udpris\":data_F6[\"over_commission_proportion\"][i],\n", " \"numberField_t7q2mf8\":data_F6[\"commission_base\"][i],\n", " \"numberField_26r5qhn\":data_F6[\"satisfy_score\"][i],\n", " \"numberField_z56c377\":data_F6[\"deduction_factor\"][i],\n", " \"dateField_7bb5a3w\":int(time.mktime(time.strptime(data_F6[\"etl_time\"][i], \"%Y-%m-%d %H:%M:%S\"))*1000),\n", " \"textField_nir0f7g\":data_F6[\"branch_name\"][i],\n", " \"textField_x72zywz\":data_F6[\"city_name\"][i],\n", " \"employeeField_lft1hn2g\":[v['formData']['textField_lfrw3u59'] for v in ALL_DATA_staff if v['formData']['textField_lfrw3u58']== data_F6[\"technician\"][i]],\n", " \"textField_o65xr8r\":data_F6[\"to_grant_employee_code\"][i],\n", " \"textField_m48obfc\":data_F6[\"is_first_add_purchase\"][i],\n", " \"textField_3w926j1\":data_F6[\"month_fmt\"][i],\n", " \"textField_1st9ba2\":data_F6[\"ding_user_id\"][i],\n", " \"textField_mxlhhx6\":data_F6[\"org_type\"][i],\n", " \"numberField_tnr50pm\":data_F6[\"new_stage_flag\"][i],\n", " \"dateField_0tk0bj2\":int(time.mktime(time.strptime(data_F6[\"date_fmt_2\"][i], \"%Y-%m-%d\"))*1000),\n", " \"dateField_vl6p1ds\":int(time.mktime(time.strptime(data_F6[\"saas_create_time_2\"][i], \"%Y-%m-%d %H:%M:%S\"))*1000),\n", " \"dateField_3oc57kk\":int(time.mktime(time.strptime(data_F6[\"pay_date_2\"][i], \"%Y-%m-%d\"))*1000),\n", " \"textField_br8o1wy\":data_F6[\"month_fmt_2\"][i],\n", " \"numberField_pkt6w2o\":data_F6[\"order_period_year_number\"][i],\n", " \"textField_9solcme\":data_F6[\"business_type\"][i],\n", " \"numberField_esmnply\":data_F6[\"is_more_paid\"][i]\n", " }\n", " read_new(FORMID,formData)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# 校验数据是否存在" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "读取到流程表单中 37 条数据!\n" ] } ], "source": [ "# 读取表单现有数据\n", "TOKEN = generateToken()\n", "FORMID = \"FORM-GP666M71TNE9GFK57V2O85NLM04I34CSG1TFLC\" # holo_ads_report_sales_saas_commission_info_d FORM-GP666M71TNE9GFK57V2O85NLM04I34CSG1TFLC\n", "# 读取流程表单数据\n", "form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n", "PAGES = form_data.get('totalCount')//100 + 1\n", "\n", "ALL_info_d = []\n", "\"\"\" 获取全量数据 \"\"\"\n", "for i in range(1, PAGES+1):\n", " # form_data = read_processes_instances(token=TOKEN, formUuid=FORMID, createFromTimeGMT=CREATE_FROM, createToTimeGMT=CREATE_TO, page=i, n=100, searchField={'textField_l7if5ff9': '否'})\n", " form_data = read_instances(token=TOKEN, formUuid=FORMID, page=i, n=100)\n", " for data in form_data.get('data'):\n", " ALL_info_d.append(data)\n", "print(f'读取到流程表单中 {len(ALL_info_d)} 条数据!')\n", "# 组合字段\n" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'20230306企业钱包1124098466991763351916728827400000'" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "str(ALL_info_d[0]['formData']['textField_xgaye7b']) + str(ALL_info_d[0]['formData']['textField_b0zcpw7']) + str(ALL_info_d[0]['formData']['textField_07mm4y7']) + str(ALL_info_d[0]['formData']['textField_6glka3o']) + str(ALL_info_d[0]['formData']['dateField_9rmplmj']) + str(ALL_info_d[0]['formData']['numberField_pkt6w2o'])" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [], "source": [ "ALL_LIST = []\n", "for i in range(0,len(ALL_info_d)):\n", " data_str= str(ALL_info_d[i]['formData']['textField_xgaye7b']) + str(ALL_info_d[i]['formData']['textField_b0zcpw7']) + str(ALL_info_d[i]['formData']['textField_07mm4y7']) + str(ALL_info_d[i]['formData']['textField_6glka3o']) + str(ALL_info_d[i]['formData']['dateField_9rmplmj']) + str(ALL_info_d[i]['formData']['numberField_pkt6w2o'])\n", " ALL_LIST.append(data_str)\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "ALL_LIST" ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [], "source": [ "num_name = str(data_F6.loc[0,'date_fmt']) + str(data_F6.loc[0,'commission_type_2nd']) + str(data_F6.loc[0,'order_id']) + str(data_F6.loc[0,'org_id']) + str(int(time.mktime(time.strptime(str(data_F6.loc[0,'saas_create_time']), \"%Y-%m-%d %H:%M:%S\"))*1000)) + str(data_F6.loc[0,'order_period_year_number'])" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 107, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "False\n" ] } ], "source": [ "if num_name in ALL_LIST:\n", " print(True)\n", "else:\n", " print(False)" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [], "source": [ "data_F6 = data_F6.astype('string')\n", "data_F6 = data_F6.fillna('',inplace=False)" ] }, { "cell_type": "code", "execution_count": 81, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'20230306企业钱包1124098466991763351916728827400000'" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "str(ALL_info_d[0]['formData']['textField_xgaye7b']) + str(ALL_info_d[0]['formData']['textField_b0zcpw7']) + str(ALL_info_d[0]['formData']['textField_07mm4y7']) + str(ALL_info_d[0]['formData']['textField_6glka3o']) + str(ALL_info_d[0]['formData']['dateField_9rmplmj']) + str(ALL_info_d[0]['formData']['numberField_pkt6w2o'])" ] }, { "cell_type": "code", "execution_count": 99, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'20230316SaaS新签1140069231124098466991771806816789336200001'" ] }, "execution_count": 99, "metadata": {}, "output_type": "execute_result" } ], "source": [ "str(data_F6.loc[0,'date_fmt']) + str(data_F6.loc[0,'commission_type_2nd']) + str(data_F6.loc[0,'order_id']) + str(data_F6.loc[0,'org_id']) + str(int(time.mktime(time.strptime(str(data_F6.loc[0,'saas_create_time']), \"%Y-%m-%d %H:%M:%S\"))*1000)) + str(data_F6.loc[0,'order_period_year_number'])" ] }, { "cell_type": "code", "execution_count": 98, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'1678933620000'" ] }, "execution_count": 98, "metadata": {}, "output_type": "execute_result" } ], "source": [ "str(int(time.mktime(time.strptime(str(data_F6.loc[0,'saas_create_time']), \"%Y-%m-%d %H:%M:%S\"))*1000))" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'20230320'" ] }, "execution_count": 102, "metadata": {}, "output_type": "execute_result" } ], "source": [ "str(data_F6.loc[33,'date_fmt'])" ] }, { "cell_type": "code", "execution_count": 103, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | date_fmt | \n", "to_grant_employee_id | \n", "to_grant_person | \n", "area_manager | \n", "region_name | \n", "province_name | \n", "commission_type_1st | \n", "commission_type_2nd | \n", "order_id | \n", "order_no | \n", "... | \n", "ding_user_id | \n", "org_type | \n", "new_stage_flag | \n", "date_fmt_2 | \n", "saas_create_time_2 | \n", "pay_date_2 | \n", "month_fmt_2 | \n", "order_period_year_number | \n", "business_type | \n", "is_more_paid | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "20230316 | \n", "10546443563971837045 | \n", "王鑫 | \n", "关磊 | \n", "华北区域 | \n", "河北省 | \n", "新签 | \n", "SaaS新签 | \n", "114006923 | \n", "1678872812290 | \n", "... | \n", "2750181616954944 | \n", "一般 | \n", "1 | \n", "2023-03-16 | \n", "2023-03-16 02:27:00 | \n", "2023-03-15 | \n", "\n", " | 1 | \n", "新签 | \n", "-1 | \n", "
| 1 | \n", "20230316 | \n", "10546443563971837045 | \n", "王鑫 | \n", "关磊 | \n", "华北区域 | \n", "河北省 | \n", "新签 | \n", "培训 | \n", "114006923 | \n", "1678872812290 | \n", "... | \n", "2750181616954944 | \n", "一般 | \n", "1 | \n", "2023-03-16 | \n", "2023-03-16 02:27:00 | \n", "2023-03-15 | \n", "\n", " | 1 | \n", "\n", " | -1 | \n", "
| 2 | \n", "20230316 | \n", "10546443563971837045 | \n", "王鑫 | \n", "关磊 | \n", "华北区域 | \n", "河北省 | \n", "新签 | \n", "数据处理 | \n", "114006923 | \n", "1678872812290 | \n", "... | \n", "2750181616954944 | \n", "一般 | \n", "1 | \n", "2023-03-16 | \n", "2023-03-16 02:27:00 | \n", "2023-03-15 | \n", "\n", " | 1 | \n", "\n", " | -1 | \n", "
| 3 | \n", "20230308 | \n", "10546443563971837045 | \n", "王鑫 | \n", "关磊 | \n", "华北区域 | \n", "河北省 | \n", "新签 | \n", "数据处理 | \n", "113345864 | \n", "1678240000360 | \n", "... | \n", "2750181616954944 | \n", "一般 | \n", "1 | \n", "2023-03-08 | \n", "2023-03-08 02:34:00 | \n", "2023-03-08 | \n", "\n", " | 1 | \n", "\n", " | -1 | \n", "
| 4 | \n", "20230308 | \n", "10546443563971837045 | \n", "王鑫 | \n", "关磊 | \n", "华北区域 | \n", "河北省 | \n", "新签 | \n", "培训 | \n", "113345864 | \n", "1678240000360 | \n", "... | \n", "2750181616954944 | \n", "一般 | \n", "1 | \n", "2023-03-08 | \n", "2023-03-08 02:34:00 | \n", "2023-03-08 | \n", "\n", " | 1 | \n", "\n", " | -1 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 7196 | \n", "20230301 | \n", "10546443563910414190 | \n", "陈俊 | \n", "肖军 | \n", "西南区域 | \n", "重庆市 | \n", "增购 | \n", "短信 | \n", "112738735 | \n", "1677638572115 | \n", "... | \n", "15235241321213058 | \n", "一般 | \n", "1 | \n", "2023-03-01 | \n", "2023-01-07 07:51:00 | \n", "2023-03-01 | \n", "\n", " | 0 | \n", "短信 | \n", "-1 | \n", "
| 7197 | \n", "20230301 | \n", "10546443563910414190 | \n", "陈俊 | \n", "肖军 | \n", "西南区域 | \n", "重庆市 | \n", "新签 | \n", "SaaS新签 | \n", "112733169 | \n", "1677635774445 | \n", "... | \n", "15235241321213058 | \n", "一般 | \n", "1 | \n", "2023-03-01 | \n", "2023-03-01 02:04:00 | \n", "2023-03-01 | \n", "\n", " | 1 | \n", "新签 | \n", "-1 | \n", "
| 7198 | \n", "20230301 | \n", "10546443563910414190 | \n", "陈俊 | \n", "肖军 | \n", "西南区域 | \n", "重庆市 | \n", "新签 | \n", "培训 | \n", "112733169 | \n", "1677635774445 | \n", "... | \n", "15235241321213058 | \n", "一般 | \n", "1 | \n", "2023-03-01 | \n", "2023-03-01 02:04:00 | \n", "2023-03-01 | \n", "\n", " | 1 | \n", "\n", " | -1 | \n", "
| 7199 | \n", "20230301 | \n", "10546443563910414190 | \n", "陈俊 | \n", "肖军 | \n", "西南区域 | \n", "重庆市 | \n", "新签 | \n", "数据处理 | \n", "112733169 | \n", "1677635774445 | \n", "... | \n", "15235241321213058 | \n", "一般 | \n", "1 | \n", "2023-03-01 | \n", "2023-03-01 02:04:00 | \n", "2023-03-01 | \n", "\n", " | 1 | \n", "\n", " | -1 | \n", "
| 7200 | \n", "20230301 | \n", "10546443563910414190 | \n", "陈俊 | \n", "肖军 | \n", "西南区域 | \n", "重庆市 | \n", "新签 | \n", "SaaS新签 | \n", "112780010 | \n", "1677659477142 | \n", "... | \n", "15235241321213058 | \n", "一般 | \n", "1 | \n", "2023-03-01 | \n", "2023-03-01 08:43:00 | \n", "2023-03-01 | \n", "\n", " | 1 | \n", "新签 | \n", "-1 | \n", "
7201 rows × 51 columns
\n", "| \n", " | date_fmt | \n", "to_grant_employee_id | \n", "to_grant_person | \n", "area_manager | \n", "region_name | \n", "province_name | \n", "commission_type_1st | \n", "commission_type_2nd | \n", "order_id | \n", "order_no | \n", "... | \n", "ding_user_id | \n", "org_type | \n", "new_stage_flag | \n", "date_fmt_2 | \n", "saas_create_time_2 | \n", "pay_date_2 | \n", "month_fmt_2 | \n", "order_period_year_number | \n", "business_type | \n", "is_more_paid | \n", "
|---|
0 rows × 51 columns
\n", "