feat: 添加参考价格列 + 修复公司筛选跨域问题 + CLIP模型持久化

## 新增功能
- material_base 表新增 reference_price 列(NUMERIC(10,2))
- 基础信息 list.vue / buyOdoo.vue 页面增加「参考价格」列展示和编辑
- 新增 material_list:referencePrice 权限元素,支持按角色控制可见性

## Bug 修复
- 入库三页面(buy/product/semi)公司筛选:非超管用户 company=ALL 不再传给旧版后端
- 基础信息两页面(list/buyOdoo):buyOdoo 增加 v-if=isSuperAdmin 与 list.vue 行为统一
- company=ALL 默认值在各页面 getList/fetchData 中自动过滤,兼容旧版后端

## 运维优化
- docker-compose.prod.yml 增加 models_prod 卷挂载,CLIP模型持久化免重复上传
- deploy_code.sh 增加 models_prod 目录检查与模型文件存在性告警
This commit is contained in:
yueli
2026-07-13 17:30:52 +08:00
parent 4f5965db02
commit 760f78e016
10 changed files with 112 additions and 24 deletions

View File

@ -43,6 +43,7 @@ def get_current_user_permissions():
'material_list:availableCount',
'material_list:files',
'material_list:isEnabled',
'material_list:referencePrice',
'material_list:operation'
]
perm_dict = AuthService.get_user_permissions(user_role, company_name=user_company)
@ -72,6 +73,7 @@ def filter_item_by_permissions(item_dict, user_permissions):
'availableCount': 'material_list:availableCount',
'generalManual': 'material_list:files',
'generalImage': 'material_list:files',
'referencePrice': 'material_list:referencePrice',
'isEnabled': 'material_list:isEnabled'
}
for field, perm_code in field_to_perm.items():
@ -252,6 +254,7 @@ def create():
'availableCount': 'material_list:availableCount',
'generalManual': 'material_list:files',
'generalImage': 'material_list:files',
'referencePrice': 'material_list:referencePrice',
'isEnabled': 'material_list:isEnabled'
}
# 过滤用户没有权限的字段
@ -311,6 +314,7 @@ def update(id):
'availableCount': 'material_list:availableCount',
'generalManual': 'material_list:files',
'generalImage': 'material_list:files',
'referencePrice': 'material_list:referencePrice',
'isEnabled': 'material_list:isEnabled'
}
# 过滤用户没有权限的字段