|
@@ -179,12 +179,11 @@ class DataModeGenerateDetail(DataBaseModel):
|
|
|
need_df = need_df.fillna(value="")
|
|
need_df = need_df.fillna(value="")
|
|
|
|
|
|
|
|
# 打开表格并进行匹配
|
|
# 打开表格并进行匹配
|
|
|
- _df = pd.read_excel(excel_path, sheet_name=0, header=0)
|
|
|
|
|
|
|
+ _df = pd.read_excel(excel_path, sheet_name=0, header=0, dtype=str) # 强制将所有列读取为字符串类型
|
|
|
# 去重数据
|
|
# 去重数据
|
|
|
duplicates = _df.duplicated(subset=["商品货号"], keep="first")
|
|
duplicates = _df.duplicated(subset=["商品货号"], keep="first")
|
|
|
_df = _df.loc[~duplicates]
|
|
_df = _df.loc[~duplicates]
|
|
|
_df = _df.fillna(value="")
|
|
_df = _df.fillna(value="")
|
|
|
- _df = _df.astype(str)
|
|
|
|
|
# 数据匹配关联,左关联
|
|
# 数据匹配关联,左关联
|
|
|
need_df = pd.merge(
|
|
need_df = pd.merge(
|
|
|
need_df,
|
|
need_df,
|
|
@@ -353,6 +352,10 @@ class DataModeGenerateDetail(DataBaseModel):
|
|
|
)
|
|
)
|
|
|
group_local_df = group_local_df.reset_index()
|
|
group_local_df = group_local_df.reset_index()
|
|
|
|
|
|
|
|
|
|
+ # -----------统一款号列的数据类型为字符串,避免merge时报错
|
|
|
|
|
+ group_local_df["款号"] = group_local_df["款号"].astype(str)
|
|
|
|
|
+ original_df["款号"] = original_df["款号"].astype(str)
|
|
|
|
|
+
|
|
|
# -----------数据匹配关联,左关联
|
|
# -----------数据匹配关联,左关联
|
|
|
group_local_df = pd.merge(
|
|
group_local_df = pd.merge(
|
|
|
group_local_df,
|
|
group_local_df,
|
|
@@ -446,6 +449,10 @@ class DataModeGenerateDetail(DataBaseModel):
|
|
|
subset=["款号", "颜色名称"], keep="first", inplace=True
|
|
subset=["款号", "颜色名称"], keep="first", inplace=True
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
|
|
+ # ------------统一款号列的数据类型为字符串,避免merge时报错
|
|
|
|
|
+ local_df["款号"] = local_df["款号"].astype(str)
|
|
|
|
|
+ new_df["款号"] = new_df["款号"].astype(str)
|
|
|
|
|
+
|
|
|
# ------------excel表格关联 上述的款号 进行标记,其他删除
|
|
# ------------excel表格关联 上述的款号 进行标记,其他删除
|
|
|
_df = new_df.drop_duplicates(subset=["款号"], keep="first", inplace=False)
|
|
_df = new_df.drop_duplicates(subset=["款号"], keep="first", inplace=False)
|
|
|
_df = _df[["款号"]]
|
|
_df = _df[["款号"]]
|