|
@@ -46,6 +46,19 @@ def delete_resource_provision_file(db,from_scenario,foreign_key):
|
|
|
files = file_query.all()
|
|
|
for file in files:
|
|
|
file.del_flag = '2'
|
|
|
+def get_resource_provision_file_query_fun(db,from_scenario,foreign_key):
|
|
|
+ file_query = db.query(ResourceProvisionFile)
|
|
|
+ file_query = file_query.filter(ResourceProvisionFile.del_flag != '2')
|
|
|
+ file_query = file_query.filter(ResourceProvisionFile.from_scenario == from_scenario)
|
|
|
+ file_query = file_query.filter(ResourceProvisionFile.foreign_key == foreign_key)
|
|
|
+ files = file_query.all()
|
|
|
+ result = [{
|
|
|
+ "uid": file.file_id,
|
|
|
+ "status": file.status,
|
|
|
+ "name": file.file_name_desc,
|
|
|
+ "url": file.file_name #"/api/file/download/%s" %
|
|
|
+ } for file in files]
|
|
|
+ return result
|
|
|
|
|
|
@router.post("/create")
|
|
|
async def create_pattern(
|
|
@@ -98,13 +111,15 @@ async def create_pattern(
|
|
|
|
|
|
db.add(new_material)
|
|
|
new_file_list = body['fileList']
|
|
|
-
|
|
|
+ db.commit()
|
|
|
+ db.refresh(new_material)
|
|
|
for file in new_file_list:
|
|
|
- file_name = file['file_name']
|
|
|
- file_name_desc = file['file_name_desc']
|
|
|
+ file_name = file['url']
|
|
|
+ file_name_desc = file['name']
|
|
|
status = file['status']
|
|
|
+ uid = file['uid']
|
|
|
new_file = ResourceProvisionFile(
|
|
|
- file_id=new_guid(),
|
|
|
+ file_id=uid,
|
|
|
foreign_key=new_material.material_id,
|
|
|
from_scenario='ResourceProvisionMaterialInfo',
|
|
|
file_name=file_name,
|
|
@@ -176,11 +191,12 @@ async def update_pattern(
|
|
|
|
|
|
new_file_list = body['fileList']
|
|
|
for file in new_file_list:
|
|
|
- file_name = file['file_name']
|
|
|
- file_name_desc = file['file_name_desc']
|
|
|
+ file_name = file['url']
|
|
|
+ file_name_desc = file['name']
|
|
|
status = file['status']
|
|
|
+ uid = file['uid']
|
|
|
new_file = ResourceProvisionFile(
|
|
|
- file_id=new_guid(),
|
|
|
+ file_id=uid,
|
|
|
foreign_key=id,
|
|
|
from_scenario='ResourceProvisionMaterialInfo',
|
|
|
file_name=file_name,
|
|
@@ -205,20 +221,20 @@ async def get_pattern_info(
|
|
|
if not info:
|
|
|
return JSONResponse(status_code=404,content={"code":404,"msg":"warehouse room not found"})
|
|
|
warehouse_info = warehouse_id_get_warehouse_info(db,info.warehouse_id)
|
|
|
- if not warehouse_info:
|
|
|
- warehouse_name=None
|
|
|
- else:
|
|
|
+ if warehouse_info:
|
|
|
warehouse_name = warehouse_info.warehouse_name
|
|
|
- material_type_info = type_id_get_material_type_info(db,info.material_type)
|
|
|
- if not material_type_info:
|
|
|
- material_category_name=None
|
|
|
else:
|
|
|
+ warehouse_name=None
|
|
|
+ material_type_info = type_id_get_material_type_info(db,info.material_type)
|
|
|
+ if material_type_info:
|
|
|
material_category_name = material_type_info.material_category_name
|
|
|
- warehouse_room_info = type_id_get_material_type_info(db, info.room_id)
|
|
|
- if not warehouse_room_info:
|
|
|
- room_name = None
|
|
|
else:
|
|
|
+ material_category_name=None
|
|
|
+ warehouse_room_info = warehouse_room_id_get_warehouse_room_info(db, info.room_id)
|
|
|
+ if warehouse_room_info:
|
|
|
room_name = warehouse_room_info.room_name
|
|
|
+ else:
|
|
|
+ room_name = None
|
|
|
data = {
|
|
|
"material_id": info.material_id,
|
|
|
"material_name": info.material_name,
|
|
@@ -261,7 +277,8 @@ async def get_pattern_info(
|
|
|
"shelf_life_warning_days": info.shelf_life_warning_days,
|
|
|
"shelf_life_warning_pusher": info.shelf_life_warning_pusher,
|
|
|
"from_sys": info.from_sys,
|
|
|
- "create_time":info.create_time}
|
|
|
+ "create_time":info.create_time,
|
|
|
+ "fileList": get_resource_provision_file_query_fun(db=db,from_scenario='ResourceProvisionMaterialInfo', foreign_key=info.material_id)}
|
|
|
return {"code": 200, "msg": "获取成功", "data": data}
|
|
|
except Exception as e:
|
|
|
traceback.print_exc()
|
|
@@ -296,20 +313,20 @@ async def get_pattern_list(
|
|
|
data = []
|
|
|
for info in lists:
|
|
|
warehouse_info = warehouse_id_get_warehouse_info(db, info.warehouse_id)
|
|
|
- if not warehouse_info:
|
|
|
- warehouse_name = None
|
|
|
- else:
|
|
|
+ if warehouse_info:
|
|
|
warehouse_name = warehouse_info.warehouse_name
|
|
|
- material_type_info = type_id_get_material_type_info(db, info.material_type)
|
|
|
- if not material_type_info:
|
|
|
- material_category_name = None
|
|
|
else:
|
|
|
+ warehouse_name = None
|
|
|
+ material_type_info = type_id_get_material_type_info(db, info.material_type)
|
|
|
+ if material_type_info:
|
|
|
material_category_name = material_type_info.material_category_name
|
|
|
- warehouse_room_info = type_id_get_material_type_info(db, info.room_id)
|
|
|
- if not warehouse_room_info:
|
|
|
- room_name = None
|
|
|
else:
|
|
|
+ material_category_name = None
|
|
|
+ warehouse_room_info = warehouse_room_id_get_warehouse_room_info(db, info.room_id)
|
|
|
+ if warehouse_room_info:
|
|
|
room_name = warehouse_room_info.room_name
|
|
|
+ else:
|
|
|
+ room_name = None
|
|
|
data.append({
|
|
|
"material_id": info.material_id,
|
|
|
"material_name": info.material_name,
|
|
@@ -352,7 +369,8 @@ async def get_pattern_list(
|
|
|
"shelf_life_warning_days": info.shelf_life_warning_days,
|
|
|
"shelf_life_warning_pusher": info.shelf_life_warning_pusher,
|
|
|
"from_sys": info.from_sys,
|
|
|
- "create_time":info.create_time})
|
|
|
+ "create_time":info.create_time,
|
|
|
+ "fileList": get_resource_provision_file_query_fun(db=db,from_scenario='ResourceProvisionMaterialInfo', foreign_key=info.material_id)})
|
|
|
return {"code": 200, "msg": "查询成功", "data": data,
|
|
|
"total": total_items,
|
|
|
"page": page,
|