[metadata] id = "erp-inventory" name = "进销存管理" version = "0.1.0" description = "进销存管理插件 — 产品、仓库、库存、供应商、采购单、销售单" author = "ERP Team" min_platform_version = "0.1.0" # ── 权限声明 ── [[permissions]] code = "product.list" name = "查看产品" description = "查看产品列表和详情" [[permissions]] code = "product.manage" name = "管理产品" description = "创建、编辑、删除产品" [[permissions]] code = "warehouse.list" name = "查看仓库" description = "查看仓库列表和详情" [[permissions]] code = "warehouse.manage" name = "管理仓库" description = "创建、编辑、删除仓库" [[permissions]] code = "stock.list" name = "查看库存" description = "查看库存列表和详情" [[permissions]] code = "stock.manage" name = "管理库存" description = "创建、编辑、删除库存记录" [[permissions]] code = "supplier.list" name = "查看供应商" description = "查看供应商列表和详情" [[permissions]] code = "supplier.manage" name = "管理供应商" description = "创建、编辑、删除供应商" [[permissions]] code = "purchase_order.list" name = "查看采购单" description = "查看采购单列表和详情" [[permissions]] code = "purchase_order.manage" name = "管理采购单" description = "创建、编辑、删除采购单" [[permissions]] code = "sales_order.list" name = "查看销售单" description = "查看销售单列表和详情" [[permissions]] code = "sales_order.manage" name = "管理销售单" description = "创建、编辑、删除销售单" # ── 实体定义 ── [[schema.entities]] name = "product" display_name = "产品" [[schema.entities.fields]] name = "code" field_type = "string" required = true display_name = "产品编码" unique = true searchable = true [[schema.entities.fields]] name = "name" field_type = "string" required = true display_name = "产品名称" searchable = true [[schema.entities.fields]] name = "spec" field_type = "string" display_name = "规格" [[schema.entities.fields]] name = "unit" field_type = "string" display_name = "单位" [[schema.entities.fields]] name = "category" field_type = "string" display_name = "分类" filterable = true [[schema.entities.fields]] name = "price" field_type = "decimal" display_name = "售价" sortable = true [[schema.entities.fields]] name = "cost" field_type = "decimal" display_name = "成本价" sortable = true [[schema.entities.fields]] name = "status" field_type = "string" required = true display_name = "状态" ui_widget = "select" filterable = true options = [ { label = "上架", value = "active" }, { label = "下架", value = "inactive" } ] [[schema.entities]] name = "warehouse" display_name = "仓库" [[schema.entities.fields]] name = "code" field_type = "string" required = true display_name = "仓库编码" unique = true [[schema.entities.fields]] name = "name" field_type = "string" required = true display_name = "仓库名称" searchable = true [[schema.entities.fields]] name = "address" field_type = "string" display_name = "地址" [[schema.entities.fields]] name = "manager" field_type = "string" display_name = "负责人" [[schema.entities.fields]] name = "status" field_type = "string" required = true display_name = "状态" ui_widget = "select" filterable = true options = [ { label = "启用", value = "active" }, { label = "停用", value = "inactive" } ] [[schema.entities]] name = "stock" display_name = "库存" [[schema.entities.fields]] name = "product_id" field_type = "uuid" required = true display_name = "产品" ui_widget = "entity_select" ref_entity = "product" ref_label_field = "name" ref_search_fields = ["name", "code"] [[schema.entities.fields]] name = "warehouse_id" field_type = "uuid" required = true display_name = "仓库" ui_widget = "entity_select" ref_entity = "warehouse" ref_label_field = "name" ref_search_fields = ["name", "code"] [[schema.entities.fields]] name = "qty" field_type = "integer" required = true display_name = "数量" sortable = true [[schema.entities.fields]] name = "cost" field_type = "decimal" display_name = "成本" [[schema.entities.fields]] name = "alert_line" field_type = "integer" display_name = "预警线" [[schema.entities]] name = "supplier" display_name = "供应商" [[schema.entities.fields]] name = "code" field_type = "string" required = true display_name = "供应商编码" unique = true [[schema.entities.fields]] name = "name" field_type = "string" required = true display_name = "供应商名称" searchable = true [[schema.entities.fields]] name = "contact" field_type = "string" display_name = "联系人" [[schema.entities.fields]] name = "phone" field_type = "string" display_name = "电话" [[schema.entities.fields]] name = "address" field_type = "string" display_name = "地址" [[schema.entities]] name = "purchase_order" display_name = "采购单" [[schema.entities.fields]] name = "supplier_id" field_type = "uuid" required = true display_name = "供应商" ui_widget = "entity_select" ref_entity = "supplier" ref_label_field = "name" ref_search_fields = ["name", "code"] [[schema.entities.fields]] name = "total_amount" field_type = "decimal" display_name = "总金额" [[schema.entities.fields]] name = "status" field_type = "string" required = true display_name = "状态" ui_widget = "select" filterable = true options = [ { label = "草稿", value = "draft" }, { label = "已审核", value = "approved" }, { label = "已完成", value = "completed" }, { label = "已取消", value = "cancelled" } ] [[schema.entities.fields]] name = "date" field_type = "date" display_name = "采购日期" [[schema.entities.fields]] name = "items" field_type = "json" display_name = "采购明细" [[schema.entities]] name = "sales_order" display_name = "销售单" [[schema.entities.fields]] name = "customer_id" field_type = "uuid" display_name = "客户" [[schema.entities.fields]] name = "total_amount" field_type = "decimal" display_name = "总金额" [[schema.entities.fields]] name = "status" field_type = "string" required = true display_name = "状态" ui_widget = "select" filterable = true sortable = true options = [ { label = "草稿", value = "draft" }, { label = "已审核", value = "approved" }, { label = "已完成", value = "completed" }, { label = "已取消", value = "cancelled" } ] [[schema.entities.fields]] name = "date" field_type = "date" display_name = "销售日期" [[schema.entities.fields]] name = "items" field_type = "json" display_name = "销售明细" # ── 页面声明 ── [[ui.pages]] type = "crud" entity = "product" label = "产品管理" icon = "shopping" enable_search = true [[ui.pages]] type = "crud" entity = "warehouse" label = "仓库管理" icon = "home" enable_search = true [[ui.pages]] type = "crud" entity = "stock" label = "库存管理" icon = "inbox" enable_search = true [[ui.pages]] type = "crud" entity = "supplier" label = "供应商管理" icon = "shop" enable_search = true [[ui.pages]] type = "crud" entity = "purchase_order" label = "采购管理" icon = "download" enable_search = true [[ui.pages]] type = "crud" entity = "sales_order" label = "销售管理" icon = "upload" enable_search = true