Files
F6--/其它系统脚本/宜搭小六明细看板数据源加工.ipynb
T
2026-01-30 11:28:35 +08:00

3277 lines
166 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 169,
"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",
"from datetime import date, timedelta\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 transcation(token,FORMID,data_new):\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",
" payload = {\n",
" \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n",
" \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n",
" \"userId\" : \"2268275546837446\", # 曹伟 id\n",
" \"language\" : \"zh_CN\",\n",
" \"useLatestVersion\" : \"false\",\n",
" \"formInstanceId\" : FORMID,\n",
" \"updateFormDataJson\" : json.dumps(data_new, cls=NpEncoder),\n",
" }\n",
"\n",
" res = requests.put(api, headers=headers, json=payload)\n",
"\n",
" return res.json()\n",
"def aggree_approval(token: str, taskId: str, processInstanceId: str, formData: dict,res_new):\n",
" \"\"\" 函数功能:同意审批节点 --F6客户服务 应用 \"\"\"\n",
" api = f'https://api.dingtalk.com/v1.0/yida/tasks/execute'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": token\n",
" }\n",
"\n",
" payload = {\n",
" \"outResult\": \"AGREE\",\n",
" \"appType\": \"APP_UYZ0KG6L0CCNV80GZ66O\",\n",
" \"systemToken\": \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n",
" \"remark\": \"同意(接口自动)\",\n",
" \"formDataJson\": json.dumps(formData, cls=NpEncoder),\n",
" \"processInstanceId\": processInstanceId,\n",
" # \"userId\": \"yida_pub_account\",\n",
" \"userId\": res_new, \n",
" \"language\": \"zh_CN\",\n",
" \"taskId\": int(taskId)\n",
" }\n",
"\n",
" res = requests.post(api, headers=headers, json=payload)\n",
" # print('同意审批节点')\n",
" return res\n",
"def read_instances_new(token, formUuid, page, n):\n",
" \"\"\" 函数功能:读取流程表单的所有数据 \"\"\"\n",
"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/processes/instances?pageNumber={page}&pageSize={n}'\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",
" # \"searchFieldJson\": json.dumps(searchField), # 如果增加上这一项会要求升级宜搭存储\n",
" \"instanceStatus\": \"RUNNING\"\n",
" }\n",
"\n",
" res = requests.post(api, headers=headers, json=formData)\n",
" return res.json()\n",
"def get_approval_records(token: str, processInstanceId: str):\n",
" \"\"\" 函数功能:获取流程表单的审批记录 --F6客户服务 应用 \"\"\"\n",
" appType = \"APP_UYZ0KG6L0CCNV80GZ66O\"\n",
" systemToken = \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\"\n",
" userId = \"yida_pub_account\"\n",
"\n",
" api = f'https://api.dingtalk.com/v1.0/yida/processes/operationRecords?appType={appType}&systemToken={systemToken}&userId={userId}&language=zh_CN&processInstanceId={processInstanceId}'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": token\n",
" }\n",
"\n",
" res = requests.get(api, headers=headers)\n",
" # print('获取流程表单的审批记录')\n",
" return res.json()\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",
"def read_instances_pt(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",
"def read_processes(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",
"def instances_id(TOKEN,id):\n",
" \"\"\" 函数功能:查询表单实例 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/instances/{id}?appType=APP_UYZ0KG6L0CCNV80GZ66O&systemToken=XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2&userId=yida_pub_account&language=zh_CN'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
"\n",
" res = requests.get(api, headers=headers)\n",
"\n",
" return res.json()\n",
"def component(FORMID,TOKEN):\n",
" \"\"\" 获取组件信息 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/formFields'\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.get(api, headers=headers, json=payload)\n",
"\n",
" return res.json()\n",
"def component_id(id,TOKEN):\n",
" api = f'https://api.dingtalk.com/v1.0/yida/processes/instancesInfos/{id}?appType=APP_UYZ0KG6L0CCNV80GZ66O&systemToken=XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2&userId=yida_pub_account&language=zh_CN'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
" \n",
" res = requests.get(api, headers=headers)\n",
"\n",
" return res.json()\n",
"def find_indexes(daichuli_mendian_name,i_two):\n",
" indexes = [i for i, x in enumerate(daichuli_mendian_name) if x == i_two]\n",
" return indexes\n",
"def get_staffID(TOKEN: str,ALL_DATA_staff,staff_name):\n",
" res_new = [v['formData']['textField_lfrw3u59'] for v in ALL_DATA_staff if v['formData']['textField_lfrw3u58']== staff_name]\n",
" # print('通过员工名称获取员工id')\n",
" return res_new\n",
"\n",
"def component(FORMID,TOKEN):\n",
" \"\"\" 获取组件信息 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/formFields'\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.get(api, headers=headers, json=payload)\n",
"\n",
" return res.json()\n",
"def delete_in_batches(FORMID,TOKEN,ALL_DATA_instance):\n",
" \"\"\" 批量删除表单实例 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/instances/batchRemove'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
"\n",
" payload = {\n",
" \"formUuid\" : FORMID,\n",
" \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n",
" \"asynchronousExecution\" : \"true\",\n",
" \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n",
" \"formInstanceIdList\" : json.dumps(ALL_DATA_instance, cls=NpEncoder),\n",
" \"userId\" : \"yida_pub_account\",\n",
" \"executeExpression\" : \"false\" # 不触发\n",
" }\n",
"\n",
" res = requests.post(api, headers=headers, json=payload)\n",
" return res.json()\n",
"def delete_in(TOKEN,formInstanceIdList):\n",
" \"\"\" 逐条删除表单实例 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/instances?appType=APP_UYZ0KG6L0CCNV80GZ66O&systemToken=XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2&userId=yida_pub_account&language=zh_CN&formInstanceId={formInstanceIdList}'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
" res = requests.delete(api, headers=headers)\n",
" return res.json()\n",
"def Batch_creation(FORMID,TOKEN,ALL_formData):\n",
" \"\"\" 获取组件信息 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/instances/batchSave'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
" payload = {\n",
" # \"formDataJson\" : json.dumps(formData, cls=NpEncoder),\n",
" \"noExecuteExpression\" : \"false\",\n",
" \"formUuid\" : FORMID,\n",
" \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n",
" \"asynchronousExecution\" : \"false\",\n",
" \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n",
" \"keepRunningAfterException\" : \"false\",\n",
" \"userId\" : \"2268275546837446\",\n",
" \"formDataJsonList\" : json.dumps(ALL_formData, cls=NpEncoder),\n",
" }\n",
"\n",
" res = requests.post(api, headers=headers, json=payload)\n",
" return res.json()\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)\n",
"# -*- 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()\n",
"\n",
"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'))# 获取前一月\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()\n",
"data_F6 = data_F6.loc[data_F6[\"commission_type_1st\"] != \"续约\"]\n",
"data_F6 = data_F6.loc[~data_F6[\"commission_type_2nd\"].isin([\"介绍\",\"企业钱包\",\"培训\",\"数据处理\",\"企业钱包新签\"])]\n",
"data_F6 = data_F6.loc[~data_F6[\"to_grant_person\"].isin([\"孙玉蕾\",\"何钊\",\"金鹏\",\"周聪\",\"武宏超\",\"孙旭亮\",\"刘立\",\"刘光春\",\"时建飞\",\"魏子淇\",\"侯斌\",\"陈博\",\"邹存威\",\"金华斌\",\"吴间锐\",\"崔智杰\",\"黄宗祥\",\"杨挺\",\"霍创业\",\"周鹏飞\",\"邢恒岭\",\"王斌\",\"申晓勇\",\"殷昊\",\"李子晗\",\"肖军\"])]\n",
"data_F6 = data_F6.reset_index()\n",
"for i in range(0,len(data_F6)):\n",
" if data_F6.loc[i,'franchise_group_name']==\"修工坊全国运营中心\" or data_F6.loc[i,'franchise_group_name']==\"CC养车\" or data_F6.loc[i,'franchise_group_name']==\"金铁橡全国运营中心\":\n",
" if data_F6.loc[i,'saas_edition_fmt'] == \"基础版\":\n",
" data_F6.loc[i,'order_trade_amount'] = 500\n",
" if data_F6.loc[i,'saas_edition_fmt'] == \"尊享版\":\n",
" data_F6.loc[i,'order_trade_amount'] = 1500\n",
" if data_F6.loc[i,'commission_type_1st']==\"裂变红包\":\n",
" data_F6.loc[i,'order_trade_amount'] = data_F6.loc[i,'amount_real_base']\n",
" if data_F6.loc[i,'franchise_group_name']!=\"修工坊全国运营中心\" and data_F6.loc[i,'franchise_group_name']!=\"CC养车\" and data_F6.loc[i,'franchise_group_name']!=\"金铁橡全国运营中心\" and data_F6.loc[i,'franchise_group_name']!=\"\":\n",
" data_F6.loc[i,'franchise_group_name'] = \"\"\n",
"# 当月新签开户\n",
"df_1 = data_F6.copy()\n",
"df_1['pay_date'] = df_1['pay_date'].str.slice(0, 4) + df_1['pay_date'].str.slice(5, 7)\n",
"df_1['条件'] = (df_1['pay_date'] == str(yes_time_nyr)) & (df_1['business_type'] == '新签') & (df_1['franchise_group_name'].isnull())\n",
"df_1 = df_1.loc[df_1[\"条件\"] == True]\n",
"df_1 = df_1.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_1 = df_1.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '当月新签开户'})\n",
"# 之前新签本月开户\n",
"df_2 = data_F6.copy()\n",
"df_2['pay_date'] = df_2['pay_date'].str.slice(0, 4) + df_2['pay_date'].str.slice(5, 7)\n",
"df_2['条件'] = (df_2['pay_date'] != str(yes_time_nyr)) & (df_2['business_type'] == '新签') & (df_2['franchise_group_name'].isnull())\n",
"df_2 = df_2.loc[df_2[\"条件\"] == True]\n",
"df_2 = df_2.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_2 = df_2.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '之前新签本月开户'})\n",
"# 过期召回\n",
"df_3 = data_F6.copy()\n",
"df_3 = df_3.loc[df_3[\"business_type\"] == \"过期召回\"]\n",
"df_3 = df_3.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_3 = df_3.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '过期召回'})\n",
"# 首年升级\n",
"df_4 = data_F6.copy()\n",
"df_4 = df_4.loc[df_4[\"business_type\"] == \"首年升级\"]\n",
"df_4 = df_4.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_4 = df_4.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '首年升级'})\n",
"# 短信\n",
"df_5 = data_F6.copy()\n",
"df_5 = df_5.loc[df_5[\"commission_type_2nd\"] == \"短信\"]\n",
"df_5 = df_5.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_5 = df_5.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '短信'})\n",
"# 服务包\n",
"df_6 = data_F6.copy()\n",
"df_6 = df_6.loc[df_6[\"commission_type_2nd\"] == \"服务跟进\"]\n",
"df_6 = df_6.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_6 = df_6.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '服务包'})\n",
"# 轻连锁金额\n",
"df_7 = data_F6.copy()\n",
"df_7['pay_date'] = df_7['pay_date'].str.slice(0, 4) + df_7['pay_date'].str.slice(5, 7)\n",
"df_7['条件'] = (df_7['pay_date'] == str(yes_time_nyr)) & (df_7['business_type'] == '新签') & (df_7[\"franchise_group_name\"].isin([\"金铁橡全国运营中心\",\"CC养车\",\"修工坊全国运营中心\"]))\n",
"df_7 = df_7.loc[df_7[\"条件\"] == True]\n",
"df_7 = df_7.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_7 = df_7.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '轻连锁金额'})\n",
"# 新签业绩(含轻连锁)\n",
"df_8 = data_F6.copy()\n",
"df_8 = df_8.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_8 = df_8.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '新签业绩(含轻连锁)'})\n",
"# 战区经理\n",
"df_9 = data_F6.copy()\n",
"df_9 = df_9.drop_duplicates(subset='to_grant_person')\n",
"df_9 = df_9.rename(columns={'to_grant_person': '小六', 'area_manager': '战区经理'})\n",
"df_9 = df_9.loc[:, ['小六', '战区经理']]\n",
"# 红包裂变\n",
"df_10 = data_F6.copy()\n",
"df_10 = df_10.loc[df_10[\"commission_type_1st\"] == \"裂变红包\"]\n",
"df_10 = df_10.groupby('to_grant_person')['amount_real_base'].sum().reset_index()\n",
"df_10 = df_10.rename(columns={'to_grant_person': '小六', 'amount_real_base': '裂变红包'})\n",
"# 合并内容信息\n",
"merged_df = pd.merge(df_9, df_1, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_2, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_3, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_4, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_5, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_6, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_7, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_8, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_10, on='小六', how='left')\n",
"# 根据 score 字段为每个值分配一个排名\n",
"merged_df['rank'] = merged_df['新签业绩(含轻连锁)'].rank(ascending=False)\n",
"# 使用reindex函数调整列的位置\n",
"merged_df = merged_df.reindex(columns=['小六','当月新签开户', '之前新签本月开户', '过期召回', '首年升级', '短信', '服务包', '轻连锁金额','裂变红包', '新签业绩(含轻连锁)', '战区经理','rank'])\n",
"merged_df = merged_df.fillna(0)\n",
"for i_name in ['当月新签开户', '之前新签本月开户', '过期召回', '首年升级', '短信', '服务包', '轻连锁金额','裂变红包', '新签业绩(含轻连锁)','rank']:\n",
" merged_df[i_name] = merged_df[i_name].astype(int)\n",
"# 存储\n",
"# merged_df.to_excel(r\"C:\\Users\\admin\\Desktop\\小六提成明细.xlsx\")\n",
"# TOKEN = generateToken()\n",
"# '''读取员工对应关系:宜搭员工-ID对应表 '''\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')//100 + 1\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[data['formData']['textField_lfrw3u58']]=data['formData']['textField_lfrw3u59']\n",
"\n",
"# '''批量删除小六提成明细_看板数据'''\n",
"# for i in range(0,10):\n",
"# default = True\n",
"# while default:\n",
"# FORMID = \"FORM-YU966T9115OD3U4CA7RU16JLZBAV2281U0QLL2\" \n",
"# form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n",
"# PAGES = form_data.get('totalCount')//100 +1 \n",
"# print(form_data.get('totalCount'))\n",
"# if form_data.get('totalCount')<=0:\n",
"# default = False\n",
"# for i in range(PAGES, 1,-1):\n",
"# ALL_DATA_instance = []\n",
"# form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n",
"# for data in form_data.get('data'):\n",
"# ALL_DATA_instance.append(data['formInstanceId'])\n",
"# print(f'读取到表单中 {len(ALL_DATA_instance)} 条数据!')\n",
"# red_delete = delete_in_batches(FORMID,TOKEN,ALL_DATA_instance)\n",
"# form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n",
"# for data in form_data.get('data'):\n",
"# formInstanceId = data['formInstanceId']\n",
"# delete_in(TOKEN,formInstanceId)\n",
"# print(f'单条删除 {formInstanceId} 数据!')\n",
"# # 遍历数据进行新建\n",
"# for i in range(0,len(merged_df[\"小六\"])):\n",
"# # 获取主店联系人和主店联系电话\n",
"# ALL_formData = []\n",
"# if str(merged_df[\"小六\"][i]) != \"0\":\n",
"# formData = {\n",
"# 'textField_iw2qtt2':merged_df[\"小六\"][i],#\"小六\"\n",
"# 'textField_njdb6oy':merged_df[\"当月新签开户\"][i],#\"当月新签开户\"\n",
"# 'textField_zg4ptq6':merged_df[\"之前新签本月开户\"][i],#\"之前新签本月开户\"\n",
"# 'textField_d8uep3s':merged_df[\"过期召回\"][i],#\"过期召回\"\n",
"# 'textField_kv9fb8l':merged_df[\"首年升级\"][i],#\"首年升级\"\n",
"# 'textField_1b34971':merged_df[\"短信\"][i],#\"短信\"\n",
"# 'textField_cds6efy':merged_df[\"服务包\"][i],#\"服务包\"\n",
"# 'textField_cz1q8tk':merged_df[\"轻连锁金额\"][i],#\"轻连锁金额\"\n",
"# 'textField_llxcdpj9':merged_df[\"裂变红包\"][i],#\"裂变红包\"\n",
"# 'textField_ifhindg':merged_df[\"新签业绩(含轻连锁)\"][i],#\"新签业绩(含轻连锁)\"\n",
"# 'textField_llvzdm60':merged_df[\"战区经理\"][i],#\"战区经理\"\n",
"# 'numberField_llvzdm61':merged_df[\"rank\"][i]#\"rank\"\n",
"# }\n",
"# ALL_formData.append(json.dumps(formData, cls=NpEncoder)) \n",
"# FORMID = \"FORM-YU966T9115OD3U4CA7RU16JLZBAV2281U0QLL2\" \n",
"# res_new = Batch_creation(FORMID,TOKEN,ALL_formData)\n",
"# print(res_new)\n",
"# time.sleep(2)\n",
"\n",
"# '''校验是否新建正常'''\n",
"# time.sleep(20)\n",
"# FORMID = \"FORM-YU966T9115OD3U4CA7RU16JLZBAV2281U0QLL2\" \n",
"# form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n",
"# if int(form_data.get('totalCount')) == len(merged_df):\n",
"# print(\"数据新建成功!\")\n",
"# else:\n",
" \n",
"# def start_instance_process(token: str, name):\n",
"\n",
"# \"\"\"发送宜搭表单 -- 发起流程表单\n",
"\n",
"# Args:\n",
"# token \n",
"# data:需要发送的数据字典\n",
"# \"\"\"\n",
"\n",
"# yida_api = \"https://api.dingtalk.com/v1.0/yida/processes/instances/start\"\n",
"\n",
"# headers = {\n",
"# \"Content-Type\": \"application/json\",\n",
"# \"x-acs-dingtalk-access-token\": token\n",
"# }\n",
"\n",
"# send_data = {\n",
"# \"textField_l9fe0uiw\": name,\n",
"# \"textField_l9fe0uiv\": name\n",
"# }\n",
"\n",
"# payload = {\n",
"# \"appType\": \"APP_TNVBVZ3K8G56HG03Z45Q\",\n",
"# \"systemToken\": \"CH7669818R0WN18TYTYJ42PE6GY22WZN0BYWKD1\",\n",
"# \"userId\": \"yida_pub_account\",# 超级管理员账号\n",
"# \"language\": \"zh_CN\",\n",
"# \"formUuid\": \"FORM-UX866Q61GNLAZBCIEDF77BGVIIR83K82WYPHLH2\",\n",
"# \"formDataJson\": json.dumps(send_data),\n",
"# \"processCode\":\"TPROC--UX866Q61GNLAZBCIEDF77BGVIIR83M92WYPHLI2\"\n",
"# }\n",
"\n",
"# res = requests.post(yida_api, headers=headers, json=payload)\n",
"# return res\n",
"# try:\n",
"# name = \"小六提成明细_看板数据 新建条数不正确!\"\n",
"# res_yujing = start_instance_process(TOKEN,name)\n",
"# except:\n",
"# pass\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# ces ---------------"
]
},
{
"cell_type": "code",
"execution_count": 175,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"20230801 310\n",
"20230802 310\n",
"20230803 253\n",
"20230804 275\n",
"20230805 224\n",
"20230806 248\n",
"20230807 301\n",
"20230808 289\n",
"20230809 293\n",
"20230810 260\n",
"20230811 273\n",
"20230812 243\n",
"20230813 204\n",
"20230814 1025\n",
"20230815 2077\n",
"20230816 1515\n",
"20230817 1601\n",
"20230818 1603\n",
"20230819 428\n",
"20230820 321\n",
"20230821 329\n",
"20230822 311\n",
"20230823 280\n",
"20230824 246\n",
"20230825 279\n",
"20230826 17\n",
"20230827 363\n",
"20230828 633\n",
"20230829 1303\n",
"20230830 2076\n"
]
}
],
"source": [
"# 读取表单数据\n",
"# 基础函数配置\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",
"from datetime import date, timedelta\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",
"def read_instances(token, formUuid, page, n,searchFieldJson):\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",
" \"searchFieldJson\":json.dumps(searchFieldJson),\n",
" \"pageSize\" : n\n",
" }\n",
"\n",
" res = requests.post(api, headers=headers, json=formData)\n",
" return res.json()\n",
"def split(x):\n",
" try:\n",
" x = x[0].split(\"(\")[0]\n",
" except:\n",
" pass\n",
" return x\n",
"def strftime(x):\n",
" try:\n",
" timestamp = int(x) / 1000 # 将毫秒转换为秒\n",
" dt_object = datetime.fromtimestamp(timestamp)\n",
" formatted_date = dt_object.strftime(\"%Y-%m-%d\")\n",
" except:\n",
" pass\n",
" return formatted_date\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)\n",
" \n",
"from datetime import datetime\n",
"today = datetime.now()\n",
"formatted_today = today.strftime(\"%Y%m%d\")\n",
"formatted_today_two = today.strftime(\"%Y%m01\")\n",
"TOKEN = generateToken()\n",
"json_data = []\n",
"for formatted in range(int(formatted_today_two),int(formatted_today)):\n",
" searchFieldJson = {\"textField_xgaye7b\":str(formatted)}\n",
" read_data = read_instances(TOKEN, \"FORM-GP666M71TNE9GFK57V2O85NLM04I34CSG1TFLC\", 1, 100,searchFieldJson)\n",
" PAGES = read_data.get('totalCount')//100 + 1\n",
" print(formatted,read_data.get('totalCount'))\n",
" for a in range(1,PAGES + 1):\n",
" read_data = read_instances(TOKEN, \"FORM-GP666M71TNE9GFK57V2O85NLM04I34CSG1TFLC\", a, 100,searchFieldJson) \n",
" for i in range(0,len(read_data[\"data\"])):\n",
" json_data.append(read_data[\"data\"][i]['formData'])\n",
" # ALL_read_data.append(read_data[\"data\"][i]['formData']) \n",
" # data_F6.loc[len(data_F6.index)] = read_data[\"data\"][i]['formData']\n",
"data_F6 = pd.DataFrame(json_data)\n"
]
},
{
"cell_type": "code",
"execution_count": 215,
"metadata": {},
"outputs": [],
"source": [
"data_F6 = pd.DataFrame(json_data)\n",
"data_F6.rename(columns={'textField_j9ljlkf': 'commission_type_1st', 'textField_b0zcpw7': 'commission_type_2nd', 'employeeField_lft1hn2e': 'to_grant_person_X', 'textField_lld2doy7': 'franchise_group_name', 'textField_gkzyime': 'saas_edition_fmt', 'numberField_7soucf9': 'order_trade_amount', 'numberField_vbubqg5': 'amount_real_base', 'dateField_dezcysa': 'pay_date_X', 'textField_9solcme': 'business_type', 'employeeField_lft1hn2f': 'area_manager_X'}, inplace=True)\n",
"data_F6[\"to_grant_person\"] = [split(x) for x in data_F6[\"to_grant_person_X\"]]\n",
"data_F6[\"area_manager\"] = [split(x) for x in data_F6[\"area_manager_X\"]]\n",
"data_F6[\"pay_date\"] = [strftime(x) for x in data_F6[\"pay_date_X\"]]"
]
},
{
"cell_type": "code",
"execution_count": 217,
"metadata": {},
"outputs": [],
"source": [
"data_F6 = data_F6.loc[data_F6[\"commission_type_1st\"] != \"续约\"]\n",
"data_F6 = data_F6.loc[~data_F6[\"commission_type_2nd\"].isin([\"介绍\",\"企业钱包\",\"培训\",\"数据处理\",\"企业钱包新签\"])]\n",
"data_F6 = data_F6.loc[~data_F6[\"to_grant_person\"].isin([\"孙玉蕾\",\"何钊\",\"金鹏\",\"周聪\",\"武宏超\",\"孙旭亮\",\"刘立\",\"刘光春\",\"时建飞\",\"魏子淇\",\"侯斌\",\"陈博\",\"邹存威\",\"金华斌\",\"吴间锐\",\"崔智杰\",\"黄宗祥\",\"杨挺\",\"霍创业\",\"周鹏飞\",\"邢恒岭\",\"王斌\",\"申晓勇\",\"殷昊\",\"李子晗\",\"肖军\"])]\n",
"data_F6 = data_F6.reset_index()\n",
"for i in range(0,len(data_F6)):\n",
" if data_F6.loc[i,'franchise_group_name']==\"修工坊全国运营中心\" or data_F6.loc[i,'franchise_group_name']==\"CC养车\" or data_F6.loc[i,'franchise_group_name']==\"金铁橡全国运营中心\":\n",
" if data_F6.loc[i,'saas_edition_fmt'] == \"基础版\":\n",
" data_F6.loc[i,'order_trade_amount'] = 500\n",
" if data_F6.loc[i,'saas_edition_fmt'] == \"尊享版\":\n",
" data_F6.loc[i,'order_trade_amount'] = 1500\n",
" if data_F6.loc[i,'commission_type_1st']==\"裂变红包\":\n",
" data_F6.loc[i,'order_trade_amount'] = data_F6.loc[i,'amount_real_base']\n",
"# 当月新签开户\n",
"df_1 = data_F6.copy()\n",
"df_1['pay_date'] = df_1['pay_date'].str.slice(0, 4) + df_1['pay_date'].str.slice(5, 7)\n",
"df_1['条件'] = (df_1['pay_date'] == str(yes_time_nyr)) & (df_1['business_type'] == '新签') & (df_1['franchise_group_name'].isnull())\n",
"df_1 = df_1.loc[df_1[\"条件\"] == True]\n",
"df_1 = df_1.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_1 = df_1.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '当月新签开户'})\n",
"# 之前新签本月开户\n",
"df_2 = data_F6.copy()\n",
"df_2['pay_date'] = df_2['pay_date'].str.slice(0, 4) + df_2['pay_date'].str.slice(5, 7)\n",
"df_2['条件'] = (df_2['pay_date'] != str(yes_time_nyr)) & (df_2['business_type'] == '新签') & (df_2['franchise_group_name'].isnull())\n",
"df_2 = df_2.loc[df_2[\"条件\"] == True]\n",
"df_2 = df_2.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_2 = df_2.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '之前新签本月开户'})\n",
"# 过期召回\n",
"df_3 = data_F6.copy()\n",
"df_3 = df_3.loc[df_3[\"business_type\"] == \"过期召回\"]\n",
"df_3 = df_3.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_3 = df_3.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '过期召回'})\n",
"# 首年升级\n",
"df_4 = data_F6.copy()\n",
"df_4 = df_4.loc[df_4[\"business_type\"] == \"首年升级\"]\n",
"df_4 = df_4.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_4 = df_4.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '首年升级'})\n",
"# 短信\n",
"df_5 = data_F6.copy()\n",
"df_5 = df_5.loc[df_5[\"commission_type_2nd\"] == \"短信\"]\n",
"df_5 = df_5.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_5 = df_5.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '短信'})\n",
"# 服务包\n",
"df_6 = data_F6.copy()\n",
"df_6 = df_6.loc[df_6[\"commission_type_2nd\"] == \"服务跟进\"]\n",
"df_6 = df_6.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_6 = df_6.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '服务包'})\n",
"# 轻连锁金额\n",
"df_7 = data_F6.copy()\n",
"df_7['pay_date'] = df_7['pay_date'].str.slice(0, 4) + df_7['pay_date'].str.slice(5, 7)\n",
"df_7['条件'] = (df_7['pay_date'] == str(yes_time_nyr)) & (df_7['business_type'] == '新签') & (df_7[\"franchise_group_name\"].isin([\"金铁橡全国运营中心\",\"CC养车\",\"修工坊全国运营中心\"]))\n",
"df_7 = df_7.loc[df_7[\"条件\"] == True]\n",
"df_7 = df_7.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_7 = df_7.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '轻连锁金额'})\n",
"# 新签业绩(含轻连锁)\n",
"df_8 = data_F6.copy()\n",
"df_8 = df_8.groupby('to_grant_person')['order_trade_amount'].sum().reset_index()\n",
"df_8 = df_8.rename(columns={'to_grant_person': '小六', 'order_trade_amount': '新签业绩(含轻连锁)'})\n",
"# 战区经理\n",
"df_9 = data_F6.copy()\n",
"df_9 = df_9.drop_duplicates(subset='to_grant_person')\n",
"df_9 = df_9.rename(columns={'to_grant_person': '小六', 'area_manager': '战区经理'})\n",
"df_9 = df_9.loc[:, ['小六', '战区经理']]\n",
"# 红包裂变\n",
"df_10 = data_F6.copy()\n",
"df_10 = df_10.loc[df_10[\"commission_type_1st\"] == \"裂变红包\"]\n",
"df_10 = df_10.groupby('to_grant_person')['amount_real_base'].sum().reset_index()\n",
"df_10 = df_10.rename(columns={'to_grant_person': '小六', 'amount_real_base': '裂变红包'})\n",
"# 合并内容信息\n",
"merged_df = pd.merge(df_9, df_1, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_2, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_3, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_4, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_5, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_6, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_7, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_8, on='小六', how='left')\n",
"merged_df = pd.merge(merged_df, df_10, on='小六', how='left')\n",
"\n",
"# 使用reindex函数调整列的位置\n",
"merged_df = merged_df.reindex(columns=['小六','当月新签开户', '之前新签本月开户', '过期召回', '首年升级', '短信', '服务包', '轻连锁金额','裂变红包', '新签业绩(含轻连锁)', '战区经理','rank'])\n",
"merged_df = merged_df.fillna(0)\n",
"for i_name in ['当月新签开户', '之前新签本月开户', '过期召回', '首年升级', '短信', '服务包', '轻连锁金额','裂变红包', '新签业绩(含轻连锁)','rank']:\n",
" merged_df[i_name] = merged_df[i_name].astype(int)\n",
"# 删除小六列值为0的行\n",
"merged_df = merged_df[merged_df['小六'] != 0]\n",
"# 根据 score 字段为每个值分配一个排名\n",
"merged_df['rank'] = merged_df['新签业绩(含轻连锁)'].rank(ascending=False)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 222"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"name_abc = 0"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'202308300'"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"str(yes_time_nyr) + str(name_abc)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"data_F6 = data_F6.astype(str)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"'''\n",
"连接数据库信息\n",
"对数据进行过滤\n",
"宜搭新建普通表单——字段一一对应\n",
"将读取数据写入宜搭表单\n",
"设置定时任务校验数据变动\n",
"'''\n",
"\n",
"# -*- 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()\n",
"\n",
"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 '%2023%' 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 = data_F6.astype(str)\n",
"data_F6.to_excel(f'C:\\Users\\admin\\Desktop\\小六提成明细{yes_time_nyr}.xlsx')\n",
"# 关闭数据库连接\n",
"cursor.close()\n",
"conn.close()\n",
"\n",
"print(len(data_F6))\n",
"\n",
"# 基础函数配置\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",
"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",
"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)\n",
" \n",
"# 读取员工对应关系:宜搭员工-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')//100 + 1\n",
"\n",
"ALL_DATA_staff = []\n",
"\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",
"\n",
"FORMID = \"FORM-GP666M71TNE9GFK57V2O85NLM04I34CSG1TFLC\" # 宜搭员工-ID对应表 FORM-EA866E715PF9YA7ECCAGSABX91Q72PVA3WRFL6\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",
" if data_F6[\"saas_create_time\"][i] ==\"\":\n",
" data_F6[\"saas_create_time\"][i] = '2000-01-01 00:00:00'\n",
" if data_F6[\"pay_date\"][i] ==\"\":\n",
" data_F6[\"pay_date\"][i] = '2000-01-01'\n",
" if data_F6[\"etl_time\"][i] ==\"\":\n",
" data_F6[\"etl_time\"][i] = '2000-01-01 00:00:00'\n",
" if data_F6[\"date_fmt_2\"][i] ==\"\":\n",
" data_F6[\"date_fmt_2\"][i] = '2000-01-01'\n",
" if data_F6[\"saas_create_time_2\"][i] ==\"\":\n",
" data_F6[\"saas_create_time_2\"][i] = '2000-01-01 00:00:00'\n",
" if data_F6[\"pay_date_2\"][i] ==\"\":\n",
" data_F6[\"pay_date_2\"][i] = '2000-01-01'\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",
" \"textField_lld2doy7\":data_F6[\"franchise_group_name\"][i],\n",
" \"numberField_esmnply\":data_F6[\"is_more_paid\"][i],\n",
" \"textField_llyskpc6\":str(i)\n",
" \n",
" }\n",
" if formData['textField_lld2doy7']==\"修工坊全国运营中心\" or formData['textField_lld2doy7']==\"CC养车\" or formData['textField_lld2doy7']==\"金铁橡全国运营中心\":\n",
" if formData['textField_gkzyime'] == \"基础版\":\n",
" formData['numberField_7soucf9'] = 500\n",
" if formData['textField_gkzyime'] == \"尊享版\":\n",
" formData['numberField_7soucf9'] = 1500\n",
" read_new(FORMID,formData)\n",
"\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 删除"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\_distributor_init.py:30: UserWarning: loaded more than 1 DLL from .libs:\n",
"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\.libs\\libopenblas.EL2C6PLE4ZYW3ECEVIV3OXXGRN2NRFM2.gfortran-win_amd64.dll\n",
"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\.libs\\libopenblas64__v0.3.21-gcc_10_3_0.dll\n",
" warnings.warn(\"loaded more than 1 DLL from .libs:\"\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"67781\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 67 条数据!\n",
"读取到表单中 33 条数据!\n",
"读取到表单中 70 条数据!\n",
"读取到表单中 30 条数据!\n",
"读取到表单中 74 条数据!\n",
"读取到表单中 26 条数据!\n",
"读取到表单中 80 条数据!\n",
"读取到表单中 20 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 58 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 82 条数据!\n",
"读取到表单中 18 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 78 条数据!\n",
"读取到表单中 22 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 86 条数据!\n",
"读取到表单中 14 条数据!\n",
"读取到表单中 86 条数据!\n",
"读取到表单中 14 条数据!\n",
"读取到表单中 86 条数据!\n",
"读取到表单中 14 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 86 条数据!\n",
"读取到表单中 14 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 86 条数据!\n",
"读取到表单中 14 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 82 条数据!\n",
"读取到表单中 18 条数据!\n",
"读取到表单中 82 条数据!\n",
"读取到表单中 18 条数据!\n",
"读取到表单中 81 条数据!\n",
"读取到表单中 19 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 53 条数据!\n",
"读取到表单中 47 条数据!\n",
"读取到表单中 53 条数据!\n",
"读取到表单中 47 条数据!\n",
"读取到表单中 55 条数据!\n",
"读取到表单中 45 条数据!\n",
"读取到表单中 56 条数据!\n",
"读取到表单中 46 条数据!\n",
"读取到表单中 54 条数据!\n",
"读取到表单中 46 条数据!\n",
"读取到表单中 54 条数据!\n",
"读取到表单中 46 条数据!\n",
"读取到表单中 54 条数据!\n",
"读取到表单中 46 条数据!\n",
"读取到表单中 54 条数据!\n",
"读取到表单中 47 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 64 条数据!\n",
"读取到表单中 36 条数据!\n",
"读取到表单中 67 条数据!\n",
"读取到表单中 33 条数据!\n",
"读取到表单中 66 条数据!\n",
"读取到表单中 34 条数据!\n",
"读取到表单中 68 条数据!\n",
"读取到表单中 32 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 80 条数据!\n",
"读取到表单中 22 条数据!\n",
"读取到表单中 78 条数据!\n",
"读取到表单中 22 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 44 条数据!\n",
"读取到表单中 56 条数据!\n",
"读取到表单中 44 条数据!\n",
"读取到表单中 62 条数据!\n",
"读取到表单中 38 条数据!\n",
"读取到表单中 62 条数据!\n",
"读取到表单中 38 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 72 条数据!\n",
"读取到表单中 28 条数据!\n",
"读取到表单中 76 条数据!\n",
"读取到表单中 24 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 74 条数据!\n",
"读取到表单中 26 条数据!\n",
"读取到表单中 76 条数据!\n",
"读取到表单中 24 条数据!\n",
"读取到表单中 76 条数据!\n",
"读取到表单中 24 条数据!\n",
"读取到表单中 80 条数据!\n",
"读取到表单中 20 条数据!\n",
"读取到表单中 80 条数据!\n",
"读取到表单中 20 条数据!\n",
"读取到表单中 81 条数据!\n",
"读取到表单中 19 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 82 条数据!\n",
"读取到表单中 18 条数据!\n",
"读取到表单中 82 条数据!\n",
"读取到表单中 18 条数据!\n",
"读取到表单中 83 条数据!\n",
"读取到表单中 17 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 80 条数据!\n",
"读取到表单中 20 条数据!\n",
"读取到表单中 81 条数据!\n",
"读取到表单中 19 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 86 条数据!\n",
"读取到表单中 14 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 51 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 51 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"单条删除 FINST-G2766NA16TECXKVV65NSW9JO11EN2C6ET83KL8ZY 数据!\n",
"单条删除 FINST-ZH866O91UTECQKSN8X3P1CWSRHPF2DPET83KLSHM 数据!\n",
"单条删除 FINST-DK866Z91LLFC7FFFBEDTU81ZMM8E2LFET83KL4TF 数据!\n",
"单条删除 FINST-KJ866W810MFCLXCWD9DT17L6LW1W3CLDT83KLBGF 数据!\n",
"单条删除 FINST-6R766TC13KHCJIQ97Z91X9T7W9XY2GVDT83KLC0B 数据!\n",
"单条删除 FINST-09C66L81BKFC19YN7BL12BOXHZ7835SCT83KLSTE 数据!\n",
"单条删除 FINST-3Z966P91LRECPF6688TPV6IN1LWL22BDT83KLSBB 数据!\n",
"单条删除 FINST-WC866ZA1MMGC6VK5DZREJCTT0R8F3K1DT83KLPD5 数据!\n",
"单条删除 FINST-GK766MA1GDFCA4RBBRF4G7RXPJ2J2E8CT83KLXBX 数据!\n",
"单条删除 FINST-PF866EA17GGC31P37AZV17FIWK2B3RICT83KLNHH 数据!\n",
"单条删除 FINST-IH766NA1RJGCTAY5AL5OL6ABZZKE2UXBT83KL34C 数据!\n",
"单条删除 FINST-M7766RD1YOHCWGWUCYW3F7EA009U3N9BT83KL0S2 数据!\n",
"单条删除 FINST-RX966SB1GEGCUPU57FDFCA4GCTHT25LBT83KLYVF 数据!\n",
"单条删除 FINST-GZA66CC17MFCUEA1FK6A44J9RDYA2LPAT83KLN79 数据!\n",
"单条删除 FINST-6R766TC10PHCRFZMBBC97BU6OHQ32BZAT83KLJ19 数据!\n",
"单条删除 FINST-XDA66MD1HLFCUXDVAKY437YA4J943BV9T83KLQ3H 数据!\n",
"单条删除 FINST-J0A66981GMGC38DQ7WDTV80C1FV93AI9T83KL6SB 数据!\n",
"单条删除 FINST-09C66L815OFCY16K7QA9E89DF8D92A89T83KLT6B 数据!\n",
"单条删除 FINST-7N5664D1VNGCVFLMFJPIB4DZJ28W3I28T83KL2QD 数据!\n",
"单条删除 FINST-ETA666817GHCJGPTC6LSD6CFZWJW3GN8T83KL4Q3 数据!\n",
"单条删除 FINST-SD866HA16QHCRE1AAZE7W6O48P6S3RD8T83KL6Q8 数据!\n",
"单条删除 FINST-Z4766CA15MFC9O2V847GLAPD39S83BR7T83KLT1J 数据!\n",
"单条删除 FINST-OV8660B1UBFC32NVAEROR5BNPZGG2XH7T83KLQZC 数据!\n",
"单条删除 FINST-GRA667C1TNGCUL0RC3IRP4XR1H563Y77T83KLYXE 数据!\n",
"单条删除 FINST-96766PB10LHCOGJ0ELA0MA6FA2O73VL6T83KL72A 数据!\n",
"单条删除 FINST-6R766TC13KHCACUEEQ8EQ5NPRM5N2EY6T83KLR86 数据!\n",
"单条删除 FINST-GK766MA1VBFCS3M5AWJFR6WX83033YB6T83KL70F 数据!\n",
"单条删除 FINST-NN5669C13TECQY6V8LFDI6J7WKE52RR5T83KLUIH 数据!\n",
"单条删除 FINST-7N5664D1GDFCUWYV5XREFDDLC16N2516T83KLQJL 数据!\n",
"单条删除 FINST-V0A66T81SJFC99XRD0RI098JQIGJ2J45T83KLU7M 数据!\n",
"单条删除 FINST-8R766CD1BCHCLUPLC2AVLCYKTMX13ME5T83KL9AD 数据!\n",
"单条删除 FINST-UH9665D1MMFC01ZA9PWNMAKHV2PT3WV4T83KL6U5 数据!\n",
"单条删除 FINST-EO6667A1JBFCHAQZCEYQQAG00FT13YL4T83KL9X9 数据!\n",
"单条删除 FINST-G2766NA1EAFCJTP88V742A03L8CC3P94T83KLYHK 数据!\n",
"单条删除 FINST-1A8662713BFC3MMFEXBMQDJ472RO25N3T83KLXSD 数据!\n",
"单条删除 FINST-DJ9665813DGCD64ED34IX4KAKDZ831Y3T83KLD38 数据!\n",
"单条删除 FINST-H0B66W61HGGC1GQI88JI3512GDRW2Y23T83KL2EC 数据!\n",
"单条删除 FINST-6R766TC1VMHCMK2WCCK0G5EOO3ZY2CR2T83KLQ53 数据!\n",
"单条删除 FINST-EP866OD1YDHCFD1ED6KM76V10K9W3WG2T83KLAAC 数据!\n",
"单条删除 FINST-7N5664D17PFCZ6BJ8T4ZR7QJW2XV3Z32T83KLNLC 数据!\n",
"单条删除 FINST-EP866OD1YDHCFD1ED6KM76V10K9W3BU1T83KL3AC 数据!\n",
"单条删除 FINST-5X866U81QEFCSNZ5ECN285YJGWSR3S01T83KLU6I 数据!\n",
"单条删除 FINST-NN5669C1UCFCQEFNC28DN7UUJICG3EK1T83KL5GD 数据!\n",
"单条删除 FINST-5X866U81QEFCSNZ5ECN285YJGWSR3EA1T83KLX6I 数据!\n",
"单条删除 FINST-1YA66C81NCHCCVFSCGZQQ7VTB8PX34R0T83KLX28 数据!\n",
"单条删除 FINST-V0A66T81CLGCW1UNE1NTJDLRYGQX3IH0T83KL1JC 数据!\n",
"单条删除 FINST-3Z966P91MGHCTBEQDFKDAB13PIOU2F40T83KL018 数据!\n",
"单条删除 FINST-BL866S61EEGC2VDT7J0U35G3AXUI3WMZS83KL3PG 数据!\n",
"单条删除 FINST-GRA667C19HFCBCVP6ZE9GADE39AV2RVZS83KLUBH 数据!\n",
"单条删除 FINST-KJ866W816CFC524H6HSLR8SC5O4E2GUYS83KLH1E 数据!\n",
"单条删除 FINST-NGA66WA1KRECHB8O8169Z3OW84U03BDZS83KLO2J 数据!\n",
"单条删除 FINST-OV8660B1NPFCQXDLBKS8S6YCFKC83U3ZS83KLSRK 数据!\n",
"单条删除 FINST-DK866Z91QLFCGCNV63AQKBHJNWZ82AAYS83KLOJB 数据!\n",
"单条删除 FINST-SN966971XNGCX3Y49J5BIALJYV6P2SKYS83KL2D8 数据!\n",
"单条删除 FINST-GRA667C1TNGCUL0RC3IRP4XR1H563U0YS83KLUXE 数据!\n",
"单条删除 FINST-5X866U81YEGCMXFBBE5JA6OCHQKU2WQXS83KL44G 数据!\n",
"单条删除 FINST-V0A66T81DLGC8WCHDV2VM6G9X9KM396XS83KL55A 数据!\n",
"单条删除 FINST-WB7662B1PMHCRGL4A9IVJ8F1AOPQ3SGXS83KL5B8 数据!\n",
"单条删除 FINST-8R766CD10MFCTAYLB9M1LCE6AAIZ2EJWS83KLWY9 数据!\n",
"单条删除 FINST-URA66BA14MGCCIQF9HG9X81U6HT63QUWS83KLJU9 数据!\n",
"单条删除 FINST-DK866Z91KLFCVIYSE4YMY801DV782NYVS83KLI7C 数据!\n",
"单条删除 FINST-URA66BA14MGCCIQF9HG9X81U6HT639PVS83KLGU9 数据!\n",
"单条删除 FINST-IH766NA1RJGCTAY5AL5OL6ABZZKE2M8WS83KLY3C 数据!\n",
"单条删除 FINST-96766PB16CHC0OS1A2W5PD955TTD3HEVS83KLV54 数据!\n",
"单条删除 FINST-Z6966NB15TEC4BX0C6VHU8X4HTCV3KVUS83KL6XK 数据!\n",
"单条删除 FINST-Z6966NB15TEC4BX0C6VHU8X4HTCV3D5VS83KL9XK 数据!\n",
"单条删除 FINST-KRB66P917GHC1HWACX2GY9JACQFY2MLUS83KL0W9 数据!\n",
"单条删除 FINST-YE966DA1QLFCWOEC6LNKF8FK7CEN2JBUS83KLCWD 数据!\n",
"单条删除 FINST-PF866EA11GGCQXZAACMDPBZL2RFV2EETS83KL2EC 数据!\n",
"单条删除 FINST-J0A66981ZNGCMKB06E0I74XOQHJ63YZTS83KL8Y1 数据!\n",
"单条删除 FINST-SN966971JPGCZFSYAVG6X7YPLDEE2AOTS83KLIUB 数据!\n",
"单条删除 FINST-ETA666818MHCE5YXD3QIV76SHE9O2PRSS83KLIM7 数据!\n",
"单条删除 FINST-SE766NA17LFCRDSIEFBJM69ZAQLR2D1TS83KL8P9 数据!\n",
"单条删除 FINST-SN966971GOHC8NZFEATJ78NFS32X38HSS83KLTF 数据!\n",
"单条删除 FINST-H0B66W61XLGCM8G39UKRF9SJXB1S3C8SS83KLD4M 数据!\n",
"单条删除 FINST-BTA66F71ISHCGJTWBMT1P7B0QVG22DZRS83KLVB9 数据!\n",
"单条删除 FINST-09C66L81VUEC20789E9QC6YDESI023QRS83KL3LR 数据!\n",
"单条删除 FINST-WC866ZA1BGGCLFHGARKEI7HH16UF3Z4RS83KLGA8 数据!\n",
"单条删除 FINST-SD866HA16QHCRE1AAZE7W6O48P6S3BFRS83KL0Q8 数据!\n",
"单条删除 FINST-BTA66F713OHCMXDA9MOA99HL819F3AUQS83KL1X5 数据!\n",
"单条删除 FINST-NN5669C1YFFCA0UA9PJS54TYZACR2UJQS83KLQ79 数据!\n",
"单条删除 FINST-BL866S61ONGCKKXQ8G7CF9EHH8CX3MAQS83KL8X9 数据!\n",
"单条删除 FINST-GK766MA1VUEC1NS9AFQC9C0C71Y02V0QS83KL74G 数据!\n",
"单条删除 FINST-URA66BA11OGCJJ8YASLPK9MNGMNB3SRPS83KL4WE 数据!\n",
"单条删除 FINST-KJ866W810MFCBWHH7EKD17D77FMJ3QIPS83KL6XE 数据!\n",
"单条删除 FINST-GRA667C19HFCBCVP6ZE9GADE39AV220PS83KLRBH 数据!\n",
"单条删除 FINST-SD866HA1UNHCLGZ1AAHJY6OZOVFR3OQOS83KLSY4 数据!\n",
"单条删除 FINST-GZA66CC1JCGCM2LVE0Q036KU6SBV249PS83KL6RH 数据!\n",
"单条删除 FINST-09C66L81NEFCDJHNB4I6A54R71ZD3R6OS83KLYXN 数据!\n",
"单条删除 FINST-ETA666818MHCE5YXD3QIV76SHE9O2GGOS83KLEM7 数据!\n",
"单条删除 FINST-LCC66CA1DPHCRX457JD9U757IFEV29XNS83KLX49 数据!\n",
"单条删除 FINST-GRA667C1ALFCACPJ660Z8ATJJED726FNS83KLRWT 数据!\n",
"单条删除 FINST-SD866HA1CSGC2LGJ94K6MCEY0ZH231ONS83KLP4D 数据!\n",
"单条删除 FINST-BTA66F71MBHCNXWDDU1525U9ZDM02W2NS83KL5NA 数据!\n",
"单条删除 FINST-DJ966581CMFCLND0F54PTCBY2BND3BRMS83KLUXG 数据!\n",
"单条删除 FINST-NN5669C1VBFCX5NMD58L75QSHND5381HET1KLQ5E 数据!\n",
"单条删除 FINST-Z6966NB1WKFCGJG96ODC9DHM9UD33PRGET1KLSZB 数据!\n",
"单条删除 FINST-UZA66W91EUECK9FJF9BX66SKVUQI3N8GET1KLOVJ 数据!\n",
"33840\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 36 条数据!\n",
"读取到表单中 66 条数据!\n",
"读取到表单中 34 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 83 条数据!\n",
"读取到表单中 17 条数据!\n",
"读取到表单中 83 条数据!\n",
"读取到表单中 17 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 72 条数据!\n",
"读取到表单中 32 条数据!\n",
"读取到表单中 70 条数据!\n",
"读取到表单中 30 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 79 条数据!\n",
"读取到表单中 21 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 91 条数据!\n",
"单条删除 FINST-WD766Z61BIJASR1L95V3T6E90S1O2NQ5FNCHLEG4 数据!\n",
"单条删除 FINST-KRB66P91OEJAM2SOELPUH5XZZPRW34W4FNCHLCR5 数据!\n",
"单条删除 FINST-GK766MA1V1DAD7DS6COII8OM8ZCE2FI4FNCHLFO51 数据!\n",
"单条删除 FINST-1A866271N7JAPE5P9W5IU4QNWRZH24O3FNCHLT19 数据!\n",
"单条删除 FINST-KRB66P91J8JAT34PA9VR47I1GP9I2FY3FNCHLH67 数据!\n",
"单条删除 FINST-WQA66NA1TIIA3NO96NZ0H6IW29SA3684FNCHLFK8 数据!\n",
"单条删除 FINST-ETA666818IJA9ZV4BFDRO88EOQIO2NE3FNCHLHL3 数据!\n",
"单条删除 FINST-DK866Z91BGJAFWJCFX36ED4UYE5V3Y03FNCHL0U8 数据!\n",
"单条删除 FINST-XDA66MD1TCJADCVYBOML3DTZ2O3H3WD2FNCHL479 数据!\n",
"16893\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 57 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 66 条数据!\n",
"读取到表单中 34 条数据!\n",
"读取到表单中 66 条数据!\n",
"读取到表单中 34 条数据!\n",
"读取到表单中 71 条数据!\n",
"读取到表单中 29 条数据!\n",
"读取到表单中 71 条数据!\n",
"读取到表单中 29 条数据!\n",
"读取到表单中 71 条数据!\n",
"读取到表单中 29 条数据!\n",
"读取到表单中 71 条数据!\n",
"读取到表单中 30 条数据!\n",
"读取到表单中 70 条数据!\n",
"读取到表单中 30 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 74 条数据!\n",
"读取到表单中 26 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 80 条数据!\n",
"读取到表单中 20 条数据!\n",
"读取到表单中 83 条数据!\n",
"读取到表单中 17 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 87 条数据!\n",
"读取到表单中 13 条数据!\n",
"读取到表单中 90 条数据!\n",
"读取到表单中 10 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"单条删除 FINST-PF866EA1MRI9N31J8K5877VC14NZ1EVHG70GLX7B 数据!\n",
"单条删除 FINST-OV8660B1ZML9T0346MU7Z67BB5SP38KGG70GL4B 数据!\n",
"单条删除 FINST-1A8662713LH94FY7B16PWAJQH30C3X3GG70GLXJ1 数据!\n",
"单条删除 FINST-J0A669814UI9D09HFRTEVD4BLVGX39TFG70GLCSE 数据!\n",
"单条删除 FINST-6R766TC16LK9LZPCEPQK59XYV0V529DFG70GLHW7 数据!\n",
"单条删除 FINST-GK766MA1KLI9J9BHEWY6X7U6WZJ12B2FG70GLRS4 数据!\n",
"单条删除 FINST-6Q666BA1LLI9MF0P9D0AFBZETAOU28EEG70GLUD3 数据!\n",
"单条删除 FINST-J0A669819UI9LDT7BM009ALEVDNS2R3EG70GLCV2 数据!\n",
"单条删除 FINST-J0A669814UI9D09HFRTEVD4BLVGX35PEG70GL8SE 数据!\n",
"单条删除 FINST-HN566LC1YML9XK1GD4Q7VATFYCB628IDG70GLY1 数据!\n",
"单条删除 FINST-3Z966P910NL9I4S1EHHLN8PDW8M827TDG70GLZH 数据!\n",
"单条删除 FINST-LV966L81PMH94KAS8UVZZATTYVRM2J8DG70GL6LA 数据!\n",
"单条删除 FINST-ETA66681SJJ90TB5CLUT3CP5B9RL3TXCG70GL751 数据!\n",
"单条删除 FINST-Z4766CA17SJ9U0RTBJT6R466XIKA3XNCG70GL4YG 数据!\n",
"单条删除 FINST-UIA663C14KI9XLH08TJ9KCX8MQZP3VTBG70GL7I2 数据!\n",
"单条删除 FINST-LV966L81YVK92YRQF67GN8IY00742H3CG70GL158 数据!\n",
"单条删除 FINST-URA66BA1VNL90N7V787907W7X1AI3KDCG70GL3 数据!\n",
"单条删除 FINST-BL866S61JYH95YFZ8Q21LDA9MU8U2VIBG70GLEO9 数据!\n",
"单条删除 FINST-SD866HA1EKH98JSF7C6K967CQ15739ABG70GLS2B 数据!\n",
"单条删除 FINST-Q26666818OK9IG2V92FLD6JTG3WU21ZAG70GLTU3 数据!\n",
"单条删除 FINST-M7766RD1PMI987SXACS5C4SY0GLV2CFAG70GLWBF 数据!\n",
"单条删除 FINST-NGA66WA16RI9LQ2GDHLWB9U3JN1E32PAG70GL7ZB 数据!\n",
"单条删除 FINST-0U7661C1VNI9RLIRDMFRE81N426L36W9G70GLW75 数据!\n",
"单条删除 FINST-9CC66N71DUI9JWX574GIWD86X7SC2CM9G70GLXM2 数据!\n",
"单条删除 FINST-8OC66GB14ML9WPAVB3V1A7ULXIK73O5AG70GLFP 数据!\n",
"单条删除 FINST-TJ866PB15JI93WRE6AI4L9L28G3Z2RS8G70GLSZ2 数据!\n",
"单条删除 FINST-UIA663C12NL9C1UQ6ZJGWCYJY2RN2R19G70GLWK 数据!\n",
"单条删除 FINST-PF866EA1CLL9N0JG6KG60498G2CT2QC9G70GL2Z 数据!\n",
"单条删除 FINST-DJ966581PLI9RNFP7LVPX5YHFK5Z12J8G70GL80M 数据!\n",
"单条删除 FINST-3Z966P91WML9IU1U8IV2D6MJMN7T3AY7G70GLTL 数据!\n",
"单条删除 FINST-DJ9665815ZI9BVRW8AMJVADPAZVF3V88G70GLVP 数据!\n",
"单条删除 FINST-GK766MA15UI92BR1E3TC0BU5IV6S2LO7G70GL3SC 数据!\n",
"单条删除 FINST-SD866HA121J9WZ8GF8TUD9VLAJ7W2ZE7G70GL5B7 数据!\n",
"单条删除 FINST-V0A66T811ML9JRIS9MF8A5HX06X43547G70GLGW 数据!\n",
"单条删除 FINST-ETA66681KUI9GVCHBPUT957GLSHN3MU6G70GL85M 数据!\n",
"单条删除 FINST-SD866HA12NL98X0M9YW8IAKFWYMX3AJ6G70GLN5 数据!\n",
"单条删除 FINST-NGA66WA11KI9DD03DRQ8M7FMBSG222N5G70GLD75 数据!\n",
"单条删除 FINST-ETA66681KUI9KLDHB6RMG760KICI3B86G70GL452 数据!\n",
"单条删除 FINST-2P766FA1BIH9WSKNF15O4A0M9BKX37X5G70GL6JA 数据!\n",
"单条删除 FINST-KJ866W816LK9YM3JBLSEX6FMOKB623D5G70GL65 数据!\n",
"单条删除 FINST-DJ966581OLI9Q4FEARSCE56UIAXF2D35G70GLDA4 数据!\n",
"单条删除 FINST-URA66BA11WI9CO0H8ECE24Z9D4SH32R4G70GLELI 数据!\n",
"单条删除 FINST-TJ866PB1LVI9SJ3293RKE65RSSDS3764G70GLWF 数据!\n",
"单条删除 FINST-LD866LB1YML9VJUJCO2FNDYOROLH2GH4G70GLA4 数据!\n",
"单条删除 FINST-8R766CD1DKK9X8VVCEAEI7QSK7SE2CK3G70GL0U 数据!\n",
"单条删除 FINST-7N5664D15UI9SJGPE1LJZB6ENN043UU3G70GLZO2 数据!\n",
"单条删除 FINST-96766PB1PMK9UNW2A9Z6UBLK1JGN2C93G70GLG6 数据!\n",
"单条删除 FINST-UZA66W91ORI94IEIC8O0Z3YEZ20D38P2G70GL4H 数据!\n",
"单条删除 FINST-Z4766CA14LL95MGLCW1KR9O1000426Z2G70GL0D1 数据!\n",
"单条删除 FINST-9CC66N718UI9I67DBURSNA74JYU921W1G70GLUX1 数据!\n",
"单条删除 FINST-ETA666810ML9WVT688R9F4WEKNLM3EF2G70GLD61 数据!\n",
"单条删除 FINST-XDA66MD1EKI9GPLEFCX7A7LCLTYK2F01G70GLOPB 数据!\n",
"单条删除 FINST-YE966DA17VI9FWGLEONDCBML01YE3EM1G70GLQ82 数据!\n",
"单条删除 FINST-SE766NA1QLL97W9O9SAURC01LGUL3SB1G70GLH41 数据!\n",
"单条删除 FINST-2P766FA12LL93I76BTQRGC76I3J92TP0G70GLZO1 数据!\n",
"单条删除 FINST-JMA66U61JLI9PNIYDAKXRAN56E103CF0G70GLS57 数据!\n",
"单条删除 FINST-7N5664D15XI9T4AM9HN3V4LZRPWA23RZF70GL4N 数据!\n",
"单条删除 FINST-BTA66F71WKL995TY9ZOFM4L22WCK2220G70GL5W1 数据!\n",
"单条删除 FINST-M7766RD1PMI987SXACS5C4SY0GLV29GZF70GLSBF 数据!\n",
"单条删除 FINST-JMA66U61YML9I1Q5E8DY749BKJD53LVYF70GLVA 数据!\n",
"单条删除 FINST-LEA66TA1HLI9DT4M7LXUO98C9D3C376ZF70GLRKJ 数据!\n",
"单条删除 FINST-I8666DB1ELI9XGMSERPXY32TSD2X3U9YF70GLIEO 数据!\n",
"单条删除 FINST-Z4766CA1UML9C5CXCYUSHBQHDIPZ2PZXF70GL5M 数据!\n",
"单条删除 FINST-LEA66TA1HLI9DT4M7LXUO98C9D3C3JLYF70GLOKJ 数据!\n",
"单条删除 FINST-6R766TC16LK9LJXCEET0PCJCL4X93NMXF70GL35B 数据!\n",
"单条删除 FINST-KJ866W81YJK9UYXM8Q11785U0AC02TBXF70GLMT1 数据!\n",
"单条删除 FINST-1A866271RII9LDE0CWA2TDL3T9LF2M0XF70GLQM5 数据!\n",
"单条删除 FINST-8D7668A19NI94UF06J379AHK91EY2VFWF70GLT99 数据!\n",
"单条删除 FINST-8R766CD11LL94I8Z9H2PK9N2LF7R3MPWF70GLUR 数据!\n",
"单条删除 FINST-BL866S61GLL9HZR77NAOHCF0TAPP2F5WF70GLSV 数据!\n",
"单条删除 FINST-URA66BA1HLL9413HBFFB4A7LZR2L2HKVF70GL291 数据!\n",
"单条删除 FINST-H0B66W617UI9XQTKBIK7QDYZBV103ZUVF70GLW6F 数据!\n",
"单条删除 FINST-KRB66P91HKH90E356XRMC7Q9SADL371VF70GL9DH 数据!\n",
"单条删除 FINST-DJ9665815ZI9BVRW8AMJVADPAZVF3SAVF70GLNP 数据!\n",
"单条删除 FINST-KJ866W81QNK9EFKXCAG2SC5VEJAS3SPUF70GLSB 数据!\n",
"单条删除 FINST-J0A66981JLL97WX19SXBKCGP692J3C4UF70GLL71 数据!\n",
"单条删除 FINST-8D7668A1ZKL9ZP5999STU69WRXVG3YEUF70GLWB 数据!\n",
"单条删除 FINST-BTA66F71PMK9IQGKAZI2TB9PARBJ2EUTF70GLYL1 数据!\n",
"单条删除 FINST-I8666DB19UI910DLERNX34YC1HCX2PBTF70GLHQF 数据!\n",
"单条删除 FINST-8D7668A11MI9HSPEF7HLA651TXWK2SKTF70GL2YK 数据!\n",
"单条删除 FINST-WD766Z61BKI9IMQM9KBAVBBO6SKQ331TF70GLX9L 数据!\n",
"单条删除 FINST-HN566LC10KJ940WI6SY4R5SBRZR12MPSF70GLL27 数据!\n",
"单条删除 FINST-6Q666BA1GMI9NVNH6HDST91278PF2FTRF70GLWKH 数据!\n",
"单条删除 FINST-J0A66981ELL9KX3MDXRFG45TYNLW2TDSF70GLT71 数据!\n",
"单条删除 FINST-BL866S61GLL9HZR77NAOHCF0TAPP2U2SF70GLMV 数据!\n",
"单条删除 FINST-GK766MA1HMK9XIYYEMCIB78SJQ4G2MZQF70GLHD1 数据!\n",
"单条删除 FINST-KRB66P91HKH90E356XRMC7Q9SADL3WJRF70GL6DH 数据!\n",
"单条删除 FINST-LV966L81PMH94KAS8UVZZATTYVRM2G9RF70GLYKA 数据!\n",
"单条删除 FINST-WC866ZA12NL9DYTZ6DJPE5YOTVF63TDQF70GLXG 数据!\n",
"单条删除 FINST-M7766RD1PMI94OMB6GH1L9Y4040L23PQF70GL9H 数据!\n",
"单条删除 FINST-WB7662B1ELI9VH7IBPAI9928WVF72I3QF70GLI3A 数据!\n",
"单条删除 FINST-HN566LC1TMI9E7P3CHGX7BWRUGMP2ZSPF70GL1KG 数据!\n",
"单条删除 FINST-UIA663C19NI9KOEIFHUG19S2XRDN21BPF70GL5H9 数据!\n",
"单条删除 FINST-OV8660B1IRI9RXTH8QYQM8CR4GS72WPOF70GL3G8 数据!\n",
"单条删除 FINST-2P766FA12LL93I76BTQRGC76I3J9240PF70GLRO1 数据!\n",
"8422\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 85 条数据!\n",
"读取到表单中 15 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 91 条数据!\n",
"读取到表单中 9 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 92 条数据!\n",
"读取到表单中 8 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 94 条数据!\n",
"读取到表单中 6 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 95 条数据!\n",
"读取到表单中 5 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 98 条数据!\n",
"读取到表单中 2 条数据!\n",
"读取到表单中 97 条数据!\n",
"读取到表单中 3 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"读取到表单中 89 条数据!\n",
"读取到表单中 11 条数据!\n",
"读取到表单中 93 条数据!\n",
"读取到表单中 7 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"单条删除 FINST-7N5664D18MG9ZDZO73F376ARVGU93Z8088TFLL5 数据!\n",
"单条删除 FINST-I8666DB1SMG9HQ45DLIQLDN35QTU3YH088TFLS1 数据!\n",
"单条删除 FINST-LV966L811OG9HTZFCWC9E9PGKF66300088TFLAK 数据!\n",
"单条删除 FINST-NGA66WA1OQE9GXSOEHS3F4BYICTH22JZ78TFLW14 数据!\n",
"单条删除 FINST-6R766TC1PIG998P9C8HFZ7Q783UR35RZ78TFLAG2 数据!\n",
"单条删除 FINST-OV8660B17JF9U7Z9BAUV082CSSU13WZY78TFLAK8 数据!\n",
"单条删除 FINST-8OC66GB1XHG900LLEOT75BL3YUVL3ZQY78TFLO21 数据!\n",
"单条删除 FINST-XDA66MD1THG97Z139BV077V6ZPYJ3Q9Z78TFL6L 数据!\n",
"单条删除 FINST-WQA66NA14OG9O6ASEX8MB5X4ECJ4339Y78TFL9M 数据!\n",
"单条删除 FINST-ETA66681MNG9FTVI7P7EGC5TN07P2F0Y78TFL0H 数据!\n",
"单条删除 FINST-DJ966581LMG93QZKA0N5M8X4C7XR38IY78TFL761 数据!\n",
"单条删除 FINST-LEA66TA1ZIF96EOJBZRUFAO5GDGJ36SX78TFLFK1 数据!\n",
"单条删除 FINST-8R766CD1WOG9BX7BENWOI4ASZCH63S9X78TFLV3 数据!\n",
"单条删除 FINST-JMA66U617UF9QYPV8C90QDAM12VH2SIX78TFL6M 数据!\n",
"单条删除 FINST-LV966L819MG9HTT281UM58DZUOKQ301X78TFLRB 数据!\n",
"单条删除 FINST-6Q666BA1VWE96BRL7JSD25YWWUJC24BW78TFLNZ2 数据!\n",
"单条删除 FINST-3Z966P91GIG9LZ5LF9G6TAYTA2DR3CSW78TFLB23 数据!\n",
"单条删除 FINST-RX966SB1THG9P4IFEV9F64NFZGR32HJW78TFLEB3 数据!\n",
"单条删除 FINST-3Z966P91XXF9ODOCD0LJFDE688RG313W78TFLLT8 数据!\n",
"单条删除 FINST-6Q666BA1R3E9DNXV57LXB811IO4M28MV78TFLGH8 数据!\n",
"单条删除 FINST-Z6966NB1LPE9EV7LDB0HTCJ6WZ9M2RUV78TFLD05 数据!\n",
"单条删除 FINST-2P766FA1RLG9E87W5FYZ8BPQMRI4253V78TFL881 数据!\n",
"单条删除 FINST-SE766NA1KSF9O0UHE12G944994BW2ZDV78TFLRY9 数据!\n",
"单条删除 FINST-UIA663C15HF9JE5275W5A5CESJCU3RUU78TFLG22 数据!\n",
"单条删除 FINST-DJA66CC1QIG9M5138WZANBQ6CYS23Z3U78TFL6J2 数据!\n",
"单条删除 FINST-8OC66GB1XHG900LLEOT75BL3YUVL31MU78TFLM21 数据!\n",
"单条删除 FINST-WD766Z61TMG90UCBFPID56YWVIJ72JDU78TFL4T 数据!\n",
"单条删除 FINST-DK866Z912IG94I5LCDRYX9UCQTCI3ALT78TFLET1 数据!\n",
"单条删除 FINST-HN566LC1BJG9HR7XBNX778DMU79W34BT78TFL5Y1 数据!\n",
"单条删除 FINST-LEA66TA18LG91RLL9M5N567Z24P021VT78TFLDT 数据!\n",
"单条删除 FINST-YE966DA1WHG9BXD8D29NW78CU35S3XHS78TFLDS1 数据!\n",
"单条删除 FINST-XDA66MD1XKG90JDB70HT5AXVWAEN3Z0T78TFLJT1 数据!\n",
"单条删除 FINST-5X866U81SMG9DTW1BHZLI4ZRWGAH3ERS78TFLH31 数据!\n",
"单条删除 FINST-DJ966581QIG9CMMTBS339665RX002NOR78TFLLD3 数据!\n",
"单条删除 FINST-H0B66W61PKG9P2ZO8F4935YNTR9A2SYR78TFLZV 数据!\n",
"单条删除 FINST-3Z966P91XXF9ODOCD0LJFDE688RG3D8S78TFLIT8 数据!\n",
"单条删除 FINST-DJA66CC1PMG9X6Z9DV6FY8XO8NEX2LDR78TFL9U 数据!\n",
"单条删除 FINST-XDA66MD1JIG9L55U8I7RB848Q54O253R78TFL581 数据!\n",
"单条删除 FINST-LV966L818MG9DM3OEYQJOB70HWV338BQ78TFLEF1 数据!\n",
"单条删除 FINST-NGA66WA1VHG9OGRV7NZ9RBKBR29D26UQ78TFLN72 数据!\n",
"单条删除 FINST-URA66BA1NIG9BOTOBUZ399TJ4TT92PJQ78TFLBD 数据!\n",
"单条删除 FINST-8D7668A10JG902YZ59S0L5SY1LWQ2KIP78TFLQR1 数据!\n",
"单条删除 FINST-5X866U81KMG9X17ZAA8O3AWVKOPC2K0Q78TFLT01 数据!\n",
"单条删除 FINST-BTA66F71PJG96AN9E2N3K5GWK60I26RP78TFLJG1 数据!\n",
"单条删除 FINST-URA66BA1AKG9Q511CXCKQ9337R2O2OPO78TFL761 数据!\n",
"单条删除 FINST-6R766TC1VIG9WYN4AVCK0CL5ZCTE2A9P78TFL8Y2 数据!\n",
"单条删除 FINST-8OC66GB1MKG9I75Y8YT7448RBZ0N34ZO78TFLVF1 数据!\n",
"单条删除 FINST-8R766CD1WOG90MZZB5B5XC64EOXS2Q4O78TFL31 数据!\n",
"单条删除 FINST-BTA66F71PJG96AN9E2N3K5GWK60I2LFO78TFLHG1 数据!\n",
"单条删除 FINST-6Q666BA1SJE9VPPQD32LM9WNP6AJ31WN78TFLMIC 数据!\n",
"单条删除 FINST-7N5664D18MG9ZDZO73F376ARVGU9345N78TFLW4 数据!\n",
"单条删除 FINST-6Q666BA1LIG94ZA5EJLCG7HWOYFB2UNN78TFLFS2 数据!\n",
"单条删除 FINST-I8666DB1PWE9R545CRYJV86YPQ6735EN78TFL728 数据!\n",
"单条删除 FINST-WC866ZA1LKG9VCAICHLFU8WD3BVZ2HTM78TFLI9 数据!\n",
"单条删除 FINST-WD766Z61RMG9SFVUCTKXT7K048GR32KM78TFL9O 数据!\n",
"单条删除 FINST-KRB66P917RF9XP4XE7EP590S5F4C2UBM78TFLVGA 数据!\n",
"单条删除 FINST-M7766RD1YHG9LYCSCWZA7C14Y3DM2JLL78TFLZ31 数据!\n",
"单条删除 FINST-6R766TC1PIG90IGLCBMJ1BDD8PRW37UL78TFLVV3 数据!\n",
"单条删除 FINST-ZH866O91VJG9GBPOCT9N897JDUFE2D3M78TFL3F1 数据!\n",
"单条删除 FINST-BL866S61IIF901NP6LQCP6GTDMW03FTK78TFL9I2 数据!\n",
"单条删除 FINST-3Z966P91RLG9Y2Q3DLA9P760L1LM2B3L78TFLYR1 数据!\n",
"单条删除 FINST-6Q666BA1QIG9KO8U9KEY9ACGSTVX22CL78TFLBV 数据!\n",
"单条删除 FINST-Z6966NB1UMG937JA96LRZBZ8TM39322K78TFL0T 数据!\n",
"单条删除 FINST-JMA66U61XHG93SQA9AFFWDGZJ4IL3HKK78TFL4K 数据!\n",
"单条删除 FINST-Z6966NB1UMG937JA96LRZBZ8TM393SAK78TFL2T 数据!\n",
"单条删除 FINST-DJA66CC1PMG9X6Z9DV6FY8XO8NEX2GSJ78TFL6U 数据!\n",
"单条删除 FINST-URA66BA17PE9JASOFZNT75NKGSRE2KIJ78TFL526 数据!\n",
"单条删除 FINST-BL866S61EXF9GFUCCC7P759SN0ZQ269J78TFLK23 数据!\n",
"单条删除 FINST-SN9669711VF9T3N8D7FAD4K02OV638EI78TFLPR8 数据!\n",
"单条删除 FINST-HN566LC1ALG9W3P2CHXUQ5ULPSYC20PI78TFLL41 数据!\n",
"单条删除 FINST-ZH866O919LG9TGM369JKB9W19HGG3HZI78TFL0M 数据!\n",
"单条删除 FINST-6Q666BA1LIG94ZA5EJLCG7HWOYFB2XLH78TFL8S2 数据!\n",
"单条删除 FINST-BTA66F71AHG9NFM1F66E3DGEJRPM335I78TFLM82 数据!\n",
"单条删除 FINST-Z4766CA1MKG987EAE5EUU9GK9HX13IVH78TFL2E1 数据!\n",
"单条删除 FINST-UIA663C1AHG9AAZUBHQ8K8RP76MV2MDH78TFLOL3 数据!\n",
"单条删除 FINST-WQA66NA1UMG96H8M68S3TC74BO7M3CUG78TFLGO 数据!\n",
"单条删除 FINST-2P766FA1QLG9MFUGFK8VQBY7GG6P284H78TFL3C1 数据!\n",
"单条删除 FINST-RX966SB18KF93V7LB4LGY5JBGT5M3MKG78TFLN75 数据!\n",
"单条删除 FINST-SN9669711VF9T3N8D7FAD4K02OV637CG78TFLLR8 数据!\n",
"单条删除 FINST-OV8660B17JF9U7Z9BAUV082CSSU13A2G78TFL8K8 数据!\n",
"单条删除 FINST-GK766MA1NMG9D5KZEVJ4CB28T2HC2DIF78TFLBE1 数据!\n",
"单条删除 FINST-DJA66CC1ZIG90BH874OQB6L6XBM63ESF78TFLTV1 数据!\n",
"单条删除 FINST-5X866U81RNG9CVK2DMF2D4QQNWT83QME78TFLVP 数据!\n",
"单条删除 FINST-XDA66MD1OHG9FV7XCJTWOC7QRXAM2JWE78TFLHA2 数据!\n",
"单条删除 FINST-1A866271WLG9NKZV5RMMJ9RFYM1W2B8F78TFL54 数据!\n",
"单条删除 FINST-RX966SB1QWF9Z42862ZE49YV2JHE2ICE78TFLNQ1 数据!\n",
"单条删除 FINST-WB7662B1MIG9PQL0BUFDIDH8I6A937TD78TFL5P2 数据!\n",
"单条删除 FINST-J0A66981JKG9XJAZE2ANBCNTNVZP2Q2E78TFLCE1 数据!\n",
"单条删除 FINST-0U7661C1TJG9B4E47Q2IH4XH28FH36ZC78TFLHZ1 数据!\n",
"单条删除 FINST-JMA66U61QUF9NQAVDI2LAA4VZSA83WHD78TFLRL1 数据!\n",
"单条删除 FINST-SE766NA1PSF989WNAUWE8BKBD0XA2T8D78TFLWV2 数据!\n",
"单条删除 FINST-V0A66T81DMG9LZS6F53VSB4S9XEU2UOC78TFLTA1 数据!\n",
"单条删除 FINST-UIA663C14KG9LF9S8ZJJS62NX5ZE2MFC78TFL112 数据!\n",
"单条删除 FINST-ETA666810IG9ICKU9C1EIA8MZOCW31KB78TFL0K2 数据!\n",
"单条删除 FINST-8R766CD1LKG900Y87GUG45UGT8E038VB78TFLW7 数据!\n",
"单条删除 FINST-Q26666814MG95AW6E17RRAZT594Y2W4C78TFLQF1 数据!\n",
"4125\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 64 条数据!\n",
"读取到表单中 36 条数据!\n",
"读取到表单中 64 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 63 条数据!\n",
"读取到表单中 37 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 74 条数据!\n",
"读取到表单中 26 条数据!\n",
"读取到表单中 76 条数据!\n",
"读取到表单中 29 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 73 条数据!\n",
"读取到表单中 27 条数据!\n",
"读取到表单中 86 条数据!\n",
"读取到表单中 14 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 95 条数据!\n",
"单条删除 FINST-SE766NA1KSF9O0UHE12G944994BW2CNNR7TFLLU9 数据!\n",
"单条删除 FINST-96766PB1CNG94VHH8GJPT732OGSU3APMR7TFL0R 数据!\n",
"单条删除 FINST-96766PB1CNG94VHH8GJPT732OGSU367NR7TFL2R 数据!\n",
"单条删除 FINST-8D7668A12YF9HQ2EDMIAAAEP4TT52DYMR7TFLXB9 数据!\n",
"单条删除 FINST-8OC66GB1KNG9JUMVB9Q9K4W1A1QJ3D8MR7TFL7J 数据!\n",
"2020\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 74 条数据!\n",
"读取到表单中 26 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 75 条数据!\n",
"读取到表单中 25 条数据!\n",
"读取到表单中 78 条数据!\n",
"读取到表单中 22 条数据!\n",
"读取到表单中 81 条数据!\n",
"读取到表单中 19 条数据!\n",
"读取到表单中 80 条数据!\n",
"读取到表单中 20 条数据!\n",
"单条删除 FINST-0U7661C1JMG9F41CE6GO3DMG1MC72E21I7TFLK01 数据!\n",
"单条删除 FINST-7N5664D1QHF9YL6C7ZDXY6AGVJLL2870I7TFLNK2 数据!\n",
"单条删除 FINST-J0A66981LJG9MHI49683764GRNTE3WR0I7TFLHQ1 数据!\n",
"单条删除 FINST-LD866LB1DIG9I18W53UR948J4MW53EI0I7TFL652 数据!\n",
"单条删除 FINST-9CC66N71SLG9K2TAFFVBSDUJK87V2XPZH7TFL5J 数据!\n",
"单条删除 FINST-1A866271WLG9VBIS65KSIDXEGG3E3XGZH7TFL6Q1 数据!\n",
"单条删除 FINST-LEA66TA1OVF9M5HY8HLL65BBIYSG3EYZH7TFL7T3 数据!\n",
"单条删除 FINST-UZA66W915JG9L5LUA9N4EADQGZSJ278ZH7TFLM31 数据!\n",
"单条删除 FINST-7N5664D13MG9NFUN8JT0EAA73YOU2WPYH7TFLCD1 数据!\n",
"单条删除 FINST-EO6667A1ESF91TI76FY557H5QQA92FZYH7TFLHM6 数据!\n",
"单条删除 FINST-SE766NA1YXF9ZP3G91QH06DU9W4C20YXH7TFL8A1 数据!\n",
"单条删除 FINST-9CC66N71FKF9TZ81DYOVFDDCFT892X6YH7TFLLZ 数据!\n",
"单条删除 FINST-NGA66WA1PKG966IV6LYV64Z10Z882KFYH7TFLG51 数据!\n",
"单条删除 FINST-6Q666BA1FKF9FAD0ANP8BDJLT7H53QOXH7TFLNM3 数据!\n",
"单条删除 FINST-WB7662B16UF9J30MFDLCDAKL7U8C2VEXH7TFL1Y8 数据!\n",
"单条删除 FINST-0U7661C1RMG9V8Y67RUD7BPBIE0B2T3XH7TFL38 数据!\n",
"单条删除 FINST-JMA66U61QHG93TF26UZFV5I7LH202PHWH7TFL0C2 数据!\n",
"单条删除 FINST-0U7661C1JMG9F41CE6GO3DMG1MC72MTWH7TFLH01 数据!\n",
"单条删除 FINST-YE966DA12NG9ICSSELW6RCB4DY6N3K8WH7TFLK4 数据!\n",
"单条删除 FINST-OV8660B1ZHG9GY4D6VHVDAUU0E3I3XYVH7TFLQ83 数据!\n",
"单条删除 FINST-RX966SB14LF986H0ELTTX4YYQA1G2JOVH7TFLNY3 数据!\n",
"单条删除 FINST-96766PB1CNG94VHH8GJPT732OGSU3USUH7TFLRN 数据!\n",
"单条删除 FINST-WQA66NA1UMG9AB3P6V4IWBOUEAHD3DEVH7TFLB5 数据!\n",
"单条删除 FINST-DJ966581QIG9CMMTBS339665RX00213VH7TFLM33 数据!\n",
"单条删除 FINST-8OC66GB1OIG951P67EURJB20B4CE2X7UH7TFLH22 数据!\n",
"单条删除 FINST-OV8660B1ZHG9FULY61S6W4A25XF93LIUH7TFL4E5 数据!\n",
"单条删除 FINST-ETA66681EIG9ACQNFBJUT7SILMLP2YETH7TFLED 数据!\n",
"单条删除 FINST-SN966971AIG9A2V7ELY5P5PN7QP13ANTH7TFLGN2 数据!\n",
"单条删除 FINST-HN566LC1RLG9DYYRFIIXT9KBQSPQ2NXTH7TFLT41 数据!\n",
"单条删除 FINST-8D7668A11TE99DLAF4MZRAOOL2WY2I5TH7TFLZR5 数据!\n",
"单条删除 FINST-HN566LC1ALG9W3P2CHXUQ5ULPSYC2GLSH7TFL8V 数据!\n",
"单条删除 FINST-5X866U81MMG94X7F9HYUBAY4CH4L2FVSH7TFLWR 数据!\n",
"单条删除 FINST-LV966L811OG9HTZFCWC9E9PGKF663VCSH7TFLZA 数据!\n",
"单条删除 FINST-6R766TC1PIG998P9C8HFZ7Q783UR3XURH7TFL252 数据!\n",
"单条删除 FINST-KRB66P917RF9XP4XE7EP590S5F4C2R3SH7TFLU3A 数据!\n",
"单条删除 FINST-6R766TC1PIG9FWKJBPAYN7OMUI882VKRH7TFLSL1 数据!\n",
"单条删除 FINST-UZA66W916LG9QF8X80DRZ8B8CV5H323RH7TFLHU 数据!\n",
"单条删除 FINST-LV966L81BSF9AEOODGFV8BMFM6MB30CRH7TFL4Y1 数据!\n",
"单条删除 FINST-SE766NA1PSF989WNAUWE8BKBD0XA2M9QH7TFLKO2 数据!\n",
"单条删除 FINST-3Z966P91OJE9345K9ZAUT5M3FT3Y30UQH7TFLMB5 数据!\n",
"单条删除 FINST-8R766CD1HIG9YQ3GFJL56CLTG2K539JQH7TFLTB1 数据!\n",
"单条删除 FINST-ETA66681EIG9ACQNFBJUT7SILMLP2K0QH7TFLBD 数据!\n",
"单条删除 FINST-KRB66P91NKG9J3KKEMQ9RAWEHS5V2BIPH7TFLUP 数据!\n",
"单条删除 FINST-WC866ZA1IJG90QH9DJLB490ZHEAK3HRPH7TFL0N1 数据!\n",
"单条删除 FINST-LEA66TA1OVF9M5HY8HLL65BBIYSG380PH7TFLWS3 数据!\n",
"单条删除 FINST-ETA66681CIG9WUHQ7QUKV98E08MA37QOH7TFLZ91 数据!\n",
"单条删除 FINST-H0B66W614JG9Y9ZF635HVAD1QOBL349PH7TFLHQ2 数据!\n",
"单条删除 FINST-7N5664D13MG94V9V88QDVAXTTQGO2EYNH7TFLAG1 数据!\n",
"单条删除 FINST-9CC66N713LG9CD5LDU3I185HOXTP2T8OH7TFL2F 数据!\n",
"单条删除 FINST-ETA666819KF9J20NFEXEY9UXNPVG2BHOH7TFL4OB 数据!\n",
"单条删除 FINST-6R766TC1PIG9YP2KBU6NDDC4V1U83ONNH7TFL9H2 数据!\n",
"单条删除 FINST-NGA66WA15OG9X4568T9X5582JAER38ENH7TFLM2 数据!\n",
"单条删除 FINST-WC866ZA1OKG9ED99DKW2P6R4GLKQ2D4NH7TFL691 数据!\n",
"单条删除 FINST-5X866U81OMG9YWJAF2V3E4V2EP3S3SUMH7TFLR9 数据!\n",
"单条删除 FINST-OV8660B1H6G9U0G4D05SM9IYBAX42GBMH7TFLDG2 数据!\n",
"单条删除 FINST-LD866LB1YHG9AI287J1FC81CTIO33ZJMH7TFL4B2 数据!\n",
"单条删除 FINST-BL866S611RF9E66V5LMBP8KZBXE2263MH7TFLF52 数据!\n",
"单条删除 FINST-SN966971AIG9A2V7ELY5P5PN7QP133ULH7TFLEN2 数据!\n",
"单条删除 FINST-8R766CD1HIG9YQ3GFJL56CLTG2K53OILH7TFLRB1 数据!\n",
"单条删除 FINST-UZA66W916LG9QF8X80DRZ8B8CV5H3TZKH7TFL8U 数据!\n",
"单条删除 FINST-6Q666BA1SJE9VPPQD32LM9WNP6AJ3CRKH7TFLJ7C 数据!\n",
"单条删除 FINST-BL866S61HKG9MDWO8JYGRA4KLTOI3H8LH7TFL0E1 数据!\n",
"单条删除 FINST-SE766NA1KSF9BJ0FE5OVICT4TR7535IKH7TFL8S1 数据!\n",
"单条删除 FINST-DJ966581LMG90NFNBZOCE5Y4U38A3Z7KH7TFL8N 数据!\n",
"单条删除 FINST-LV966L818MG9DM3OEYQJOB70HWV33LYJH7TFLI11 数据!\n",
"单条删除 FINST-GK766MA1ZUF92FGM96EG8D17JRPT2MPJH7TFL4N1 数据!\n",
"单条删除 FINST-GK766MA1ZUF92FGM96EG8D17JRPT2RGJH7TFL2N1 数据!\n",
"单条删除 FINST-NGA66WA1VHG9NC7X7WH7Y9XUQNCL3T7JH7TFLMD 数据!\n",
"单条删除 FINST-NGA66WA1PKG966IV6LYV64Z10Z882GNIH7TFL751 数据!\n",
"单条删除 FINST-DK866Z91DLG940HF76L0A9NN79IG2BXIH7TFLDH1 数据!\n",
"单条删除 FINST-Z6966NB1UMG937JA96LRZBZ8TM393JVHH7TFL9L 数据!\n",
"单条删除 FINST-SD866HA18UF9SENIBKZIH6QDEJEF2F5IH7TFL7G4 数据!\n",
"单条删除 FINST-J0A66981LJG953K49KSRH9W59URF27EIH7TFLCP2 数据!\n",
"单条删除 FINST-PF866EA1QOF9S3J6EG1ZOBINMO362O3HH7TFLBH7 数据!\n",
"单条删除 FINST-PF866EA1QOF9S3J6EG1ZOBINMO362HBHH7TFLDH7 数据!\n",
"单条删除 FINST-LV966L81BSF9AEOODGFV8BMFM6MB3QLHH7TFLVX1 数据!\n",
"单条删除 FINST-UIA663C1GJE9HCOUD1XRLCVDJNBI2ZLGH7TFLZ15 数据!\n",
"单条删除 FINST-J0A66981SJG9QYBM7JR7YAZ574Y22IUGH7TFLXG1 数据!\n",
"单条删除 FINST-SD866HA15XF9VHDB8YPVV8KYR2H12Z3GH7TFL4S2 数据!\n",
"单条删除 FINST-PF866EA1QOF9S3J6EG1ZOBINMO362FDGH7TFL9H7 数据!\n",
"单条删除 FINST-LEA66TA1FLF9A7PVETSLO93O52V72AVFH7TFLBS3 数据!\n",
"单条删除 FINST-8R766CD1LKG9ZW4Q8DJ2C76FX0FZ21CFH7TFLZL1 数据!\n",
"937\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 99 条数据!\n",
"读取到表单中 1 条数据!\n",
"读取到表单中 96 条数据!\n",
"读取到表单中 4 条数据!\n",
"读取到表单中 96 条数据!\n",
"单条删除 FINST-6R766TC1PIG9Y5H5CNAMRCUQTIDY2H93X5TFL902 数据!\n",
"单条删除 FINST-SE766NA1PSF90LYHAWVRK4P7U78537J3X5TFLRH2 数据!\n",
"单条删除 FINST-JMA66U614IG9CN6WCURVLCDJQ34K36R2X5TFLR02 数据!\n",
"单条删除 FINST-KJ866W81TLG9EKBX65WA95272OP83O32X5TFL5I 数据!\n",
"438\n",
"读取到表单中 100 条数据!\n",
"读取到表单中 0 条数据!\n",
"读取到表单中 88 条数据!\n",
"读取到表单中 12 条数据!\n",
"单条删除 FINST-RX966SB1HXF91OK2B88EZ9LAHLLR2A6JV5TFLH93 数据!\n",
"单条删除 FINST-KRB66P91NKG9J3KKEMQ9RAWEHS5V2RNIV5TFLCB 数据!\n",
"单条删除 FINST-V0A66T819MG9TBCK90TUP9J1BOA234DIV5TFL1E 数据!\n",
"单条删除 FINST-JMA66U610IG9IUMB7K0N69ATW8P92Y2IV5TFL8D2 数据!\n",
"单条删除 FINST-KJ866W81TLG9VY3T779CT82HXTBZ2USHV5TFLHL 数据!\n",
"单条删除 FINST-0U7661C1JMG9D6NSDQLBMBVQPV9F2O1HV5TFLZC 数据!\n",
"单条删除 FINST-M7766RD1WTF98C7U94287CZ3EDVB30BHV5TFL4E2 数据!\n",
"单条删除 FINST-Q2666681YHG9KXV6EVW9358JHBIA2WJHV5TFLIY 数据!\n",
"单条删除 FINST-WB7662B16UF9J30MFDLCDAKL7U8C2DIGV5TFLSF8 数据!\n",
"单条删除 FINST-WB7662B1PJG9Y61Z55E0L6LRG1Q1388GV5TFL2G1 数据!\n",
"单条删除 FINST-WD766Z61TMG9NJXXEJ7I67CXU2SC2OSGV5TFLG9 数据!\n",
"单条删除 FINST-JMA66U61GMG9GYVIC5PE2CWQNM222XOFV5TFL37 数据!\n",
"单条删除 FINST-RX966SB1HXF91OK2B88EZ9LAHLLR23ZFV5TFLB93 数据!\n",
"单条删除 FINST-Q2666681CJG9T1VPEIAMGC32VI3I3UEFV5TFLBZ 数据!\n",
"单条删除 FINST-H0B66W619QF9DE7MBLMK37U9NZGU2Q5FV5TFLH31 数据!\n",
"单条删除 FINST-9CC66N71OHG9014HB0G76CEVCQ7X2JKEV5TFL332 数据!\n",
"单条删除 FINST-8D7668A12LF9HJA97PNLN72LXSJU2UVEV5TFLEJ8 数据!\n",
"单条删除 FINST-DJA66CC1VIG92PAU643814YT0L8A34AEV5TFLXV 数据!\n",
"单条删除 FINST-DJ966581QIG9CMMTBS339665RX00271EV5TFL0N2 数据!\n",
"单条删除 FINST-DJ966581QIG9CMMTBS339665RX002LRDV5TFLYM2 数据!\n",
"单条删除 FINST-96766PB1CNG9829888AJ74EXZQ5D3J6DV5TFL0 数据!\n",
"单条删除 FINST-2P766FA1QLG9MFUGFK8VQBY7GG6P26IDV5TFL4O 数据!\n",
"单条删除 FINST-ETA66681WLG95OM3F1THA9EFM75S3JY9V5TFLZE 数据!\n",
"单条删除 FINST-1A866271WLG9VBIS65KSIDXEGG3E3M7AV5TFLUV 数据!\n",
"单条删除 FINST-6Q666BA1LIG94ZA5EJLCG7HWOYFB27F9V5TFLL32 数据!\n",
"单条删除 FINST-ZH866O91LMG98JC366P1OC08JL242JO9V5TFL7F 数据!\n",
"单条删除 FINST-JMA66U610IG9DQF17AIUCAFPFTJZ16W8V5TFLB02 数据!\n",
"单条删除 FINST-NGA66WA1THF98O386RKT74R2PUUV28L8V5TFLNS4 数据!\n",
"单条删除 FINST-Z4766CA1IKG9AYC28SZ58BERXX2G2W59V5TFL061 数据!\n",
"单条删除 FINST-2P766FA1RLG9E87W5FYZ8BPQMRI42528V5TFLBQ 数据!\n",
"单条删除 FINST-LEA66TA1DLG90S9D6TYBF4CPXV1J2AS7V5TFLRK 数据!\n",
"单条删除 FINST-6R766TC1PIG9YP2KBU6NDDC4V1U83SB8V5TFLFT1 数据!\n",
"单条删除 FINST-EO6667A1QUF9ORT49XCGO857X8W723Z6V5TFLXV6 数据!\n",
"单条删除 FINST-1A866271WLG9VBIS65KSIDXEGG3E3HH7V5TFLSV 数据!\n",
"单条删除 FINST-8OC66GB1OIG951P67EURJB20B4CE2T77V5TFLWI1 数据!\n",
"单条删除 FINST-RX966SB1CHG90JS57VLLO8QOZT9F32F6V5TFLNL1 数据!\n",
"单条删除 FINST-3Z966P91RLG9Y2Q3DLA9P760L1LM2I56V5TFL6X 数据!\n",
"单条删除 FINST-SE766NA1MXF97YD7B068VA0JJ3E531P6V5TFL6U 数据!\n",
"单条删除 FINST-EO6667A1ESF91TI76FY557H5QQA92AM5V5TFLD16 数据!\n",
"单条删除 FINST-YE966DA1LKF9DMH5A4WJN7G9ZGGC29C5V5TFLJ91 数据!\n",
"单条删除 FINST-H0B66W61ZIG9QPUG8FXS84CJD5II2XV5V5TFLYC1 数据!\n",
"单条删除 FINST-DJ966581UHG9FZBSC41KC826O8G03I25V5TFLXR2 数据!\n",
"单条删除 FINST-J0A66981LJG9MHI49683764GRNTE3XJ4V5TFL8B1 数据!\n",
"单条删除 FINST-BTA66F71PJG92NDFEN2VP7EJEEFI2JT4V5TFLOW1 数据!\n",
"单条删除 FINST-Z4766CA1ZHG9CKQDF9KUU96ODBBW2A24V5TFLW12 数据!\n",
"单条删除 FINST-8OC66GB1OIG951P67EURJB20B4CE2TB4V5TFLTI1 数据!\n",
"单条删除 FINST-BTA66F71HKF9KFX88PESJCAHB30K25S3V5TFLRB3 数据!\n",
"单条删除 FINST-BL866S61AJE9JKC297HH2D5TFCTZ1ZH3V5TFLNN7 数据!\n",
"单条删除 FINST-J0A66981LJG9MHI49683764GRNTE3O83V5TFL5B1 数据!\n",
"单条删除 FINST-DJ966581NMG990PL6YZFJDOFEF0M3KP2V5TFLGA 数据!\n",
"单条删除 FINST-LD866LB1CIG91FF2B00LT7FP1VTJ3OF2V5TFL261 数据!\n",
"单条删除 FINST-LV966L81WTF96J3QCNB094RPCVE639Z2V5TFL9B9 数据!\n",
"单条删除 FINST-RX966SB14XF9B6LO9C60Z3TEXXCZ1JJ1V5TFLTV1 数据!\n",
"单条删除 FINST-6R766TC1PIG9YP2KBU6NDDC4V1U83Y32V5TFL8T1 数据!\n",
"单条删除 FINST-LV966L81WTF96J3QCNB094RPCVE63OT1V5TFL6B9 数据!\n",
"单条删除 FINST-HN566LC15IG9Y17O9HMWP9D67Y9N3I91V5TFLCZ 数据!\n",
"单条删除 FINST-HN566LC15LG9BQAQ9G1U65061O2X2G01V5TFLLA1 数据!\n",
"单条删除 FINST-DK866Z912IG94I5LCDRYX9UCQTCI3PQ0V5TFLZ21 数据!\n",
"单条删除 FINST-V0A66T819MG9QOCTFYCZ26K2O2SF3870V5TFL6M 数据!\n",
"单条删除 FINST-EO6667A1QUF9ORT49XCGO857X8W722XZU5TFLVV6 数据!\n",
"单条删除 FINST-9CC66N71HHG9KF2E9MSHK5VVQIHX2DH0V5TFLBE1 数据!\n",
"单条删除 FINST-DJA66CC1QIG942138L13HADH7NYP3YAZU5TFLSH1 数据!\n",
"单条删除 FINST-DJ9665814JG9ELAC8GULMC9E6O0I3RMZU5TFLG11 数据!\n",
"单条删除 FINST-NGA66WA1OHF9OSHO9A644A2DAFXA231ZU5TFL6L4 数据!\n",
"单条删除 FINST-7N5664D13MG94GNN851VF5EJWM6Z2ZGYU5TFLG61 数据!\n",
"单条删除 FINST-DJA66CC1QIG942138L13HADH7NYP3XQYU5TFLPH1 数据!\n",
"单条删除 FINST-YE966DA19NG9SZYTE0GV342V19TG35YXU5TFLO6 数据!\n",
"单条删除 FINST-UZA66W91BLG9H0QV6JX86DD7CFSO2GOXU5TFL5E 数据!\n",
"单条删除 FINST-UIA663C1MIG9EGVWBBCF85BUGKR92Z6YU5TFLYS1 数据!\n",
"单条删除 FINST-KRB66P91NKG9J3KKEMQ9RAWEHS5V2KWWU5TFLHA 数据!\n",
"单条删除 FINST-WD766Z61TMG9DP43FY5U2BX88OAT2D5XU5TFLE7 数据!\n",
"单条删除 FINST-PF866EA1QOF9KJ29E3XT26ZTVXOW3QEXU5TFLOG4 数据!\n",
"单条删除 FINST-2P766FA1RLG9E87W5FYZ8BPQMRI42QDWU5TFL3Q 数据!\n",
"单条删除 FINST-OV8660B1H6G9F1VODYGPD50WF9IQ3O3WU5TFL182 数据!\n",
"单条删除 FINST-HN566LC15LG9P6TI9KNADAXXJ98Q2DNWU5TFL601 数据!\n",
"单条删除 FINST-LEA66TA1FLF9A7PVETSLO93O52V72RSVU5TFLU33 数据!\n",
"单条删除 FINST-5X866U81SMG9PAB2BZRN5AF4PEM82HIVU5TFLJ9 数据!\n",
"单条删除 FINST-LV966L812IG9YEWB9CHM4426TH0F3G8VU5TFLD71 数据!\n",
"单条删除 FINST-URA66BA1AKG9Q511CXCKQ9337R2O2PYUU5TFLA11 数据!\n",
"单条删除 FINST-9CC66N71SLG9ZYKXD0HSZ3LLGT163HPUU5TFLKZ 数据!\n",
"单条删除 FINST-8OC66GB1NIG90QIF6INVRCCNLEY72SFUU5TFLZL1 数据!\n",
"单条删除 FINST-M7766RD12IG9EKTA8G66MAQZ85D32KUTU5TFL3G2 数据!\n",
"单条删除 FINST-DJ966581NMG990PL6YZFJDOFEF0M3P4UU5TFLBA 数据!\n",
"单条删除 FINST-M7766RD1OIG90JPABUC7K4P86Q092RKTU5TFL551 数据!\n",
"单条删除 FINST-SE766NA1BWF9NGJGA28QD5MV4ZOJ21BTU5TFLEC3 数据!\n",
"单条删除 FINST-NGA66WA1VHG9OGRV7NZ9RBKBR29D2L0TU5TFLZ51 数据!\n",
"单条删除 FINST-J0A66981SJG9QYBM7JR7YAZ574Y22CHSU5TFLPX 数据!\n",
"单条删除 FINST-5X866U81TIG9S7SB6SSSR4W3BHV53QQSU5TFLMG 数据!\n",
"单条删除 FINST-YE966DA17NG9YIUFD97ZM6TXUFBQ39MRU5TFLF4 数据!\n",
"单条删除 FINST-V0A66T81EMG9RGVZ7EJT5A0YYYEH29WRU5TFL7O 数据!\n",
"单条删除 FINST-Q2666681LNF9LLD1AFRLH88KX5TD3P6SU5TFLZ63 数据!\n",
"147\n",
"读取到表单中 100 条数据!\n",
"89\n",
"单条删除 FINST-LD866LB14IG9E9N19QYOM9JOYXLQ2V6ZT5TFLRK 数据!\n",
"单条删除 FINST-PF866EA1CSF956WPBB43O8ABLTSV3KGZT5TFLDK1 数据!\n",
"单条删除 FINST-EO6667A1TTF9EIXP7CT2Q9FHEC5P22OYT5TFLO72 数据!\n",
"单条删除 FINST-5X866U81SMG9M1JOB2GD0DDOWIUT2JDYT5TFL99 数据!\n",
"单条删除 FINST-KJ866W81YLG9J31XA9V7CDWW5CS13T2YT5TFL5S 数据!\n",
"单条删除 FINST-TJ866PB13IG9W4566L9Y572GESMH3ZTXT5TFLJL 数据!\n",
"单条删除 FINST-LEA66TA1FLG93UDGC30IR7F5TO4H29KXT5TFLM61 数据!\n",
"单条删除 FINST-WB7662B1RHG9THGYB666893A91632NQWT5TFLHY1 数据!\n",
"单条删除 FINST-5X866U81SMG98BF9AJSVQ6ZCQ2UM3W0XT5TFLE3 数据!\n",
"单条删除 FINST-3Z966P91JQE9Q5T8AYU85987W6702HAXT5TFLJ58 数据!\n",
"单条删除 FINST-J0A66981LJG9FQ059ZOOCD0BPB7H2URVT5TFLK51 数据!\n",
"单条删除 FINST-ETA66681KIG95M5HFTAZ2BNLW4EA2KGWT5TFL4X 数据!\n",
"单条删除 FINST-8R766CD1LKG9Q0W876HQ7724JDG53J2WT5TFLNU 数据!\n",
"单条删除 FINST-J0A66981LJG953K49KSRH9W59URF2REVT5TFLW02 数据!\n",
"单条删除 FINST-8D7668A1PHG90NMHBE7664FED16Q2K4VT5TFLZ32 数据!\n",
"单条删除 FINST-DJA66CC11NG91JMBE7RDF5TNNZAF3O8UT5TFL13 数据!\n",
"单条删除 FINST-KRB66P91NKG9J3KKEMQ9RAWEHS5V2KIUT5TFL29 数据!\n",
"单条删除 FINST-9CC66N71KKF91414AB2HHD4E17FV2MSUT5TFLSM6 数据!\n",
"单条删除 FINST-SN966971ZWE9TP0T9Y6W95S3JNL82IOTT5TFLRZ2 数据!\n",
"单条删除 FINST-BL866S61BHF99QCTD8X7K6H9PUB72SYTT5TFLQW2 数据!\n",
"单条删除 FINST-6R766TC1PIG934GKB54CFDQUJKMO2JTST5TFL0R1 数据!\n",
"单条删除 FINST-LV966L818MG9DM3OEYQJOB70HWV33B4TT5TFLD9 数据!\n",
"单条删除 FINST-GK766MA1LMG9FHN0EBMEB9XPBDBW3UDTT5TFLIJ 数据!\n",
"单条删除 FINST-LEA66TA1DLG90S9D6TYBF4CPXV1J21ZRT5TFLHJ 数据!\n",
"单条删除 FINST-WC866ZA1OKG99FFJBBUY89Q8RR7E2BHST5TFL4D1 数据!\n",
"单条删除 FINST-UIA663C1YVD9BOIHFVKK7AFPQ6LF3H8ST5TFLAHB 数据!\n",
"单条删除 FINST-3Z966P91OJE9345K9ZAUT5M3FT3Y35FRT5TFLFV4 数据!\n",
"单条删除 FINST-1A8662718LG980TE6GVX5AT0FDR93E5RT5TFLH41 数据!\n",
"单条删除 FINST-6Q666BA1APE910FGD01NEB08KSGV2OPRT5TFL8GI 数据!\n",
"单条删除 FINST-LV966L812IG9YEWB9CHM4426TH0F38WQT5TFLI61 数据!\n",
"单条删除 FINST-SN966971AIG9X8LDEPV6RC1RRVUF3AMQT5TFLJM2 数据!\n",
"单条删除 FINST-UZA66W916LG9FOP0FOUH9C3UAU3G2ATPT5TFLGL 数据!\n",
"单条删除 FINST-WQA66NA17NG9BFL5A2REAATTHDGM2NCQT5TFLD3 数据!\n",
"单条删除 FINST-UIA663C1PIG92J9GFVJM0ADZB71Q373QT5TFL433 数据!\n",
"单条删除 FINST-Z4766CA1IKG9RDI28H2H7DJZXMJQ3OXOT5TFL341 数据!\n",
"单条删除 FINST-TJ866PB1XLG9FA4JC9UYF9L9SICI34KPT5TFLEI 数据!\n",
"单条删除 FINST-DK866Z912IG94I5LCDRYX9UCQTCI3T9PT5TFL621 数据!\n",
"单条删除 FINST-2P766FA1VLG9ANXRC6MI19LECAHB39MOT5TFLUU 数据!\n",
"单条删除 FINST-EO6667A1QXF9WNRQCZBXND7UT4EG3XBOT5TFLFM5 数据!\n",
"单条删除 FINST-GK766MA1LMG9B545FXD7NDHN7O9P3T1OT5TFL08 数据!\n",
"单条删除 FINST-9CC66N71SLG9ZYKXD0HSZ3LLGT163NHNT5TFLKY 数据!\n",
"单条删除 FINST-GK766MA1NMG9D5KZEVJ4CB28T2HC2ZRNT5TFLF8 数据!\n",
"单条删除 FINST-JMA66U614IG9GFORE2RR85PR63T12TWMT5TFLBX2 数据!\n",
"单条删除 FINST-WC866ZA1IJG9FEEOC82HODT5W3OK3M6NT5TFLNY 数据!\n",
"单条删除 FINST-LV966L81MTF9KGIUCUDF44B3042U2CMMT5TFLHB8 数据!\n",
"单条删除 FINST-NGA66WA1VHG9OGRV7NZ9RBKBR29D2KBMT5TFLU41 数据!\n",
"1\n",
"0\n",
"0\n",
"0\n",
"0\n",
"0\n",
"0\n",
"0\n",
"0\n",
"0\n",
"0\n"
]
}
],
"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()\n",
"\n",
"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_saas_profile_ngv_detail_d\" WHERE \"date_id\" = '{yes_time_nyr}';\"\"\"\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_NGV = pd.DataFrame(list(rows),columns=col)\n",
"# data_NGV.to_excel(r'C:\\Users\\admin\\Desktop\\NGV明细.xlsx')\n",
"# 关闭数据库连接\n",
"cursor.close()\n",
"conn.close()\n",
"\n",
"# 基础函数配置\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",
"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",
"\n",
"def component(FORMID,TOKEN):\n",
" \"\"\" 获取组件信息 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/formFields'\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.get(api, headers=headers, json=payload)\n",
"\n",
" return res.json()\n",
"def Batch_creation(FORMID,TOKEN,ALL_formData):\n",
" \"\"\" 获取组件信息 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/instances/batchSave'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
" payload = {\n",
" # \"formDataJson\" : json.dumps(formData, cls=NpEncoder),\n",
" \"noExecuteExpression\" : \"true\",\n",
" \"formUuid\" : FORMID,\n",
" \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n",
" \"asynchronousExecution\" : \"true\",\n",
" \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n",
" \"keepRunningAfterException\" : \"true\",\n",
" \"userId\" : \"yida_pub_account\",\n",
" \"formDataJsonList\" : json.dumps(ALL_formData, cls=NpEncoder),\n",
" }\n",
"\n",
" res = requests.post(api, headers=headers, json=payload)\n",
" return res.json()\n",
"\n",
"def delete_in_batches(FORMID,TOKEN,ALL_DATA_instance):\n",
" \"\"\" 批量删除表单实例 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/instances/batchRemove'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
"\n",
" payload = {\n",
" \"formUuid\" : FORMID,\n",
" \"appType\" : \"APP_UYZ0KG6L0CCNV80GZ66O\",\n",
" \"asynchronousExecution\" : \"true\",\n",
" \"systemToken\" : \"XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2\",\n",
" \"formInstanceIdList\" : json.dumps(ALL_DATA_instance, cls=NpEncoder),\n",
" \"userId\" : \"yida_pub_account\",\n",
" \"executeExpression\" : \"false\" # 不触发\n",
" }\n",
"\n",
" res = requests.post(api, headers=headers, json=payload)\n",
" return res.json()\n",
"\n",
"def delete_in(TOKEN,formInstanceIdList):\n",
" \"\"\" 逐条删除表单实例 \"\"\"\n",
" api = f'https://api.dingtalk.com//v1.0/yida/forms/instances?appType=APP_UYZ0KG6L0CCNV80GZ66O&systemToken=XA966F81JAJOFCVVVKO64E9MIIZV1EWE5SFMKJ2&userId=yida_pub_account&language=zh_CN&formInstanceId={formInstanceIdList}'\n",
"\n",
" headers = {\n",
" \"Content-Type\": \"application/json\",\n",
" \"x-acs-dingtalk-access-token\": TOKEN\n",
" }\n",
" res = requests.delete(api, headers=headers)\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)\n",
"TOKEN = generateToken() \n",
"\n",
"for i in range(0,10):\n",
" default = True\n",
" while default:\n",
" FORMID = \"FORM-GP666M71TNE9GFK57V2O85NLM04I34CSG1TFLC\" \n",
" form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n",
" PAGES = form_data.get('totalCount')//100 +1 \n",
" print(form_data.get('totalCount'))\n",
" if form_data.get('totalCount')<=0:\n",
" default = False\n",
" for i in range(PAGES, 1,-1):\n",
" ALL_DATA_instance = []\n",
" form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n",
" for data in form_data.get('data'):\n",
" ALL_DATA_instance.append(data['formInstanceId'])\n",
" print(f'读取到表单中 {len(ALL_DATA_instance)} 条数据!')\n",
" red_delete = delete_in_batches(FORMID,TOKEN,ALL_DATA_instance)\n",
" form_data = read_instances(token=TOKEN, formUuid=FORMID, page=1, n=100)\n",
" for data in form_data.get('data'):\n",
" formInstanceId = data['formInstanceId']\n",
" delete_in(TOKEN,formInstanceId)\n",
" print(f'单条删除 {formInstanceId} 数据!')\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "F6processing",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.4"
},
"orig_nbformat": 4
},
"nbformat": 4,
"nbformat_minor": 2
}