|
|
@@ -1211,6 +1211,7 @@ def delect_goods_arts(params: PhotoRecordDelete):
|
|
|
session = SqlQuery()
|
|
|
photos = CRUD(PhotoRecord)
|
|
|
for item in params.goods_art_nos:
|
|
|
+ settings.syncPhotoRecord({"goods_art_no": item},action_type=2)
|
|
|
photos.deleteConditions(session, conditions={"goods_art_no": item,"delete_time": None})
|
|
|
session.close()
|
|
|
return {
|
|
|
@@ -1436,6 +1437,8 @@ def syncUserJsonConfigs(token):
|
|
|
def sync_sys_configs(params: SyncLocalConfigs):
|
|
|
hlm_token = params.token
|
|
|
env = params.env
|
|
|
+ settings.USER_TOKEN = hlm_token
|
|
|
+ settings.USER_ENV = env
|
|
|
headers = {
|
|
|
"Authorization": f"Bearer {hlm_token}",
|
|
|
"content-type": "application/json",
|
|
|
@@ -1475,6 +1478,8 @@ def sync_sys_configs(params: SyncLocalConfigs):
|
|
|
def sync_action_configs(params: SyncLocalConfigs):
|
|
|
hlm_token = params.token
|
|
|
env = params.env
|
|
|
+ settings.USER_TOKEN = hlm_token
|
|
|
+ settings.USER_ENV = env
|
|
|
headers = {
|
|
|
"Authorization": f"Bearer {hlm_token}",
|
|
|
"content-type": "application/json",
|
|
|
@@ -1680,3 +1685,32 @@ async def remove_background(params:PhotoRecordRemoveBackground):
|
|
|
except Exception as e:
|
|
|
print("error",e)
|
|
|
raise UnicornException(f"抠图异常,请稍后重试:{e}")
|
|
|
+
|
|
|
+
|
|
|
+@app.post("/syncPhotoRecord", description="同步本地拍照记录-和output目录")
|
|
|
+async def syncPhotoRecord(params:SyncPhotoRecord):
|
|
|
+ # 查询所有不重复的货号及对应的最大时间,进行分页
|
|
|
+ settings.USER_TOKEN = params.token
|
|
|
+ settings.USER_ENV = params.env
|
|
|
+ session = SqlQuery()
|
|
|
+ base_statement = (
|
|
|
+ select(PhotoRecord)
|
|
|
+ .where(PhotoRecord.delete_time == None)
|
|
|
+ )
|
|
|
+ paginated_results = session.exec(base_statement).all()
|
|
|
+
|
|
|
+ def model_to_dict(model):
|
|
|
+ """将SQLAlchemy模型对象转换为字典,排除_sa_instance_state"""
|
|
|
+ result = {}
|
|
|
+ for column in model.__table__.columns:
|
|
|
+ result[column.name] = getattr(model, column.name)
|
|
|
+ return result
|
|
|
+
|
|
|
+ json_results = []
|
|
|
+ for result in paginated_results:
|
|
|
+ # 使用自定义函数将SQLAlchemy对象转换为字典
|
|
|
+ json_results.append(model_to_dict(result))
|
|
|
+ # 最终转换为JSON字符串
|
|
|
+ settings.syncPhotoRecord(json_results,action_type=0)
|
|
|
+ session.close()
|
|
|
+ return {"code": 0, "message": "同步完成", "data": None}
|