feat: 采购申请字段级价格权限 — 库管看不到采购价格
## permission_service.py - init_all_menus: 新增3个采购权限元素 inbound_purchase:unit_price, :total_price, :tax_rate ## purchase.py - _filter_purchase_prices(): 无价格权限则pop价格字段 - GET /purchase (列表): 应用价格过滤 - GET /purchase/<id> (详情): 应用价格过滤 - approved-unstocked: 保留价格(入库数据源,前端按inbound_buy权限控制) ## purchase/index.vue - 列表: 单价/总价/税率列 v-if hasPermission - 详情: 单价/总价 v-if hasPermission
This commit is contained in:
@ -638,19 +638,23 @@ class PermissionService:
|
||||
db.session.add(new_perm)
|
||||
|
||||
db.session.commit()
|
||||
# ★ 采购申请操作权限元素
|
||||
purchase_op = SysElement.query.filter_by(
|
||||
menu_code='inbound_purchase',
|
||||
code='inbound_purchase:operation'
|
||||
).first()
|
||||
if not purchase_op:
|
||||
db.session.add(SysElement(
|
||||
menu_code='inbound_purchase',
|
||||
name='可编辑',
|
||||
code='inbound_purchase:operation',
|
||||
element_type='operation'
|
||||
))
|
||||
print(f"✅ 采购申请操作权限元素已创建")
|
||||
# ★ 采购申请权限元素
|
||||
purchase_elements = [
|
||||
('inbound_purchase:operation', '可编辑', 'operation'),
|
||||
('inbound_purchase:unit_price', '采购单价', 'column'),
|
||||
('inbound_purchase:total_price', '采购总价', 'column'),
|
||||
('inbound_purchase:tax_rate', '税率', 'column'),
|
||||
]
|
||||
for code, name, etype in purchase_elements:
|
||||
existing = SysElement.query.filter_by(
|
||||
menu_code='inbound_purchase', code=code
|
||||
).first()
|
||||
if not existing:
|
||||
db.session.add(SysElement(
|
||||
menu_code='inbound_purchase', name=name,
|
||||
code=code, element_type=etype
|
||||
))
|
||||
print(f"✅ 采购申请元素已创建: {code}")
|
||||
|
||||
print(f"✅ 所有菜单初始化完成")
|
||||
return True
|
||||
|
||||
Reference in New Issue
Block a user