qrpa 1.1.23__tar.gz → 1.1.25__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of qrpa might be problematic. Click here for more details.

Files changed (38) hide show
  1. {qrpa-1.1.23 → qrpa-1.1.25}/PKG-INFO +1 -1
  2. {qrpa-1.1.23 → qrpa-1.1.25}/pyproject.toml +1 -1
  3. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/shein_excel.py +3 -3
  4. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/shein_lib.py +37 -1
  5. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa.egg-info/PKG-INFO +1 -1
  6. {qrpa-1.1.23 → qrpa-1.1.25}/README.md +0 -0
  7. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/RateLimitedSender.py +0 -0
  8. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/__init__.py +0 -0
  9. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/db_migrator.py +0 -0
  10. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/feishu_bot_app.py +0 -0
  11. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/feishu_client.py +0 -0
  12. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/feishu_logic.py +0 -0
  13. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/fun_base.py +0 -0
  14. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/fun_excel.py +0 -0
  15. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/fun_file.py +0 -0
  16. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/fun_web.py +0 -0
  17. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/fun_win.py +0 -0
  18. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/mysql_module/__init__.py +0 -0
  19. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/mysql_module/shein_ledger_model.py +0 -0
  20. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/mysql_module/shein_product_model.py +0 -0
  21. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/mysql_module/shein_return_order_model.py +0 -0
  22. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/shein_daily_report_model.py +0 -0
  23. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/shein_mysql.py +0 -0
  24. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/shein_sqlite.py +0 -0
  25. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/shein_ziniao.py +0 -0
  26. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/temu_chrome.py +0 -0
  27. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/temu_excel.py +0 -0
  28. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/temu_lib.py +0 -0
  29. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/time_utils.py +0 -0
  30. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/time_utils_example.py +0 -0
  31. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa/wxwork.py +0 -0
  32. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa.egg-info/SOURCES.txt +0 -0
  33. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa.egg-info/dependency_links.txt +0 -0
  34. {qrpa-1.1.23 → qrpa-1.1.25}/qrpa.egg-info/top_level.txt +0 -0
  35. {qrpa-1.1.23 → qrpa-1.1.25}/setup.cfg +0 -0
  36. {qrpa-1.1.23 → qrpa-1.1.25}/setup.py +0 -0
  37. {qrpa-1.1.23 → qrpa-1.1.25}/tests/test_db_migrator.py +0 -0
  38. {qrpa-1.1.23 → qrpa-1.1.25}/tests/test_wxwork.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qrpa
3
- Version: 1.1.23
3
+ Version: 1.1.25
4
4
  Summary: qsir's rpa library
5
5
  Author: QSir
6
6
  Author-email: QSir <1171725650@qq.com>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "qrpa"
7
- version = "1.1.23"
7
+ version = "1.1.25"
8
8
  description = "qsir's rpa library"
9
9
  authors = [{ name = "QSir", email = "1171725650@qq.com" }]
10
10
  readme = "README.md"
@@ -25,7 +25,7 @@ class SheinExcel:
25
25
 
26
26
  sheet_name1 = '未匹配SKU_需运营调整'
27
27
  operations = [
28
- [sheet_name1, 'write', [['店铺账户', '店铺别名', '店长', 'SPU', 'SKC', '商家SKC', '商家SKU']] + excel_data],
28
+ [sheet_name1, 'write', [['店铺账户', '店铺别名', '店长', 'SPU', 'SKC', '商家SKC', '商家SKU', '上架状态', '商品层次']] + excel_data],
29
29
  [sheet_name1, 'format', self.format_sku_not_found],
30
30
  ['Sheet1', 'delete'],
31
31
  ]
@@ -46,7 +46,7 @@ class SheinExcel:
46
46
  def format_sku_not_found(self, sheet):
47
47
  beautify_title(sheet)
48
48
  add_borders(sheet)
49
- column_to_left(sheet, ['商家SKC', '商家SKU'])
49
+ column_to_left(sheet, ['商家SKC', '商家SKU', '商品层次'])
50
50
  pass
51
51
 
52
52
  def format_sku_to_skc(self, sheet):
@@ -358,7 +358,7 @@ class SheinExcel:
358
358
  add_sum_for_cell(sheet, [date_A, date_B])
359
359
  column_to_right(sheet, ['金额', '汇总'])
360
360
  sheet.autofit()
361
- autofit_column(sheet,[date_A, date_B])
361
+ autofit_column(sheet, [date_A, date_B])
362
362
  delete_sheet_if_exists(wb, 'Sheet1')
363
363
  wb.save()
364
364
  close_excel(app, wb)
@@ -730,6 +730,33 @@ class SheinLib:
730
730
 
731
731
  return list_item
732
732
 
733
+ def refresh_bridge_data_for_list(self, data_list, source='mb', sku_field='supplierSku'):
734
+ """
735
+ 刷新列表中的bridge数据(成本价和SKU图片)
736
+
737
+ Args:
738
+ data_list: 需要刷新的数据列表
739
+ source: ERP数据源,默认为'mb'
740
+ sku_field: SKU字段名,默认为'supplierSku'
741
+
742
+ Returns:
743
+ 刷新后的数据列表
744
+ """
745
+ log(f'开始刷新Bridge数据,共 {len(data_list)} 条记录', self.store_username, self.store_name)
746
+
747
+ for index, item in enumerate(data_list):
748
+ supplier_sku = item.get(sku_field)
749
+ if supplier_sku:
750
+ item['cost_price'] = self.bridge.get_sku_cost(supplier_sku, source)
751
+ item['sku_img'] = self.bridge.get_sku_img(supplier_sku, source)
752
+
753
+ # 每100条记录输出一次进度
754
+ if (index + 1) % 100 == 0:
755
+ log(f'刷新进度: {index + 1}/{len(data_list)}', self.store_username, self.store_name)
756
+
757
+ log(f'Bridge数据刷新完成', self.store_username, self.store_name)
758
+ return data_list
759
+
733
760
  def get_replenish_list(self):
734
761
  page_num = 1
735
762
  page_size = 50
@@ -1051,6 +1078,13 @@ class SheinLib:
1051
1078
  skc = skc_item['skc']
1052
1079
  supplierCode = skc_item['supplierCode']
1053
1080
 
1081
+ shelf_status = skc_item.get('shelfStatus', {}).get('name', '-')
1082
+ if int(skc_item['shelfStatus']['value']) != 1:
1083
+ log('商品未上架跳过:', skc)
1084
+ continue
1085
+
1086
+ goods_level = skc_item.get('goodsLevel', {}).get('name', '-')
1087
+
1054
1088
  # 倒序遍历 skuList,安全删除
1055
1089
  for i in range(len(skc_item['skuList']) - 1, -1, -1):
1056
1090
  sku_item = skc_item['skuList'][i]
@@ -1062,12 +1096,14 @@ class SheinLib:
1062
1096
  if not isinstance(cost_price, (int, float)):
1063
1097
  dict_sku_not_found.append([
1064
1098
  self.store_username,
1065
- self.store_name,
1099
+ f'{self.store_name}',
1066
1100
  self.config.shein_store_manager.get(str(self.store_username).lower()),
1067
1101
  spu,
1068
1102
  skc,
1069
1103
  supplierCode,
1070
1104
  sku_item['supplierSku'],
1105
+ shelf_status,
1106
+ goods_level,
1071
1107
  ])
1072
1108
 
1073
1109
  dict_sku_to_skc.append([
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qrpa
3
- Version: 1.1.23
3
+ Version: 1.1.25
4
4
  Summary: qsir's rpa library
5
5
  Author: QSir
6
6
  Author-email: QSir <1171725650@qq.com>
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes