Commit 16f76ec8 authored by rico.liu's avatar rico.liu

update

parent 9130348c
...@@ -730,11 +730,13 @@ class ES_Client: ...@@ -730,11 +730,13 @@ class ES_Client:
print(self.es.update_by_query(index=self.index_name,body=body)) print(self.es.update_by_query(index=self.index_name,body=body))
def UpdateParamsDealData(self,search_field,search_field_value,params_info): def UpdateParamsDealData(self,category_name,search_field,search_field_value,params_info):
if search_field == 'DOC_ID': if search_field == 'DOC_ID':
if category_name in ['笔记本','台式机','一体电脑','复印纸','工作站']:
body = { body = {
"query":{ "query":{
"match":{ "match":{
...@@ -750,6 +752,23 @@ class ES_Client: ...@@ -750,6 +752,23 @@ class ES_Client:
} }
print(self.es.update_by_query(index=self.index_name,body=body))
else:
body = {
"query":{
"match":{
search_field:search_field_value
}
},
"script": {
"params":{
"params_info":str(params_info)
},
"inline":"ctx._source['DEAL_STD_PARAMS_DICT']=params.params_info;ctx._source['DEAL_INPUT_PARAMS_DICT']=params.params_info;ctx._source['FLOW_NODE_STATUS']='SYS_GET_CATEGORY_SUCCESS_NONREDUCTIVE';ctx._source['FLOW_CHECK_STATUS']='null'"
}
}
print(self.es.update_by_query(index=self.index_name,body=body)) print(self.es.update_by_query(index=self.index_name,body=body))
......
...@@ -18,7 +18,11 @@ from SimilarCharactor.string_similarity import similarity_cn,similarity_en ...@@ -18,7 +18,11 @@ from SimilarCharactor.string_similarity import similarity_cn,similarity_en
def export_params_data(es,filter_col,filter_value,category_name,params_list): def export_params_data(es,filter_col,filter_value,category_name,params_list):
#导出指定项目数据 #导出指定项目数据
if filter_col == 'DATA_BATCH':
df = es.SearchByCondition(filter_col,filter_value) df = es.SearchByCondition(filter_col,filter_value)
else:
filter_value = filter_value[0]
df = es.SearchAimAllByCondition(filter_col,filter_value)
#df = df[df['DATA_BATCH'] == "202111160940430001"] #df = df[df['DATA_BATCH'] == "202111160940430001"]
#导出补参环节数据 #导出补参环节数据
if category_name in ['笔记本','台式机','一体电脑','复印纸','工作站']: if category_name in ['笔记本','台式机','一体电脑','复印纸','工作站']:
...@@ -214,8 +218,6 @@ def check_data(category_name,path): ...@@ -214,8 +218,6 @@ def check_data(category_name,path):
df = df.rename(columns = rename_dict) df = df.rename(columns = rename_dict)
##数据准备 ##数据准备
id_list = list() id_list = list()
params_list = list() params_list = list()
...@@ -276,8 +278,8 @@ def check_data(category_name,path): ...@@ -276,8 +278,8 @@ def check_data(category_name,path):
pri_value = str(row[db_param]) pri_value = str(row[db_param])
value, value_flag = tuple(res_value_dict[id_][db_param].items())[0] value, value_flag = tuple(res_value_dict[id_][db_param].items())[0]
if value_flag == False: if value_flag == False:
#print(f"select * from ShuJuZiDian_Cfg where categoryname = '{category_name}' and subtitle = '{db_param}' and primitive = '{pri_value}' and stdvalue is not Null")
cursor_zi_new.execute(f"select * from ShuJuZiDian_Cfg where categoryname = '{category_name}' and subtitle = '{db_param}' and primitive = '{pri_value}' and stdvalue is not Null") cursor_zi_new.execute(f"select * from ShuJuZiDian_Cfg where categoryname = '{category_name}' and subtitle = '{db_param}' and primitive = '{pri_value}' and stdvalue is Null")
check_df = pd.DataFrame(cursor_zi_new.fetchall(), check_df = pd.DataFrame(cursor_zi_new.fetchall(),
columns=[tuple[0] for tuple in cursor_zi_new.description]) columns=[tuple[0] for tuple in cursor_zi_new.description])
...@@ -310,6 +312,7 @@ def check_data(category_name,path): ...@@ -310,6 +312,7 @@ def check_data(category_name,path):
recommend_simplevalue = '无' recommend_simplevalue = '无'
flag = True flag = True
cursor_zi_new.execute(f"insert into ShuJuZiDian_Cfg (categoryname,subtitle,primitive,eg_brand_name,eg_product_name,recommend_primitive,recommend_stdvalue,recommend_simplevalue) \ cursor_zi_new.execute(f"insert into ShuJuZiDian_Cfg (categoryname,subtitle,primitive,eg_brand_name,eg_product_name,recommend_primitive,recommend_stdvalue,recommend_simplevalue) \
values ('{category_name}','{db_param}','{pri_value}','{eg_brand_name}','{eg_product_name}','{recommend_pri}','{recommend_stdvalue}','{recommend_simplevalue}')") values ('{category_name}','{db_param}','{pri_value}','{eg_brand_name}','{eg_product_name}','{recommend_pri}','{recommend_stdvalue}','{recommend_simplevalue}')")
...@@ -488,7 +491,7 @@ def check_configure_price(category,path,params_list): ...@@ -488,7 +491,7 @@ def check_configure_price(category,path,params_list):
def import_params_data(es,path,params_list): def import_params_data(es,category_name,path,params_list):
#更新补参数据 #更新补参数据
df = pd.read_excel(path,converters = {'CPU型号':str}) df = pd.read_excel(path,converters = {'CPU型号':str})
...@@ -525,7 +528,7 @@ def import_params_data(es,path,params_list): ...@@ -525,7 +528,7 @@ def import_params_data(es,path,params_list):
update_dict.update({params:str(row[params]).replace('\xa0',' ')}) update_dict.update({params:str(row[params]).replace('\xa0',' ')})
params_info = str(update_dict).replace("'",'\"') params_info = str(update_dict).replace("'",'\"')
es.UpdateParamsDealData(search_field,search_field_value,params_info) es.UpdateParamsDealData(category_name,search_field,search_field_value,params_info)
...@@ -557,8 +560,8 @@ es = ES_Client(host,index_name) ...@@ -557,8 +560,8 @@ es = ES_Client(host,index_name)
filter_col = "DATA_BATCH" # DATA_PROJECT_NAME 项目名称 / DATA_BATCH 批次号 filter_col = "DATA_BATCH" # DATA_PROJECT_NAME 项目名称 / DATA_BATCH 批次号
filter_value = ['202112011232120001'] # 项目名称/批次号 eg. 全渠道数据入库/202111171554120001/徽采商城数据入库 filter_value = ['202111301656160001'] # 项目名称/批次号 eg. 全渠道数据入库/202111171554120001/徽采商城数据入库
category_name = '一体电脑' category_name = '空调'
if category_name == '笔记本':#要导出的类别名称 if category_name == '笔记本':#要导出的类别名称
params_list = ['CPU型号', '产品子系列', '产品系列', '内存容量', '固态硬盘容量', '屏幕尺寸', '操作系统', '显存容量', '机械硬盘容量', '质保时间']#一定按照页面上展示的参数顺序列出 params_list = ['CPU型号', '产品子系列', '产品系列', '内存容量', '固态硬盘容量', '屏幕尺寸', '操作系统', '显存容量', '机械硬盘容量', '质保时间']#一定按照页面上展示的参数顺序列出
...@@ -582,27 +585,33 @@ elif category_name == '复印机':#要导出的类别名称 ...@@ -582,27 +585,33 @@ elif category_name == '复印机':#要导出的类别名称
params_list = ['双面器','双面输稿器','标配外服务及配件','纸盒容量','网络打印'] params_list = ['双面器','双面输稿器','标配外服务及配件','纸盒容量','网络打印']
elif category_name == '激光打印机':#要导出的类别名称 elif category_name == '激光打印机':#要导出的类别名称
params_list = ['产品类型','双面打印','彩色打印速度','打印分辨率','最大打印幅面','标配外服务及配件','标配外耗材','网络打印','质保时间','黑白打印速度'] params_list = ['产品类型','双面打印','彩色打印速度','打印分辨率','最大打印幅面','标配外服务及配件','标配外耗材','网络打印','质保时间','黑白打印速度']
elif category_name == '空调':#要导出的类别名称
params_list = ['冷暖类型','匹数','变频/定频','标配外服务及配件','空调类别']
#导出数据 #导出数据
export_params_data(es,filter_col,filter_value,category_name,params_list) export_params_data(es,filter_col,filter_value,category_name,params_list)
export_all_project_params_data(es,filter_col,filter_value)
#校验补充后的数据(若有驳回原因,请添加列名为:“驳回原因”列,填写驳回原因) #校验补充后的数据(若有驳回原因,请添加列名为:“驳回原因”列,填写驳回原因)
complicated_path = "/Users/rico/Downloads/全渠道补参回导【202111261157470001】一体电脑参数补充2021-11-26.xlsx" complicated_path = "/Users/rico/Downloads/徽采台式机参数补充2021-12-01-已补充.xlsx"
check_data(category_name,complicated_path) check_data(category_name,complicated_path)
#更新数据字典 #更新数据字典
path = '/Users/rico/Downloads/投影机数据字典补充(3)(1).xlsx' path = '/Users/rico/Downloads/台式机数据字典补充(3)(1).xlsx'
ComplicatedDataDict(path) ComplicatedDataDict(path)
#校验通过的数据需要进行配件价格校验 #校验通过的数据需要进行配件价格校验
checked_path = "/Users/rico/Downloads/2.1 台式机参数补充2021-11-23-结果2(校验通过).xlsx" checked_path = "/Users/rico/Downloads/激光打印机参数补充回导.xlsx"
check_configure_price(category_name,checked_path,params_list) check_configure_price(category_name,checked_path,params_list)
#导入数据 #导入数据
import_params_data(es,checked_path,params_list) import_params_data(es,category_name,checked_path,params_list)
#更新相应字段,以跳过必填参数项补充节点 #更新相应字段,以跳过必填参数项补充节点
...@@ -620,6 +629,9 @@ es.UpdateByMultipleThreeCondition(search_field_list,search_field_value_list,upda ...@@ -620,6 +629,9 @@ es.UpdateByMultipleThreeCondition(search_field_list,search_field_value_list,upda
#按批次号导出结果数据 #按批次号导出结果数据
res = es.SearchByCondition("DATA_BATCH",["202112011048580001"]) res = es.SearchByCondition("DATA_BATCH",["202112011048580001"])
#按项目导出结果数据
#res = es.SearchAimAllByCondition("DATA_PROJECT_NAME","徽采商城数据入库")
#a = res[res['FINISH_P_LASTCATEGORY_NAME'] == '激光打印机']['FLOW_NODE_STATUS'].unique().tolist()
''' '''
res = es.SearchAimAllByCondition("SOURCE_CHANNEL_SNAME","SHANXI") res = es.SearchAimAllByCondition("SOURCE_CHANNEL_SNAME","SHANXI")
#res = es.SearchAllByProjectName('徽采商城数据入库') #res = es.SearchAllByProjectName('徽采商城数据入库')
...@@ -670,7 +682,7 @@ es.UpdateByMultipleFourCondition(search_field_list,search_field_value_list,updat ...@@ -670,7 +682,7 @@ es.UpdateByMultipleFourCondition(search_field_list,search_field_value_list,updat
search_field_list = ['FINISH_P_LASTCATEGORY_NAME','FLOW_NODE_STATUS','FINISH_P_NAME','FLOW_FINISH_STATUS'] search_field_list = ['FINISH_P_LASTCATEGORY_NAME','FLOW_NODE_STATUS','FINISH_P_NAME','FLOW_FINISH_STATUS']
search_field_value_list = ['针式打印机','SYS_GET_PARAMS_FAILD_END','','N'] search_field_value_list = ['激光打印机','SYS_GET_PARAMS_FAILD_END','','N']
update_field = "FLOW_NODE_STATUS" update_field = "FLOW_NODE_STATUS"
update_field_value = "SYS_GET_PARAMS_SUCCESS_NONREDUCTIVE" update_field_value = "SYS_GET_PARAMS_SUCCESS_NONREDUCTIVE"
es.UpdateByMultipleFourCondition(search_field_list,search_field_value_list,update_field,update_field_value) es.UpdateByMultipleFourCondition(search_field_list,search_field_value_list,update_field,update_field_value)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment